OpenEdv-开源电子网

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

请问如何将图片及字符烧进 SPI Flash 并读取显示?

[复制链接]

13

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
107
金钱
107
注册时间
2013-8-9
在线时间
2 小时
发表于 2014-9-10 10:48:49 | 显示全部楼层 |阅读模式
5金钱





大家好:
一般我都是用 Image2lcd 生成图片的数组,用 PCtoLCD2002 生成字模的点阵数据,
两者产生的都是 C 语言的数组,*.C 或 *.H 档。

之前我都是将数组(C 或 H)加入程式里面一起编译烧进单片机,
所以图片是由内部 Flash 显示,
现在想要将数组放入外部 SPI Flash 例如 SST25VF061B,
请问要如何将数组转成 HEX 档并写入外部 SPI Flash?
写入外部 SPI Flash 后,MCU 要如何索引定址将图片和字符的地址将数组读出来显示?

我所知道的写入外部 SPI Flash 有三种方法:
1. IC 引脚外接到外用烧录器烧录。
2. 透过 UART
3. 透过 USB

后面两种都需要写 GUI 工具将 HEX 档依序写入 SPI Flash,
这种是适合远端更新图片字型用的,不过难度较高,
不过还是需要先将数组转成 HEX 档,请问这要怎么做呢?
谢谢。

最佳答案

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

1.首先转成hex格式 2.通过串口将hex格式数据发送到某一个数组中保存起来 3.通过SPI接口将保存到数组中的数据传给flash 如果数据量很大,可以分批下传给单片机保存,但是向flash中写的时候要记住保存的起始地址和数据长度,这样才方便以后使用到数据时进行读取数据。所以这里你主要需要做两个工作:1.写串口接收函数,接收由串口调试助手发送的hex格式数据2.写flash驱动代码,将串口下发的数据转存给SPI FLASH(需要记住起始 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

24

主题

147

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
317
金钱
317
注册时间
2014-5-19
在线时间
28 小时
发表于 2014-9-10 10:48:50 | 显示全部楼层
1.首先转成hex格式
2.通过串口将hex格式数据发送到某一个数组中保存起来
3.通过SPI接口将保存到数组中的数据传给flash

如果数据量很大,可以分批下传给单片机保存,但是向flash中写的时候要记住保存的起始地址和数据长度,这样才方便以后使用到数据时进行读取数据。所以这里你主要需要做两个工作:1.写串口接收函数,接收由串口调试助手发送的hex格式数据2.写flash驱动代码,将串口下发的数据转存给SPI FLASH(需要记住起始地址和长度,重要)
完成以上两步就能满足你的要求,尝试一下吧
回复

使用道具 举报

20

主题

56

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2013-8-1
在线时间
0 小时
发表于 2014-9-27 14:04:59 | 显示全部楼层
请问楼主有程序上传不?我现在也搞不懂如何将图片拷进FLASH。现在想做个界面,SD卡被人偷了,icon也就只能存在FLASH了。
回复

使用道具 举报

9

主题

38

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
金钱
268
注册时间
2013-10-19
在线时间
23 小时
发表于 2014-9-28 16:58:59 | 显示全部楼层
回复【2楼】巅峰残狼:
---------------------------------
请问一下,串口发送的hex文件,单片机接收到后,是什么格式的呢?
回复

使用道具 举报

24

主题

147

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
317
金钱
317
注册时间
2014-5-19
在线时间
28 小时
发表于 2014-9-28 17:12:58 | 显示全部楼层
回复【4楼】sakura:
---------------------------------
还是16进制数据:比如说:0xaa,0xbb等
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-30 21:45

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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