我使用DMA来传送ADC的数据后发现ADC1->SR寄存器中的EOC位不会置1.
而直接读取ADC的数据时该位会正常的置1.
如果我的程序写while(判断该位是否为1),使用DMA程序则会卡在这里,不使用DMA则不会卡住。
只是这个位的判读有问题,DMA可以正常传送数据。
请原子哥解答这是什么问题?
还有一个问题就是DMA存储区的指针递增模式。
我用一个数组来当存储器,可是用指针递增模式发现数据还是只能出现在数组的第一个位。不过奇怪的是,虽然多次传送数据,可是传送过来的数据好像并不是把前面的值给覆盖,而是叠加。
请问配置DMA的时候要注意下哪些问题?指针递增模式要注意下什么问题?
我是学寄存器版本的。
一周热门 更多>