STM32数据存储问题。想用STM32处理激光雷达数据,每秒钟串口上来4000个数据,怎么将这些数据存储,并每4000个数据更新一次

2019-07-20 22:47发布

现在实验室正在做使用激光雷达避障,希望大神多指点。激光雷达通过串口和STM32通信,每秒钟传送4000次数据,每次数据包含距离和角度数值,我怎么将这4000个数据进行存储,并且实时更新,可以覆盖上一个4000,一个周期存储完成后还能够实时读取,以此获取障碍物2D尺寸轮廓,用EEPROM?EEPROM的内存只有2kb,是不是不够用啊?用FLASH?用SD卡吗?求大神指点
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
oyixi001
2019-07-20 23:50
本帖最后由 oyixi001 于 2017-5-1 09:10 编辑

就存片内RAM不行么?不清楚你的4000个数据包含多少个8位。我的理解是就算你说的距离和角度数值是32位数据,那就是4*2*4000这也才32k数据诶,如果没有其他的大数据包,片内应该是够得,选64K以上RAM的片子就成。
然后至于速度,串口波特率高一点,用串口出发DMA请求,定义好存储的数组,然后用DMA往里送就完了。可以参考使用DMA进ADC循环采样的程序。
我没弄过哈你要求的东西,只是觉得我说的是个思路~嘿嘿。。。对了,定义这么大的数组要全局变量,不然你就会发现一直在 error中断。。。

一周热门 更多>