前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >u8g2使用sendbuffer文字底部显示不全,只能显示半行文字

u8g2使用sendbuffer文字底部显示不全,只能显示半行文字

作者头像
iot-me.club
发布2023-04-22 16:56:20
1.3K0
发布2023-04-22 16:56:20
举报
文章被收录于专栏:iot-meiot-me

如图只能显示一行文字,而且这行文字底部也是缺少的

image.png
image.png

代码是这样的

代码语言:javascript
复制
U8G2_SSD1306_128X64_NONAME_1_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
//U8G2_SSD1306_128X64_NONAME_1_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);   // All Boards without Reset of the Display

void setup(void) {
  u8g2.begin();
  u8g2.setFont(u8g2_font_ncenB08_tr); // choose a suitable font
}

void loop(void)
{
  u8g2.clearBuffer();                 // clear the internal memory
  for (int i = 1; i < 7; i++)
  {
    u8g2.drawStr(0, 10 * i, "Hello World!"); // write something to the internal memory
  }
  u8g2.sendBuffer(); // transfer internal memory to the display
  delay(1000);
}

在使用page显示模式时是正常的,只有使用sendbuffer的时候有这样的问题

原因

没有启动全局刷新功能 这个结构的每个字符都是有用的这里到1表示按页存储到ram中 U8G2_SSD1306_128X64_NONAME_1_HW_I2C u8g2

image.png
image.png

buffer介绍

将这里的1改成F就可以显示全部了

代码语言:javascript
复制
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);

结果

修改后

代码语言:javascript
复制
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
//U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);   // All Boards without Reset of the Display

void setup(void) {
  u8g2.begin();
  u8g2.setFont(u8g2_font_ncenB08_tr); // choose a suitable font
}

void loop(void)
{
  u8g2.clearBuffer();                 // clear the internal memory
  for (int i = 1; i < 7; i++)
  {
    u8g2.drawStr(0, 10 * i, "Hello World!"); // write something to the internal memory
  }
  u8g2.sendBuffer(); // transfer internal memory to the display
  delay(1000);
}

能够显示全了

1681404417517.jpg
1681404417517.jpg

但是ram占用也来到了70%

代码语言:javascript
复制
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [========  ]  76.6% (used 1568 bytes from 2048 bytes)
Flash: [===       ]  30.4% (used 9792 bytes from 32256 bytes)
Building .pio/build/uno/firmware.hex
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023年04月14日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原因
  • 结果
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档