打印
[STM32F4]

使用串口和SPI给外部FLASH烧录字库问题求助

[复制链接]
3477|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
接触ST芯片不久,想使用串口和SPI给外部FLASH烧录字库却总是不成功,只烧进了一部分字库,怀疑是烧写速度的问题,但是波特率调低了好像也不行,大家帮忙看看程序哪里有问题呀?

串口程序.png (15.91 KB )

串口程序.png
沙发
mmuuss586| | 2017-8-16 11:20 | 只看该作者
最好在主程序里写入数据;
不要放在中断里;

使用特权

评论回复
评论
msq199058 2017-8-16 14:01 回复TA
SPI写FLASH的速度是45M应该不影响吧? 
板凳
feelhyq| | 2017-8-16 12:17 | 只看该作者
mmuuss586 发表于 2017-8-16 11:20
最好在主程序里写入数据;
不要放在中断里;

使用特权

评论回复
地板
msq199058|  楼主 | 2017-8-17 09:19 | 只看该作者
没有其他思路了么

使用特权

评论回复
5
Prry| | 2017-8-18 14:51 | 只看该作者
放串口中断里面写数据,能正确才怪!

使用特权

评论回复
6
msq199058|  楼主 | 2017-8-25 16:19 | 只看该作者
Prry 发表于 2017-8-18 14:51
放串口中断里面写数据,能正确才怪!

能不能举个例子要怎么用才好

使用特权

评论回复
7
Prry| | 2017-8-25 16:22 | 只看该作者
msq199058 发表于 2017-8-25 16:19
能不能举个例子要怎么用才好

1、增加串口接收缓存,典型的就是环形缓冲区(FIFO);
2、裸机的话,在main函数中处理数据——读取FIFO的数据,解析并写入flash;带操作系统的话则开一个线程处理。

使用特权

评论回复
8
xixi2017| | 2017-8-25 19:34 | 只看该作者
45M,这么快。

使用特权

评论回复
9
山东电子小菜鸟| | 2017-8-25 20:46 | 只看该作者

使用特权

评论回复
10
msq199058|  楼主 | 2017-8-27 22:19 | 只看该作者
Prry 发表于 2017-8-25 16:22
1、增加串口接收缓存,典型的就是环形缓冲区(FIFO);
2、裸机的话,在main函数中处理数据——读取FIFO ...

好的,明天试一下看看

使用特权

评论回复
11
zhaoyongcheng11| | 2019-10-8 09:53 | 只看该作者
每次中断只接受一个字节,每次往flash写一字节就没问题了

使用特权

评论回复
12
DIY小幸福| | 2021-8-16 11:22 | 只看该作者
研究研究

使用特权

评论回复
13
andygirl| | 2021-8-26 15:57 | 只看该作者
个人觉得,串口中断只接收数据,不处理。处理在中断外进行。

使用特权

评论回复
14
ljxh401| | 2021-8-26 16:18 | 只看该作者
在中断里面不要写数据,放到一个消息队列里面 或者一个 buffer里面
串口传输数据的协议 要写明一次传输多少数据,最好有空闲查询,做速度匹配

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

68

帖子

0

粉丝