技术文档

avr单片机ad 小5带你飞(8)—AVR(ATmega 328P)单片机片内ADC的原理和使用(1)

小编 2024-11-24 技术文档 23 0

小5带你飞(8)—AVR(ATmega 328P)单片机片内ADC的原理和使用(1)

ATmega328p内部集成了一个10位的逐次逼近的A/D转换器。该转换器与一个8通道的模拟多路复用器连接。它能够对来自端口A的8路单端输入电压进行采样。

ADC转换模块的原理图

看一下它的基本特性:

10位分辨率

0.5 LSB积分非线性

±2 LSB绝对精度

13 -~260µs转换时间

最高采样速率76.9 kSPS/s

6路可选的单端输入通道

2路额外多路复用单端输入通道(TQFP 、QFN/MLF)

温度传感器输入通道

ADC读取的结果可设置为左端对其

0~Vcc ADC输入电压范围

可选择1.1v ADC参考电压

自由连续转换模式和单次转换模式

在ADC转换完成时中断

睡眠模式噪音消除

ADC的供电和参考电压:

ADC由独立的专用的模拟电压引脚AVCC供电,AVCC和VCC的电压差别不能大于±0.3V。

ADC的参考电源可以是芯片内部的1.1v的参考电源,也可以是AVCC,也可以采用外部参考电源,使用外部参考电源的时候,外部参考电源可由引脚AREF接入,使用内部参考电压源的时候,可以通过在AREF引脚外部并接一个电容来提高ADC的抗噪性能。这个电容一般可为0.1uF

与ADC有关的寄存器:

ADMUX:多路复用选择寄存器

bit6、bit7 :ADC参考电压选择。如果在转换过程中改变了设置,则只有等待当前转换结束后才起作用。如果在 AREF引脚上施加了外部参考电压,则内部参考电压将不能被选择。这个参考电压的选择见下图:

还是解释一下:

00 :AREF,内部基准源关闭

01 :AVCC,AREF外接滤波电容

10 : 保留

11 :1.1v内部基准电压源,AREF外接滤波电容

bit5:转换结果对齐位。置位左对齐,清位右对齐

bit4:一个保留位

bit3~bit0:模拟通道选择位

就是选择连接到哪个通道上,这个没啥说的。看表就好了,如下:

2. ADCSRA:ADC控制和状态寄存器A

bit7:ADC使能位。置位则启动ADC功能,清位ADC功能关闭

bit6:ADC开始转换。

在单次转换模式下,该位置位将启动一次ADC转换,在连续转换模式下,该位置位,将启动首次转换

bit5:ADC自动触发使能位。

该位置位,则启动ADC自动触发功能。

bit4:ADC中断标志位

ADC转换结束且数据寄存器被更新后该位置位,如果ADIE及SREG寄存器中的全局中断使能位I被置位,

则ADC转换结束中断服务程序被执行,同时该位被硬件清零,也可以通过软件写1清零。

bit3:ADC中断使能位。如果该位及SREG寄存器中的全局中断使能位I被置位,则ADC转换结束中断将被使能。

bit2~bit0:ADC预分频器的选择。这三位决定ADC输入时钟与CPU时钟之间的分频系数,如下表:

3. ADCL 、 ADCH :ADC数据寄存器

分别是左对齐的和右对齐的数据

ADC转换结束后,转换结果将存在这两个寄存器当中。首先ADMUX寄存器当中的ADLAR和MUXn影响转换结果在寄存器中的存放形式。当ADCL被读取时,ADC数据寄存器在读取ADCH之前不会更新,如果转换结果为左对齐且只需要8位的精度,那么仅需要读取ADCH就可以了,否则需先读取ADCL然后读取ADCH。

4.ADCSRB :ADC控制和状态寄存器B

bit2~bit0:ADC自动触发源的选择

说明一下吧:

000:连续转换模式

001:模拟比较器

010:外部中断请求0

011:定时器/计数器0比较匹配A

100:定时器/计数器0溢出

101: 定时器/计数器0比较匹配B

110:定时器DIDR0数器1溢出

111:定时器/计数器1捕捉事件

5. DIDR0:数字输入禁用寄存器0

说明一下:

bit5~bit0 :当这些位置位,相应的ADC引脚的数字输入缓存区被禁止,相应的PIN寄存器读取的时候都为0,

模拟信号运用于ADC5~ADC0,是不需要这么做的,ADC6和ADC7是没有缓存区的。

下面来看看ADC的基本使用步骤:

ADC输入端口初始化

基准电压的设置,数据对齐方式的设置,通道的选择。(ADMUX寄存器的配置)

AD使能,启动装换,中断的设置(ADCSRA寄存器的设置)

触发源的选择(ADCSRB寄存器的设置)

选择中断号,编写中断服务程序,读取ADC的数据(ADCL 、 ADCH )

好的,关于ADC的寄存器就写这么多了,下一篇我们来写ADC的驱动程序。

更多内容请关注头条号:小5嵌入式

Microchip推出全新功能安全型AVR® DA系列单片机

随着物联网(IoT)为工业和家庭应用提供更强的连接性,以及车联网提升了驾驶室和操控功能,业界需要更高性能的单片机来实现更好的实时控制以及增强的人机接口应用。Microchip Technology Inc.(美国微芯科技公司)今日宣布推出下一代AVR® DA系列单片机(MCU),是其首款带有外设触摸控制器(PTC)的功能安全型AVR MCU系列。

