结果演示 //main.c#include"./SYSTEM/sys/sys.h"#include"./SYSTEM/usart/usart.h"#include"./SYSTEM/delay/delay.h"#include"./BSP/OLED/oled.h"#include"u8g2.h"u8g2_t u8g2;intmain(void){HAL_Init();sys_stm32_clock_init(RCC_PLL_MUL9);delay_init(72);u8g2_Init(&u8g2);while(1){...
u8g2.drawStr():绘制字符串。 u8g2.firstPage()/nextPage():循环刷新显示。
/** * 绘制图像 */ void U8G2::firstPage(void) uint8_t U8G2::nextPage(void) 1. 2. 3. 4. 5.注意点:firstPage方法会把当前页码位置变成0; 修改内容处于firstPage和nextPage之间,每次都是重新渲染所有内容;优势点:该方法消耗的ram空间,比sendBuffer消耗的ram空间要少; ...
nextPage()); // 延迟一段时间,以便观察刷新效果 delay(1000); } 在这个示例中,我们首先清除了整个屏幕缓冲区,然后在屏幕中间绘制了一个矩形框,模拟了需要局部更新的区域。接着,我们使用firstPage()和nextPage()函数进行分页刷新,并在当前页上绘制了文本。 测试并验证局部区域刷新功能是否按预期工作: 将上述...
u8g2.firstPage();do{ u8g2.drawStr(0,10,"hangzhou");//在指定位置显示字符串}while( u8g2.nextPage() ); } 5.效果显示: 注意笔者这里用的没有重置引脚因此UNO板直接SCL,SCL相连,SDA和SDA相连 另外笔者这里就不介绍怎么用U8g2库显示中文了网上有太多案例了传送门...
u8g2.firstPage();do{//自己的的逻辑}while(u8g2.nextPage());delay(1000); 一个简单的HelloWord在OLED中的显示如下: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 #include<U8g2lib.h>#include<Wire.h>#defineSCL5#defineSDA4U8G2_SSD1306_128X64_NONAME_F_SW_I2Cu8g2(U8G2_R0,/*clock...
*page_cnt = 8; return buf; #endif } 2.2 编写移植函数 精简源码之后,还需要编写如下的配置函数。 2.2.1 GPIO初始化 对OLED用到的IIC接口进行GPIO的初始化配置: 登录后复制#define SCL_Pin GPIO_Pin_6 #define SDA_Pin GPIO_Pin_7 #define IIC_GPIO_Port GPIOB ...
⬝ u8g2.firstPage()/nextPage() 說明:繪製命令。firstPage()方法會把當前頁碼位置變成0。修改內容放置於firstPage和nextPage之間,每次重新更新所有內容。這個方法使用的記憶體空間比sendBuffer少。 ⬝ u8g2.sendBuffer() 說明:繪製緩衝區的內容,sendBuffer佔用的記體較大。
u8g2.firstPage(); do { u8g2.setFont(u8g2_font_ncenB08_tr); u8g2.drawStr(0, 24, "Hello, U8g2!"); // 在这里添加更多的绘制代码来显示下一页的内容 } while (u8g2.nextPage()); } 1. 2. 3. 4. 5. 6. 7. 8. 9. ...
6.相关函数介绍 U8g2库提供的API函数有很多,这里简单介绍几个比较常用的,更多的介绍可以参考官方手册。 u8g2.begin():U8g2构造函数。 u8g2.clean():清除屏幕显示,清除标题,光标回到原点位置。 u8g2.setFont():设置字体。 u8g2.drawStr():嵌入字符串。 u8g2.firstPage()/ nextPage():循环刷新显示。