Microchip
直播中

王刚

7年用户 1268经验值
私信 关注
[问答]

如何使用PIC18F46K22

大家好,我目前使用的是PIC18F46K22。根据数据表,它有一个10位模数转换器。所以5v的最大计数应该是2^10=1024。但是在调试期间,当我给那个通道5v时,它给出一个65536的计数,这是16位模数转换器的最大计数。数据表不正确吗?D真的有16位ADC集成到这个PIC还是我犯了一个错误?谢谢阿伦

回帖(6)

罗宏达

2020-5-7 07:47:10
我想我知道你在说什么。我认为你所看到的是一个合理的理由。从ADC输出的是两个8位寄存器(通常是ADRESH和ADRESL)。您可以将ADRES看作一个16位的寄存器,对于8-MSB使用ADRESH,而对于8-LSB使用ADRESL。RES寄存器。现在,未使用的比特表示符号,而不考虑正当性。如果您选择正确的调整值,它是标准的2补16位数。基本上,它是您将10位数放入16位数的地方。如果您看到65535(2^16-1),它将表示ADC值为-1,而不管调整是否正确。请参阅数据表以获得调整。希望这能有所帮助。K22芯片没有负的ADC值。K80,我想这也会…我真傻。
举报

陈洁

2020-5-7 08:31:41
编辑:左对齐,我刚刚检查过
举报

张娜

2020-5-7 08:46:54
事实上,让它“正确”。不要用“+”以上,更好地使用
举报

李维兴

2020-5-7 09:22:38
10位ADC将永远不会返回65536的结果,甚至不是16位ADC。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分