Microchip 8位单片机事业部助理营销副总裁Greg Robinson表示:“新推出的AVR DA单片机系列继承了Microchip高性能和高代码效率器件的优势,通过搭载先进模拟和独立于内核的外设,以及比现有器件更多的电容式触摸通道,满足了多个行业的新需求。新的单片机系列产品广泛应用于智能家居安全、楼宇自动化、传感器系统等应用,以及汽车和工业自动化等领域,助力开发人员设计出更加强大、精确和响应灵敏的各类应用。”

Microchip的功能安全认证适用于具有最新安全特性的器件,这些器件同时还带有安全手册、故障模式、影响与诊断分析(FMEDA)报告,在某些情况下,还具备诊断软件,从而减少终端应用安全认证的时间和成本。AVR DA MCU系列包括多个集成的安全功能,以确保稳健的运行,诸如上电复位、欠压检测器和电压水平监控器,可确保充足的电源电压。循环冗余校验(CRC)扫描确保闪存中的应用程序代码有效。通过确保代码的完整性,可避免应用程序的意外和潜在的不安全行为。

Microchip的新型AVR DA系列MCU可在全电源电压范围内实现24 MHz的CPU速度、存储密度高达128 KB的闪存、16 KB SRAM和512 字节EEPROM,具备12位差分ADC、10位DAC、模拟比较器和过零检测器。PTC支持电容式触摸接口设计,支持按钮、滑动条、滚轮、触摸板、较小型触摸屏及广泛应用于消费和工业产品和车辆的手势控制。AVR DA系列支持多达46个自电容和529个互电容触摸通道,并采用最新一代增强型驱动屏蔽PTC和升压模式技术,提供增强的抗噪性、耐水性、触摸灵敏度和响应时间。

此外,AVR DA 系列MCU为嵌入式实时控制系统带来了额外的价值。集成事件系统支持外设间无需CPU即可进行通信。事件无延迟,信息不会丢失,为进行可靠和安全的设计提供了增强的实时性能和可预测性。通过减少CPU需要激活的时间,应用程序的总功耗得以降低。

可配置的自定义逻辑外设支持内部逻辑功能设置,无需外部元件,减少电路板空间和材料成本。凭借12位差分ADC等先进模拟特性,AVR DA系列MCU可在嘈杂环境中测量小幅度信号,非常适合于哈希环境中的传感器节点应用。

AVR DA系列MCU的高存储密度和SRAM与闪存的比率使AVR DA系列产品对无线和有线连接的传感器节点以及其他协议栈密集型应用都具有吸引力。

相关问答

avr 是什么 单片机 ?

AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC(ReducedInstructionSetComputer)精简指令集高速8位单片机。AVR的单片机可以广泛应用...

格布拉斯准则?

布斯准则格拉布斯准则是以正态分布为前提的,理论上较严谨,使用也方便。某个测量值的残余误差的绝对值|Vi|>Gg,则判断此值中有较大误差,应以剔除,此即格...

STC12C5A60S2 单片机 AVR 16的功能区别?

stc12c5a60s2与51单片机区别:1、同样晶振的情况下,stc12c5a60s2速度是普通51的8~12倍对于AT89c51,1个机器周期=12个震荡周期,对于STC12C5A60S2,1...

AVR单片机 刚刚上电的时候未控制的I/O口将默认为高还是低电平?

默认是输入状态,高低电平由管脚引出的外围电路决定。默认是输入状态,高低电平由管脚引出的外围电路决定。

var是什么指令 单片机 ?

AVR是ATMEL公司单片机的一个类型,RISC结构,单指令周期。代表型号有AT90S系列AVR单片机是ATMEL在90年代推出的精简指令集RISC的单片机,跟PIC类似.使用哈佛...

AVR单片机 ldi赋值问题?,ldi性价比怎么样??

[回答]我就觉得立格生信公司还不错,品质好售后都不错,可以考虑合作一下武汉市立格生信科技有限公司是一家研发公司,一直在开发和制造可实时分析物质的传...

Arduino和 单片机 有什么区别?先学哪个比较好?

Arduino的核心是一块AVR单片机,单片机就是一个芯片,而Arduino是一套软硬件都封装了的模块。肯定是学单片机啊,Arduino也就是玩玩而已,真正有技术含量有产品应...

单片机 什么书最好?

51:《单片机的C语言应用程序设计》作者:马忠梅PIC:《PIC单片机入门与实战》作者:张明峰AVR:《AVR单片机嵌入式系统原理与应用实践》作者:马潮这就是我...

数字液晶屏和模拟液晶屏之间有什么详细的区别啊?,模拟屏性能...

简单的说数字示波器的原理是:将输入的模拟信号进行AD转换,转换成数字信号,然后再用单片机进行数据处理,驱动液晶屏显示波形和相关参数。国外网友制...

怎么逆向分析 单片机 的hex文件?有相关的书籍吗?

说来话长,一时不知怎么回答你,给你推荐几本书,看看合不合适:《51单片机》,《单片机的原理与应用》,《单片机的C语言应用程序设计》作者:马忠梅《PIC单片...

猜你喜欢