STM8S学习02——ADC

来源:互联网 发布:安赛蜜 知乎 编辑:程序博客网 时间:2024/06/06 11:49
一、ADC_转换模式
1、ADC支持5种转换模式:单次模式,连续模式,带缓存的连续模式,单次扫描模式,连续扫描模式。

2、单次模式
在单次转换模式中, ADC仅在由ADC_CSR寄存器的CH[3:0]选定的通道上完成一次转换。
该模式是在当CONT位为0时通过置位ADC_CR1 寄存器的ADON位来启动的。
一旦转换完成,转换后的数据存储在ADC_DR寄存器中, EOC(转换结束)标志被置位,如果EOCIE被置位将产生一个中断。

3、连续和带缓存的连续模式
在连续转换模式中,ADC在完成一次转换后就立刻开始下一次的转换。当CONT位被置位时即将ADC设为连续模式,该模式是通过置位
ADC_CR1寄存器的 ADON 位来启动的。
(1)如果缓冲功能没有被使能(ADC_CR3寄存器的 DBUF 位 = 0),那么转换结果数据保存在ADC_DR寄存器中同时EOC标志被置位。
    如果EOCIE位已被置位将产生一次中断。然后开始下一次转换。
(2)如果缓存功能被使能(DBUF=1),那么某个选定通道上的 8 个或者 10 个连续的转换结果会填满数据缓存,当缓存被填满时,
    EOC(转换结束)自动开始标志被置位,如果EOCIE位已被置位,则会产生一个中断,然后一个新的转换自动开始。
如果某个数据缓存器在被读走之前被覆盖,OVR标志将置1。

4、单次扫描模式
(1)该模式是用来转换从 AIN0 到 AINn 之间的一连串模拟通道,‘n’是在 ADC_CSR寄存器的CH[3:0]位中指定的通道编号。
    在扫描转换的过程中,序号 CH[3:0]位的值是被硬件自动更新的,他总保存当前正在被转换的通道编号。
(2)单次转换模式可以在SCAN位被置位且CONT位已被清零时通过置位ADON位来启动。
注意:当使用扫描模式时,不可以将 AIN0 到 AINn 之间通道对应的 I/O 口设为输出状态,因为ADC的多路选择器已经将这些 I/O 口
     的输出模块禁用了。
 
 对于单次扫描模式,转换是从 AIN0 通道开始的,而且结果数据被存储在数据缓冲寄存器 ADC_DBxR 中,当最后一个通道(通道'n')被转换完成后,EOC(转换结束)标志被置位,当EOCIE位已被置位时将产生一个中断






















0 0
原创粉丝点击