U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); volatile long temp, encoderCounter=50; //This variable will increase or decreas depending on the rotation of encoder
时间: 2024-04-21 20:22:42 浏览: 130
Sure! Here's the code with comments added:
```cpp
U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); // Initialize the display with specific settings
volatile long temp, encoderCounter=50; // Declare a variable 'encoderCounter' and set its initial value to 50. This variable will increase or decrease depending on the rotation of the encoder.
```
I have added comments to explain the purpose of each line of code. Let me know if there's anything else I can help you with!
相关问题
u8g2_font_open_iconic_weather_4x_t示例代码
以下是使用u8g2库和u8g2_font_open_iconic_weather_4x_t字体的示例代码:
```
#include <U8g2lib.h>
U8G2_SH1106_128X64_NONAME_1_HW_I2C u8g2(U8G2_R0);
void setup() {
u8g2.begin();
}
void loop() {
u8g2.clearBuffer();
u8g2.setFont(u8g2_font_open_iconic_weather_4x_t);
u8g2.drawGlyph(0, 10, 0x7b); // 绘制一个天气图标
u8g2.sendBuffer();
delay(1000);
}
```
该示例代码将绘制一个天气图标在显示器上。你可以修改代码以绘制不同的图标,只需更改 `drawGlyph`函数的第三个参数。可以通过查看u8g2_font_open_iconic_weather_4x_t.h文件来了解可用的图标。
u8g2库怎么同时驱动两块oled
要同时驱动两块 OLED,可以使用 u8g2 库的多实例功能。具体步骤如下:
1. 在程序中包含 u8g2 头文件。
```c++
#include <U8g2lib.h>
```
2. 创建两个 U8G2 对象,分别代表两个 OLED。
```c++
U8G2_SH1106_128X64_NONAME_1_HW_I2C u8g2_1(U8G2_R0); // OLED 1
U8G2_SH1106_128X64_NONAME_1_HW_I2C u8g2_2(U8G2_R0); // OLED 2
```
3. 在 `setup()` 函数中分别初始化两个 OLED。
```c++
void setup() {
u8g2_1.begin();
u8g2_1.setContrast(255); // 设置 OLED 1 对比度
u8g2_1.clearBuffer();
u8g2_1.setFont(u8g2_font_ncenB08_tr);
u8g2_1.setCursor(0, 10);
u8g2_1.print("Hello, OLED 1!");
u8g2_2.begin();
u8g2_2.setContrast(255); // 设置 OLED 2 对比度
u8g2_2.clearBuffer();
u8g2_2.setFont(u8g2_font_ncenB08_tr);
u8g2_2.setCursor(0, 10);
u8g2_2.print("Hello, OLED 2!");
}
```
4. 在 `loop()` 函数中分别更新两个 OLED。
```c++
void loop() {
u8g2_1.sendBuffer(); // 更新 OLED 1
delay(1000); // 延时 1 秒
u8g2_2.sendBuffer(); // 更新 OLED 2
delay(1000); // 延时 1 秒
}
```
这样就可以同时驱动两块 OLED 了。如果需要使用更多 OLED,也可以创建更多的 U8G2 对象。
阅读全文