你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
查看全部评分
wenyangzeng 发表于 2018-4-8 21:43 根据你设定的DMA数据传输长度,缓冲区满了DMA就停止,可以产生一个中断。不可能发生冲突的。 ...
厦门浪子 发表于 2018-4-8 22:15 没设置DMA中断呢
toofree 发表于 2018-4-9 00:11 关于DMA,在RM0008手册上是这么描述的。见下图:
Dandjinh 发表于 2018-4-9 09:07 把DMA改成循环,开启半长中断,在半长中断里处理
厦门浪子 发表于 2018-4-9 13:32 请问当读与写入冲突时候比如都读缓冲期的的某个位置数据,CPU占用时间是多长? ...
a82487608 发表于 2018-4-14 22:26 不断读出和不断写入过程不会发生冲突。 你看DMA循环模式就知道了
关于DMA,在RM0008手册上是这么描述的。见下图:
来个中文版的。
可以说明问题了吗?
就是说DMA的写和CPU的读不会冲突。由于有了总线仲裁器执行循环调度,CPU至少会有一半的时间可以占用系统总线。
CPU有占用系统总线的时间,那么就可以访问SRAM,因为SRAM也是挂在系统总线上的。
评分
查看全部评分
评分
查看全部评分
没设置DMA中断呢
评分
查看全部评分
没设置DMA中断时ADC转换后的数据在ADC数据寄存器中,需要不断的去读取
评分
查看全部评分
评分
查看全部评分
谢谢你的回答。
你好,我的问题是不开设中断的情况
请问当读与写入冲突时候比如都读缓冲期的的某个位置数据,CPU占用时间是多长?
评分
查看全部评分
是的。