打印
[PIC®/AVR®/dsPIC®产品]

ATmega16差分ADC使用

[复制链接]
310|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
用ATmega16单片机的差分ADC测量0~5V电压时,测到4.6V时直接变成0x1FF了,是正常的吗?不应该是到5V才是0x1FF,求大神解答

使用特权

评论回复
沙发
wutaosamuel| | 2023-3-8 14:20 | 只看该作者
这个是10bit的adc,5V时候的度数应该是0x3FF。
你这个数是ADCL寄存器的吗?那ADCH寄存器的读数呢?

使用特权

评论回复
板凳
wutaosamuel| | 2023-3-8 14:27 | 只看该作者
而且你这个ADC输入是测差分信号还是作为普通模拟输入,ADMUX寄存器是怎么配置的?

使用特权

评论回复
地板
还没过四级|  楼主 | 2023-3-9 11:31 | 只看该作者
wutaosamuel 发表于 2023-3-8 14:20
这个是10bit的adc,5V时候的度数应该是0x3FF。
你这个数是ADCL寄存器的吗?那ADCH寄存器的读数呢? ...

你说的是非差分的单端ADC,差分输入的ADC最大上限是0x1FF

使用特权

评论回复
5
wutaosamuel| | 2023-3-10 15:19 | 只看该作者
我的理解是如果单端ADC结果左对齐的,ADC是8bit精度,只需要读ADCH值就行。如果向右对齐的,ADC精度就是10bit的。
不管左齐还是右齐,差分输入ADC都是10bit,最终的ADC结果是需要ADCH和ADCL进行转换的,可以参考这张表来转换



使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

15

帖子

0

粉丝