找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

C语言数组数据的量太大STM32程序该怎么处理?

查看数: 4758 | 评论数: 12 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-3-4 20:30

正文摘要:

小弟现在做一个设计,需要对一帧数据做处理,用的STM32F103RCT6,但是这个内存好像不太够,请问各位大哥有什么方法处理吗?

回复

ID:342895 发表于 2024-9-26 19:45
看你定义的数组在30K大小,你得先看看是不是必须得把30k数据接收完了才能处理,一般很少有应用必须收到30K数据才做处理的情况,可能方案你得自己优化一下。
- 如果后面你的方案是从串口一边收数据一边处理,那可以考虑生产-消费的模型,串口利用中断的方式不停往fifo里塞数据,而主循环里不停的从fifo取数据处理,这样可以将使用ram的空间(fifo空间)降到很低的范围
- 如果你就非得收齐30k数据才做处理,那估计你需要加个额外的器件,比如sd卡,外部flash这种,将收到的数据先放到这些容量大的器件里,然后再将数据读到ram里处理
ID:828160 发表于 2024-9-25 09:12
换芯片,STM32H750VB,SRAM有1M
ID:1132533 发表于 2024-9-24 16:25
可以试试外接flash
ID:1132533 发表于 2024-9-24 16:25
之前我也是遇到了类似的问题 需要从sd卡里读一个很大数据量的数组 flash直接爆了 后面也不知道该咋办
ID:517951 发表于 2024-9-24 08:02
数组的数据量太大, 不需要全部都放在单片机的内部flash空间, 可以用25Q16/128的SPI接口的外部储存保存.
ID:883031 发表于 2021-3-5 16:11
跟发送方沟通好协议,分段发送,处理完一段给标志,继续发送
ID:879348 发表于 2021-3-5 15:39
不用问了,对速度要求快,不可能有其他方法
ID:827243 发表于 2021-3-5 15:15
这33000个字节都有用么?可以每接收1000个处理一下,保留有用的数据。
ID:592807 发表于 2021-3-5 13:30
没用的,我试过。最好用其他外设存起来或者做个200的数组,然后每接受50个对比一次。处理数据稍微卡一下就崩了。
ID:287575 发表于 2021-3-5 11:07
外扩SRAM
ID:417878 发表于 2021-3-5 10:48
munuc_w 发表于 2021-3-5 08:25
RC的RAM是48K,不够用的话,可以换RF,RAM是96K,这是103系列64PIN RAM最大的了。

谢谢老哥了,我先看看采集卡能不能用
ID:752974 发表于 2021-3-5 08:25
RC的RAM是48K,不够用的话,可以换RF,RAM是96K,这是103系列64PIN RAM最大的了。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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