不用接的,它是直接拿的是单片机内部的,占用的是15这个通道,如果要检测别的,用另外的通道就可以的 |
综合7楼、9楼的说法就是: 1.单片机VCC及时ADC的参考电压,1.19是内部参考电压。 2.采用一般ADC通道作为测量输入即可,如电源电压(VCC)稳定,可直接读取ADC数值后进行电压转换。 3.如电源电压不稳定,可采用外接基准电压至VCC脚,基准电压应能满足单片机运行需求。 4.选用3中方案,如成本不允许,则可在读取ADC输入脚前先读取15通道的数值,再根据7楼公式计算出VCC(即ADC参考电压),然后再读ADC输入通道数值并用计算的vcc作为参考电压来计算待测电压。 5.如担心所提供的1.19内部参考电压不太准确,可以采用7楼方法反推一下:单片机VCC接精密基准电压源,读15通道数据,然后根据7楼公式反向计算内部基准电压。 6.另外,采用stc-isp片子下载程序时有一个添加重要测试参数的选项,选中这个可以在idata中指定位置存储实测内部参考电压,具体数据位置参考数据手册ADC范例部分或其它相关资料。这个没测试过所提供数据是否为实测数据,如为实测数据,可省却5中所述方法获得精准数据。 |
51hei.jpg (147.23 KB, 下载次数: 19)
abeimao 发表于 2024-6-19 05:06 内部参考电压是内部参考电压,它是看不见的 ADC的参考电压是ADC的参考电压,你图片上型号的参考电压是ADC_VRef+,也就是8脚 如果你用P1.7做ADC引脚,那么,你要测量的电压就要接到P1.7,ADC_VRef+引脚就要接到单片机的VCC,这个是一定要接的 ADC_VRef+是参考电压,如果你有更精确的电压,可以不 用接VCC,比如TL431 如果没有,那就直接接到单片机的VCC 如果电源电压不太稳定,比如是锂电池供电,你又不想外接一个TL431之类的参考源,那就先进行15通道的ADC,计算出VCC的电压,再进行P1.7的ADC才能正确的算出P1.7的准确电压 这就是内部参考电压的用法 像你这种电路,你首先要有一个完整的原理出来,然后才好写程序 |
Y_G_G 发表于 2024-6-18 22:21 哥,那我应该怎么做,假如我用P1.7做ADC输入,我还需要在做一个外部的参考电压接到P1.7吗?那就是用不了,ADC通道15的内部参考电压1.19V了吗? |
abeimao 发表于 2024-6-18 19:11 内部参考电压是稳定的,比如1.19V,但它的数字量可不是固定的,它是以VCC,也就是单片机的供电电压为参考点的,通过读取15通道的数字量,就可以计算出当前的VCC电压是多少了 比如,15通道的数字量是1024,那么,VCC的电压就是1.19/1024*4096=4.76V 15通道的数字量是2048,那么,VCC的电压就是1.19/2048*4096=2.38V 至于其它通道,那就是正常的ADC作用了 |
STC官方论坛官方版主说“第15通道用于反推出 ADC-VRef+ 的电压,如 ADC-VRef+接到哪了,那那个点的电压也是ADC-VRef+ 的电压。”“只能反推 ADC-VRef+”。 STG8G1K08 TSSOP20封装的芯片VRef+没有单独引出,已接到VCC了,所以这款芯片只能反推工作电压,而不能反推ADC0-ADC15的引脚电压。 |
Y_G_G 发表于 2024-6-18 16:29 那我怎么处理,是不是内部只能检测出自己的供电电压,利用ADC通道15不可以检测外部其他电压吗?谢谢 |
前边那些你哪个方便就接那个呗 |
这个貌似 只能测电源电压VCC |
所谓内部就是在内部的,实际上就是内部一个稳定的电压,是没有IO出来的 |