当前位置: 代码迷 >> 嵌入开发 >> 关于ARM总路线读写数据时冲突
  详细解决方案

关于ARM总路线读写数据时冲突

热度:9530   发布时间:2013-02-26 00:00:00.0
关于ARM总线读写数据时冲突

1、例如通过DMA方式从某bank上接的AD上读数据,假设在读的过程中被IRQ中断了,中断返回之后继续读的AD数据不就不对了吗?
(因为AD转换的结果肯定没在线上保持着,可能在出下一个转换结果过程中,可能就是下一个转换结果了)
2、例如IRQ中断中读外部AD转换数据,假设IRQ中断过程被FIQ中断了,FIQ中断返回之后继续读的AD数据不就不对了吗?(同上)
------解决方案--------------------------------------------------------
DMA的时候关中断,或者中断话,DMA在终端之后重新读。
AD有没有什么控制说保持读数,没有的话其实可以关中断。好像中断关了,也能记着,再开的时候就直接进中断了。不太记得了。
------解决方案--------------------------------------------------------
对于要求实时性高速AD采集来说,一般是用FPGA去控制AD转换芯片,将数据缓冲到RAM里,然后CPU去读。
------解决方案--------------------------------------------------------
引用:
对于要求实时性高速AD采集来说,一般是用FPGA去控制AD转换芯片,将数据缓冲到RAM里,然后CPU去读。
++
------解决方案--------------------------------------------------------
关闭所有的中断即可,可以保证采集数据的实时性,如果数据量很大,高速数据的话,应该采用额外硬件辅助完成。
  相关解决方案