使用IO口檢測電源電壓的轉換邏輯

使用IO口檢測電源電壓主要是用於大功耗產品,電池電壓會隨着功耗的增大而變化,這個時候就要使用IO口來檢測電壓的變化。

我們能夠得到的是芯片IO口檢測到電壓的數字值,需要將其轉換爲實際的電壓值方法如下:
V爲IO口檢測到的實際電壓(模擬值),vbat 爲IO口電壓換算之後的值,3.3是設置芯片IO口輸入或者的最大電壓值(實際可能會有偏差),255是軟件儲存電壓變量的最大值,能夠得到一個算式:3.3/255=V/Vbat,轉換之後:V = ( 3.3 * Vbat ) / 255。V爲一個模擬值,並不是我們計算需要的元素,所以需要將其消除,因此需要另外一個算式。
另外一個算式需要根據硬件計算,硬件連接如下:
在這裏插入圖片描述
Vdd爲電池電壓,V爲IO口檢測的電壓,R1和R2爲硬件所接的電阻,換算方法:VDD / V = ( R1 + R2 ) / R2,變形之後得到:V = ( R2 * Vdd ) / ( R1 + R2 )。

上面兩個算式左邊的意義相同,所以能夠將無用的元素V去掉,右邊相等,得到:( 3.3 * Vbat ) / 255 =( R2 * Vdd ) / ( R1 + R2 ) ,變形之後得到:Vdd = ( 3.3 * ( R1 + R2 ) * Vbat ) / ( 255 * R2 ),這樣我們就將軟件和硬件結合起來了,也可以根據需要修改電阻大小,還不清楚的小夥伴可以添加我的個人微信 lqy—1997 (中間是三個英文的槓)進行交流。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章