打印
[其他ST产品]

如何在串口DMA方式下读取大量数据并写入到SFLASH

[复制链接]
877|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
elephant00|  楼主 | 2024-1-26 10:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
串口连续接收一个大文件,比如200K的bin文件(16M以内),边接收边写入到SFLASH中,我的思路是:设置2个4096字节的接收buffer,然后切换接收,一个buffer接收过程中,另外一个buffer的数据写入到sflash,串口接收采用DMA+空闲中断,现在的问题是:如何在一个buffer数据收完后及时切换到另外一个buffer?

使用特权

评论回复
沙发
两只袜子| | 2024-2-5 16:46 | 只看该作者
看你的硬件配置、使用的库和你的具体需求。

使用特权

评论回复
板凳
一秒落纱| | 2024-2-20 11:57 | 只看该作者
串口收数据得开两个buffer了吧

使用特权

评论回复
地板
夜阑风雨| | 2024-2-20 14:00 | 只看该作者
你的思路好像是没啥问题

使用特权

评论回复
5
远山寻你| | 2024-2-20 16:00 | 只看该作者
我觉得2个buffer没问题,而且要有标记才能收,不然不太行吧

使用特权

评论回复
6
光辉梦境| | 2024-2-20 18:00 | 只看该作者
你用DMA的话,好像都不用2个buffer了吧

使用特权

评论回复
7
三生万物| | 2024-2-20 20:00 | 只看该作者
一般DMA不是很快的么,需要这种设计么

使用特权

评论回复
8
淡漠安然| | 2024-2-20 22:00 | 只看该作者
写入flash的速度是你的关键

使用特权

评论回复
9
暖了夏天蓝了海| | 2024-2-21 01:00 | 只看该作者
我觉得DMA就可以,不需要2个buffer

使用特权

评论回复
10
江河千里| | 2024-2-21 03:00 | 只看该作者
都大文件了,不如用SPI

使用特权

评论回复
11
别乱了阵脚| | 2024-2-21 05:00 | 只看该作者
感觉串口速度还是不那么快,而且需要校验之类的,不然丢数据咋办

使用特权

评论回复
12
冰春彩落下| | 2024-2-21 07:00 | 只看该作者
你用双缓冲的话是可以的

使用特权

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

本版积分规则

968

主题

2962

帖子

7

粉丝