问题描述
#include <TFT_eSPI.h>
#include <TJpg_Decoder.h>
在使用这两库时候,发现图片虽然显示后,但会强制esp8266复位,一直没找到原因,经过一次一次测试,发现TJpg_Decoder仅仅是一个tjpg图片解码的库,并不能之间显示图片,而且库中提供了一个回调函数,来调用屏幕显示位图的函数。
解决
注意这个函数
bool tft_output(int16_t x, int16_t y, uint16_t w, uint16_t h, uint16_t *bitmap)
{
if (y >= tft.height())
return 0;
tft.pushImage(x, y, w, h, bitmap);
// Return 1 to decode next block
return 1;
}
在setup中添加这个回调函数即可
下面就是全部代码:
只需要将图片换成自己的就可以完整的显示一个图片。

这篇博客介绍了在使用 TFT_eSPI 和 TJpg_Decoder 库显示 JPEG 图片时遇到 ESP8266 强制复位的故障。作者通过调试发现 TJpg_Decoder 库仅负责解码,不直接处理显示,并提供了一个回调函数 tft_output() 来将解码后的位图推送到屏幕。通过在 setup() 函数中注册该回调,成功解决了复位问题。代码示例展示了如何完整显示 JPEG 图片并测量渲染时间。
最低0.47元/天 解锁文章
3781

被折叠的 条评论
为什么被折叠?



