|
先聲明一下:本檢測方法精度很低,只能用于要求不高的場合。
電路只要一個(gè)電阻和一個(gè)電容,和占用一個(gè)IO口,電路如下:
方法:
1、先將IO口設(shè)為輸出并置成低電平,對(duì)電容C放電;
2、再將IO口設(shè)為輸入,同時(shí)啟動(dòng)MCU內(nèi)部的計(jì)數(shù)器;
3、電池電壓Vbat將通過電阻R對(duì)C充電,同時(shí)MCU檢測IO口的狀態(tài);
4、當(dāng)檢測到IO口為高時(shí),停止計(jì)數(shù);
5、將IO口重新設(shè)為輸出0;
6、此時(shí)計(jì)數(shù)值與Vbat的值相對(duì)應(yīng)。
Vbat的計(jì)算方法:可以通過查表加插值方法計(jì)算出電壓值,表的制作方法是:用一組已知的電壓測出對(duì)應(yīng)的計(jì)數(shù)值,寫入到程序里。
如果要提高檢測的精度,可以單獨(dú)對(duì)每個(gè)產(chǎn)品獨(dú)立調(diào)校,將得到的表格數(shù)據(jù)寫入到EEPROM內(nèi)。
本方案可以用于無AD的MCU,又需要電池電壓檢測的低成本的應(yīng)用中。
|
|