完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我注意到,当使用刺激窗口将AN0设置为234mV时,读出的数字是十进制.47,不像预期的那样。这很奇怪,因为我将FVR设置为1.024V,所以读数应该是十进制.234。小数.47看起来是使用5V作为参考。因此,长话短说,我发现模拟器没有设置FVRCON的第6位,即使我特别使用bsf来设置该位,它仍然保持该位为零,尽管它按照指示设置了其他位。模拟器只能使用其他位吗?一个5V基准或另一个寄存器应该在不同的地方设置吗?谢谢。(我使用的是16F1827和MPASM)
|
|
相关推荐
6个回答
|
|
“这个数字是十进制的。47”这是什么意思?你读了什么数字,读到哪里了?我可以验证模拟器没有处理FVRCON.FVRRDY位(位6)。当模拟器实现FVR功能时,FVRRDY位可能不存在于较早的设备中。像16F1827这样的更新设备在没有模拟器团队的情况下有“Skink”FVRRDY!格林先生:FVRRDY是只读位,所以您没有机会用bsf设置它。也就是说,我希望FVR能够正常工作,您可以忽略FVRRDY(特别是对于16F1827,无论如何该位应该被卡在“1”上)。那么我们回到了什么是0.47的原始问题?
|
|
|
|
我明白了,这样就清除了位“问题”的设置,谢谢。我原本希望看到234(小数而不是十六进制——抱歉,我试图变聪明!)在ADRESH:这是我在刺激中的价值。但是,如果参考电压是5V,而不是我设定的1.024V,我会得到47的值。
|
|
|
|
是的,我认为它是ADC,但不确定。坏消息是模拟ADC不支持参考电压的FVR。Sad:是的,模拟器外围列表显示FVR是存在的,它是。不幸的是,ADC编码在2014和FVR编码在2016。因此,ADC,当创建时,不知道FVR。我会写一张修理票来解决这个问题。(半)好消息是你可以伪造模拟器。格林先生:这是您的设备的相关模拟器代码。注意,模拟器将允许ADCON1。ADPREF值3刚好落入使用Vdd引脚的正Vref。Vdd将默认设置为5V的模拟器。Vdd实际上并没有被模拟器在太多的地方使用(确定数字I/O引脚的Hi/Lo状态)。您可能只需要将引脚Vdd设置为1.024V就行了。如果这不适合您,您也可以暂时将ADPREF值更改为2,然后将引脚VREF设置为1.024V。很抱歉给您带来不便。希望这些工作对你有用吗?
|
|
|
|
非常感谢。让它工作起来会很有用,所以在修订版(也谢谢你)之前我会使用你的代码。这是最好的服务,再次谢谢你。
|
|
|
|
对不起,我想我还不清楚。代码是模拟器中的实际Java代码。Ie,它位于安装MPLAB X时安装的jar文件中。我只是在向您展示模拟器如何处理ADPREF字段。特别是显示模拟器以同样的方式处理AdPRF值0, 1和3。您使用的是AdPRF=3,(使用FVR),但是模拟器将以与AdPrF==1(使用VDD)相同的方式处理。所以我的第一个建议是只使用刺激或IO引脚窗口来设置引脚Vdd=1.024V。有可能将Vdd设置为1.024V会在代码的其他地方造成问题。如果是这样的话,我的第二个建议是,暂时将AdPREF更改为2,(在您的应用程序代码中使用VREF PIN)。然后使用刺激或IOPin窗口将PIN VREF设置为1.024V。
|
|
|
|
哦,我明白了。美丽,干杯。
|
|
|
|
只有小组成员才能发言,加入小组>>
5160 浏览 9 评论
1998 浏览 8 评论
1927 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3170 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2225 浏览 5 评论
727浏览 1评论
612浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
501浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
626浏览 0评论
524浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 01:09 , Processed in 1.242606 second(s), Total 90, Slave 71 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号