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