OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4910|回复: 10

STM32F103ZET6刷3.5寸液晶!菜鸟求拯救!!!

[复制链接]

15

主题

114

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2014-7-1
在线时间
28 小时
发表于 2014-10-9 10:05:09 | 显示全部楼层 |阅读模式
5金钱
我刷图的方案:用Image2Lcd将高清的BMP图片解码成C文件,放到SD卡中,


然后用  res=f_read(&fdst,databuf,512,&br )函数读取并放到databuf数组里面,最后用 image_display(u16 x,u16 y,u8 * databuf)显示。

1、由于解码的BMP图片的数据庞大(307208),用f_read函数读取的话每次只能读取512个字节,而且也不能定义一个databuf数组可以达到307208的容量。我想过分多次读取然后同时刷新,但是发现那个image_display的X和Y不好确定,然后就一直纠结着,跪求大神们给点建议。

最佳答案

查看完整内容[请看2#楼]

你生成的image2lcd就有尺寸信息(最开始的8字节貌似是),你解析了尺寸信息,就知道图片尺寸了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-10-9 10:05:10 | 显示全部楼层
你生成的image2lcd就有尺寸信息(最开始的8字节貌似是),你解析了尺寸信息,就知道图片尺寸了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-10-9 20:30:16 | 显示全部楼层
多次读取是对的,同时刷新不太可能啊,除非你有足够大的RAM
回复

使用道具 举报

15

主题

114

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2014-7-1
在线时间
28 小时
 楼主| 发表于 2014-10-10 09:32:05 | 显示全部楼层
回复【3楼】ricefat:
---------------------------------
我也有外扩SRAM(IS62WV5126),我现在就是分多次读取SD卡,然后写入到SRAM中,但是我从SRAM中读出来显示的时候有点迷惑,因为每次都是读取65535个字节,然后用image_display(u16 x,u16 y,u8 * databuf)显示,所以后面几次刷图的时候X,Y轴的值不知道如何确定!
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-10-10 10:27:47 | 显示全部楼层
回复【4楼】zengan007:
---------------------------------
你需要知道图片的尺寸,然后计算每次读取后的坐标值
回复

使用道具 举报

15

主题

114

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2014-7-1
在线时间
28 小时
 楼主| 发表于 2014-10-10 11:06:12 | 显示全部楼层
回复【5楼】ricefat:
---------------------------------
感觉这样也是很麻烦的啊!
老师有没有什么更好的方案呢?我只想在液晶屏上切换显示15张BMP图片,显示过程中要流畅就行。原子哥说把BMP解码的信息写入到W25Q64,但是那么多图能写进去么?我手里有个战舰的开发板,如果只利用现有资源能搞定么?外加个RA8875行么?
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-10-10 11:25:39 | 显示全部楼层
你可以先写缓存,然后让硬件完成显示过程,RAM足够就可以。
回复

使用道具 举报

15

主题

114

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2014-7-1
在线时间
28 小时
 楼主| 发表于 2014-10-10 12:26:44 | 显示全部楼层
回复【7楼】ricefat:
---------------------------------
老师,能详细点么?菜鸟完全不懂啊!
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-10-10 14:44:40 | 显示全部楼层
回复【8楼】zengan007:
---------------------------------
在RAM里一次放一张,一张一张刷
回复

使用道具 举报

15

主题

114

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2014-7-1
在线时间
28 小时
 楼主| 发表于 2014-10-10 16:02:09 | 显示全部楼层
回复【9楼】ricefat:
---------------------------------
在SRAM(IS62WV5126)里面放图片?BMP格式的如何写进去呢?难道也要用Image2Lcd解码?还是用单片机去解码?
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2014-10-10 16:52:35 | 显示全部楼层
回复【10楼】zengan007:
---------------------------------
把BMP像素数据直接写入SRAM就可以了
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-30 10:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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