新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > AVR单片机(学习ing)—(九)、ATMEGA16的模数转换器—01

AVR单片机(学习ing)—(九)、ATMEGA16的模数转换器—01

作者: 时间:2016-11-27 来源:网络 收藏






2)ADC控制和状态寄存器—ADCSRA


• Bit 7 – ADEN: ADC 使能
ADEN置位即启动ADC,否则ADC功能关闭。在转换过程中关闭ADC将立即中止正在进行
的转换。
• Bit 6 – ADSC: ADC 开始转换
在单次转换模式下,ADSC 置位将启动一次ADC 转换。在连续转换模式下,ADSC 置位
将启动首次转换。第一次转换( 在ADC 启动之后置位ADSC,或者在使能ADC 的同时置
位ADSC) 需要25 个ADC 时钟周期,而不是正常情况下的13 个。第一次转换执行ADC
初始化的工作。
在转换进行过程中读取ADSC 的返回值为"1”,直到转换结束。ADSC 清零不产生任何动
作。
• Bit 5 – ADATE: ADC 自动触发使能
ADATE置位将启动ADC自动触发功能。触发信号的上跳沿启动ADC转换。触发信号源通
过SFIOR 寄存器的ADC 触发信号源选择位ADTS 设置。
• Bit 4 – ADIF: ADC 中断标志
在ADC 转换结束,且数据寄存器被更新后, ADIF 置位。如果ADIE 及SREG 中的全局
中断使能位I 也置位,ADC 转换结束中断服务程序即得以执行,同时ADIF 硬件清零。此
外,还可以通过向此标志写1 来清ADIF。要注意的是,如果对ADCSRA 进行读-修改
-写操作,那么待处理的中断会被禁止。这也适用于SBI 及CBI 指令。
• Bit 3 – ADIE: ADC 中断使能
若ADIE 及SREG 的位I 置位, ADC 转换结束中断即被使能。
• Bits 2:0 – ADPS2:0: ADC 预分频器选择位
由这几位来确定XTAL 与ADC 输入时钟之间的分频因子。



3)ADC 数据寄存器- ADCL 及ADCH



ADC 转换结束后,转换结果存于这两个寄存器之中。如果采用差分通道,结果由2 的补码
形式表示。
读取ADCL 之后,ADC 数据寄存器一直要等到ADCH 也被读出才可以进行数据更新。因
此,如果转换结果为左对齐,且要求的精度不高于8 比特,那么仅需读取ADCH 就足够
了。否则必须先读出ADCL 再读ADCH。
ADMUX 寄存器的 ADLAR 及MUXn 会影响转换结果在数据寄存器中的表示方式。如果
ADLAR 为1,那么结果为左对齐;反之( 系统缺省设置),结果为右对齐。
• ADC9:0: ADC 转换结果
ADC 转换的结果。

4)特殊功能IO 寄存器- SFIOR



• Bit 7:5 – ADTS2:0: ADC 自动触发源
若ADCSRA 寄存器的ADATE 置位,ADTS 的值将确定触发ADC 转换的触发源;否则,
ADTS的设置没有意义。被选中的中断标志在其上升沿触发ADC转换。从一个中断标志清
零的触发源切换到中断标志置位的触发源会使触发信号产生一个上升沿。如果此时

ADCSRA 寄存器的ADEN 为1,ADC 转换即被启动。切换到连续运行模式(ADTS[2:0]=0)
时,即使ADC 中断标志已经置位也不会产生触发事件。



• Bit 4 – Res: 保留位
这一位保留。为了与以后的器件相兼容,在写SFIOR 时这一位应写0。


上一页 1 2 3 下一页

评论


技术专区

关闭