pic单片机的vdd端可以直接检测vdd端电压吗?

来源:百度知道 编辑:UC知道 时间:2024/05/15 06:25:58
pic12f510的VDD可以作为AD直接检测电压电压用吗?我有个项目就要求用pic12f510检测电池的电压,然后通过3个LED来显示电池的电量,我手中有个样品是可以实现的,但我不知怎样编程实现?
我手中的样板的电路接法如下图
_______
接电池VDD -|1 8|-接电池地GND
接LED3 -|2 7|-接LED1
接开关S1 -|3 6|-接LED2
接外部电路 -|4 5|-接外部电路
-------

通过按一下S1,就可以通过3个LED来显示出来,
1.当电池电压很低时,LED1亮。
2.电池电压3V-3.7V时,LED1,LED2同时亮。
3.电池电压高于3.7V时,LED1,LED2,LED3同时亮。

我实验过,它并没有用AD的IO口作电压检测和控制LED,我
将3LED的IO口都与灯断开,改变VDD端的电压,3个IO口还会
按照以上三点功能作出相应的电平输出,这就说明了它只能
通过VDD中的电压变化来作出相应的判断,我详细了数据手册
都没有提到这方面的应用,所以在此提出来和大家交流学习,
我是第一次接触PIC单片机,请网友beibei_china等多多赐教!

问题也太荒唐了,VDD怎么检测电压?
虽然PIC单片机大多有掉电检测,但低于掉电检测电压就复位了,程序什么也做不了。
检测电压都是用单片机自带的AD进行的,否则就外置AD或积分电路实现

可以用VDD来作参考电压用,但是最好分开走线,然后再接到VDD的输入处.还要加电容滤波.如何编程,那要看你怎样用了.有需要我可以提供一个参考程序给你.
这样吧,I/O分时使用可以实现.但是,VDD不能当I/O口来用啊.不用专业的AD,就用电容充放电来检测,但是不准确.I/O不够用,最好是分时使用.这样才能测准确.你可以HI在线交谈。
*************************************
刚看了,12F510有带AD口的,完全可以用LED显示口和AD输入口共用同一I/O口.只时你的程序保证时间在10US左右,是看不到LED有闪的情况.就这样实现.

它利用的是内部RC振荡器取得时钟
RC振荡器在Vdd改变的时候,频率会变
内部计时会改变
等于估算出电量