硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3410|回复: 6
收起左侧

[emWin] F429+SDRAM+SPI flash的这种搭配,如果想要显示多个全屏图片,图片太大只能放在SPI flash,应该如何操作呢?

[复制链接]

19

主题

63

回帖

120

积分

初级会员

积分
120
发表于 2019-7-4 16:49:58 | 显示全部楼层 |阅读模式
硬件
F429IG+SDRAM(8M)+SPIflash(32M),此处没有SD卡,硬汉哥的资料是SD卡读取文件到SDRAM中,搞到存储里面刷新的。
软件
StemWin中有调用显示图片的接口,例如
void GUI_DrawBitmap       (const GUI_BITMAP * pBM, int x0, int y0);
int  GUI_BMP_Draw        (const void * pFileData,                  int x0, int y0);
int  GUI_BMP_DrawEx      (GUI_GET_DATA_FUNC * pfGetData, void * p, int x0, int y0);

问题
如果图片是放在内部flash(工具转成数组)的话,很简单,直接调用 GUI_DrawBitmap();这种情况适合小图片,毕竟单片机的flash太小只有1M。
当我们需要显示多张液晶屏全尺寸的图片切换显示,应该如何实现呢,例如实现10张图片,每张是接近1M.

思路
  • 将10张图片转成数组放到内部flash,依次写入SPI flash;最终的程序从SPI flash中读取的SDRAM中,搞到存储器中显示。
  • 将SPI flash中移植文件系统,将.bmp文件拷贝到里面,直接读取.bmp显示

各位大哥,如何解决呢?


回复

使用道具 举报

23

主题

1443

回帖

1512

积分

至尊会员

积分
1512
发表于 2019-7-4 16:57:50 | 显示全部楼层

回帖奖励 +1 个金币

老铁不搞Linux了,Linux顶呱呱
代码不规范,亲人两行泪!
回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2019-7-4 17:05:26 | 显示全部楼层
missfox 发表于 2019-7-4 16:57
老铁不搞Linux了,Linux顶呱呱

这个是项目   linux  只是参考学习   备选方案   哈哈
回复

使用道具 举报

23

主题

1443

回帖

1512

积分

至尊会员

积分
1512
发表于 2019-7-4 17:20:34 | 显示全部楼层
wx_RHfK9tfE 发表于 2019-7-4 17:05
这个是项目   linux  只是参考学习   备选方案   哈哈

难逃真香定律
代码不规范,亲人两行泪!
回复

使用道具 举报

23

主题

1443

回帖

1512

积分

至尊会员

积分
1512
发表于 2019-7-4 17:21:49 | 显示全部楼层
言归正传,做成流位图,可以放到各种外部存储器,放在外部flash,上电SDRAM加载
代码不规范,亲人两行泪!
回复

使用道具 举报

19

主题

63

回帖

120

积分

初级会员

积分
120
 楼主| 发表于 2019-7-8 13:50:14 | 显示全部楼层
missfox 发表于 2019-7-4 17:21
言归正传,做成流位图,可以放到各种外部存储器,放在外部flash,上电SDRAM加载

ok  谢谢老哥  
回复

使用道具 举报

22

主题

114

回帖

180

积分

初级会员

积分
180
发表于 2020-9-18 15:43:05 | 显示全部楼层
大哥,你解决了吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-19 14:04 , Processed in 0.612367 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表