怎么将STM32的AD采集到的数据存入到FLASH中
时间:10-02
整理:3721RD
点击:
使用STM32F103C8T6,AD采集引脚电压,20us采集一个数,100个数取平均值读出,也就是2ms得到一个数据,现在需要把得到数据存入到外部的W25Q64 FLASH中,通过SPI驱动FLASH, flash驱动程序已经写好,怎么写把得到的数据存入到FLASH中,最好是实时存入。新人求指导!
使用缓冲区,2ms得到一个数据,使用SPI flash写入是可以单字节写,也可以页写(256Bytes一页),先将数据存在内存中,采够256Bytes之后,使用页写命令集中写一次,则2*256=512ms写一次,没写完的时候,采到的数据先存入另一组缓冲区,如果复杂一点使用队列一个缓冲区可以搞定。
注意页写一次的时间,采样时间累计必须大于这个时间,看手册有这个时间,肯定是低于512ms的,可能几个ms吧,忘记了。
很着急!
你数据处理完以后,往SPI总线上写入数据啊~你这芯片不会用?
直接一字节一字节写?数据应该会丢失吧
写内存地址都是一个一个字节的依次写啊,有什么好丢失的?
2ms得到一个数据,1s就是500个数据,就算一个数据占2个字节,那1s就是1K字节数据,你的外部flash够大么?能存多长时间的数据?还有,得到数据以后存入外部flash的时间2ms够不够?如此大量的数据存入外部flash我觉得不可行,我觉得要的到AD值没必要2ms一个,这样的AD值得到了又有什么意义呢?
多看相关器件的datasheet
11
很全面细致