位图的话直接用TFT_eSPI库就行了,而jpg格式还需要使用JPEGDecoder库解码。 4.1 制作图片素材 网上随便找一张图片,借助WIN10自带图片编辑器或者其他图片处理软件把图片处理一下,裁剪出自己想要显示的内容之后,再把分辨率调整成适合的大小,图片以jpg,bmp或者其他格式保存都是可以的。 4.2 生成图片数据 我们可以借助一些工具来实现图片
drawJpgFile(fs::FS &fs, const char *path, uint16_t x,uint16_t y,uint16_t maxWidth, uint16_t maxHeight, uint16_t offX,uint16_t offY, jpeg_div_t scale) 对于1张110*110的图片,如果调用draw函数,给出maxWidth和maxHeight,图像不会成比例缩小,只会截出那么大的画面出来;如果图像尺寸超过...
M5.Lcd.drawJpg(tetris_img, 34215); //从内存中读取名为tetris_img的jpeg文件 } void loop(){ }drawJpgFile()功能说明: 从文件流中读取JPEG数据并绘制它 函数原型: void drawJpgFiledrawJpgFile(fs::FS &fs, const char *path, uint16_t x,uint16_t y,uint16_t maxWidth, uint16_t maxHeight...
我们的目的是在LCD显示屏上画线、画圆(geomentry.c)和写字(font.c)其核心是画点(farmebuffer.c),这些都属于纯软件。此外还需要一个lcd_test.c测试程序提供操作菜单,调用画线、画圆和写字操作。 往下操作的是LCD相关的内容,不同的LCD,其配置的参数也会不一样,通过lcd_3.5.c或lcd_4.3.c来设置。 根据LCD的...
(图中有误)、C51格式: 接着生成汉字的字模: 接着复制生成数据,在程序中定义为一个二维数组作为字库,第一个值表示字库中的元素个数,可以由编译器自行判断...二、如何将字符显示到LCD 1...打点函数支持字符显示需要打点函数的支持,这里我使用RGB-LCD的打点函数: void lcd_draw_point(uint16_t x, uint16_t...
of width#ifdefUSE_DMAuint16_t usTemp[2][BUFFER_SIZE];// Global to support DMA use#elseuint16_t usTemp[1][BUFFER_SIZE];// Global to support DMA use#endifbool dmaBuf=0;// Draw a line of image directly on the LCDvoidGIFDraw(GIFDRAW*pDraw){uint8_t*s;uint16_t*d,*usPalette;int...
② 右边属性栏设置DrawPad在工作区域中的大小(根据需求设置,涉及后续绘图的范围); ③ 属性栏中“VP Address”选择“0x08F000-command”。 七、编译&下载 ① 界面设置好后,使用USB线缆连接模块,点击下载按钮; ②对话框中点击“Start Download”,下载都模块中,显示“Download Success”下载成功。
voidloop(){constuint8_t*Animate_value;//指向关键帧的指针uint32_tAnimate_size;//指向关键帧大小的指针if(millis()-Amimate_reflash_Time>100)// 100 ms切换一次{Amimate_reflash_Time=millis();imgAnim(&Animate_value,&Animate_size);TJpgDec.drawJpg(0,0,Animate_value,Animate_size);}}...
将字库数组都放在另外一个头文件里,并有如下定义: 因为字库数组太长,我就不一一展示了,只拿1206的中文字模为例: 5.main代码 其中gImage_picture是在picture.h文件中定义的数组,存放的是用软件Img2Lcd.exe得到的图片颜色数组。LCD_DrawRect()是绘制矩形函数,其内部实现如下: 六、最终结果...
TJpgDec.drawJpg(0, 0, Animate_value, Animate_size); } } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.