小问题请教:是覆盖还是排除?

[复制链接]
 楼主| tianli1980 发表于 2012-7-9 11:43 | 显示全部楼层 |阅读模式
我想请问一下各位:
当一个ADC中断到来时候,程序正在中断处理数据,这时候ADC有转换结束,请求中断,因为正在中断中,所以这个请求在外面等待
但是就在时候,又一个ADC转换结束,请问此时,是覆盖掉上个等待中断请求还是不覆盖,排队?
香水城 发表于 2012-7-9 12:08 | 显示全部楼层
ADC没有FIFO的,所以不可能排队,只能覆盖,所以可以使用DMA来传输转换数据。

但是,因为没有数据FIFO,所以即使DMA也不能保证完全不丢数据。所以,要确保不丢数据,必须全盘考虑代码的负载量。

对于STM32F2和STM32F4系列,新增了OVERRUN标志位,指示数据被覆盖。
拿起书本 发表于 2012-7-9 13:55 | 显示全部楼层
会覆盖的,ADC的结果会自动更新到最近一次转换的结果。
jxmzzr 发表于 2012-7-10 16:43 | 显示全部楼层
这种情况下,用DMA会好比较好吧?
 楼主| tianli1980 发表于 2012-7-12 10:37 | 显示全部楼层
不是 我就是想问 会不会覆盖那个中断请求,如果不覆盖,那么内存会不断得减少,直到溢出
 楼主| tianli1980 发表于 2012-9-1 09:27 | 显示全部楼层
知道了,挂了这么久,结贴了,谢谢楼上的各位朋友。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

482

主题

2214

帖子

11

粉丝
快速回复 在线客服 返回列表 返回顶部