原创 STM32 ADC的规则通道和注入通道有什么区别

2009-12-26 15:58 2581 9 10 分类: MCU/ 嵌入式

 



STM32的每个ADC模块通过内部的模拟多路开关,可以切换到不同的输入通道并进行转换。STM32特别地加入了多种成组转换的模式,可以由程序设置好之后,对多个模拟通道自动地进行逐个地采样转换。


有2种划分转换组的方式:规则通道组和注入通道组。通常规则通道组中可以安排最多16个通道,而注入通道组可以安排最多4个通道。


在执行规则通道组扫描转换时,如有例外处理则可启用注入通道组的转换。


一个不太恰当的比喻是:规则通道组的转换好比是程序的正常执行,而注入通道组的转换则好比是程序正常执行之外的一个中断处理程序。





再举一个不一定使用的例子:


假如你在家里的院子内放了5个温度探头,室内放了3个温度探头;你需要时刻监视室外温度即可,但偶尔你想看看室内的温度;因此你可以使用规则通道组循环扫描室外的5个探头并显示AD转换结果,当你想看室内温度时,通过一个按钮启动注入转换组(3个室内探头)并暂时显示室内温度,当你放开这个按钮后,系统又会回到规则通道组继续检测室外温度。


从系统设计上,测量并显示室内温度的过程中断了测量并显示室外温度的过程,但程序设计上可以在初始化阶段分别设置好不同的转换组,系统运行中不必再变更循环转换的配置,从而达到两个任务互不干扰和快速切换的结果。可以设想一下,如果没有规则组和注入组的划分,当你按下按钮后,需要从新配置AD循环扫描的通道,然后在施放按钮后需再次配置AD循环扫描的通道。

——————————————
上面的例子因为速度较慢,不能完全体现这样区分(规则组和注入组)的好处,但在工业应用领域中有很多检测和监视探头需要较快地处理,这样对AD转换的分组将简化事件处理的程序并提高事件处理的速度。
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户1090342 2009-12-28 21:58

欢迎到我的博客去看看:http://blog.ednchina.com/STM32/
相关推荐阅读
用户377539 2010-10-01 22:05
[转帖收藏]浅析μC/OS-II v2.85内核OSTimeDly()函数工作原理
此贴转载:http://hi.baidu.com/hhbolin/blog/item/273de952ee950b688535240e.html //-------------------------...
用户377539 2010-10-01 12:09
[收藏转帖]uCOS任务堆栈的深入分析
uCOS任务堆栈的深入分析| 2008-10-04 作者:tigerletEDN博客精华文章  作者:TIgerlet堆栈作用的就是用来保存局部变量,从本质上讲也就是将CPU寄存器的值保存到RAM中。...
用户377539 2010-09-06 15:27
实现一个8bit的二进制数反转
如何实现一个8bit的二进制数反转呢。有以下方法:=================我是华丽的分割线===================uint8 bin8_rev(uint8 data) {   ...
用户377539 2010-09-01 14:03
热转印PCB的那些你该知道的事
               我写这个仅为了纪念多年热转印PCB的过程,转印PCB需要的是经验的时间积累。         首先是将PCB打印到转印纸上。转印纸尽量选择质量好的。如果PCB面积较小,可...
用户377539 2010-08-30 17:11
关于格雷码和自然码的转换问题
       刚从网上看到一道题目,要求将二进制自然码转换为格雷码。一看蒙了。完全不会。把数电给回老师了。没办法。上万能的搜索引擎。一搜居然就出来了。原来使用简单的或非门电路就可以实现。      下...
用户377539 2010-08-30 11:24
心得体会:如何使用STM32的Flash来模拟eeprom
ST原版模拟eeprom范例 //我的模拟eeprom范例       如果你的MCU的flash足够大。并且你的MCU提供自编程flash指令。则可以通过flash模拟出一片eeprom区域。用于...
EE直播间
更多
我要评论
1
9
关闭 站长推荐上一条 /3 下一条