【微控制器筆記】STM8S003F3使用內部基準電壓測量供電電壓
使用微控制器測量外部電壓或者供電電源,一般而言都是採用電阻分壓的原理,使用一個ADC引腳採集ADC的資料,然後在根據ADC的解析度和分壓反向計算得到輸入電壓。
讀過STM8S003晶片手冊的都知道,ADC的解析度是10位的,也就是最大值是1024,如下圖
正常的採集電壓需要分壓電路和基準電壓:
採集到的ADC資料跟晶片的供電電壓有關係。
下面介紹下一種簡便的方法:
先說下優點:
1、省點
2、沒有ADC輸入硬體
具體原理:STM8S003晶片內部又多個ADC通道,其中ADC通道7是連線到內部穩壓器的,穩壓器的電壓恆定為1.22V。
下面是我通過變化不同的供電電壓得到的資料:
供電電壓 採集到的ADC資料
3.63V 353
4.10V 309
5.28V 238
通過筆算反推可以知道
1.22/363 * 1024 = 344
1.22/4.1*1024 = 304
1.22/5.28*1024 = 236
其中用萬用表測量不妨會有誤差,基本上還是比較吻合的。初步確定方法可行。
那通過以上方法就可以得到反向計算供電電壓的方法
vcc = 1024 * 1.22 / adc_value
底層程式碼:
//獲取ADC取樣值
u16 ADC_GetValue(u8 ch)
{
//配置ADC
ADC1_Init(ADC1_CONVERSIONMODE_SINGLE,(ADC1_Channel_TypeDef)ch, ADC1_PRESSEL_FCPU_D2,ADC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_ALL,DISABLE);
//開啟轉換
ADC1->CR1 |= ADC1_CR1_ADON;
ADC1_StartConversion();// ADC1->CR1 |= ADC1_CR1_ADON;
//等待轉換結束
while(ADC1_GetFlagStatus(ADC1_FLAG_EOC) == 0);
return ADC1_GetConversionValue();
}
應用程式碼:
u16 adc_value = 0;
float vbat=0;
void test(void){
while(1){
adc_value = ADC_GetValue(7);
vbat = 1024 * 1.22 / adc_value;
Delay_ms(500);
}
}
By Urien 2020年11月18日 18:33:47
相關文章
- 深圳應廣微控制器比較器測供電電源VDD電壓
- Vivado使用技巧(12):設定DCI與內部參考電壓
- 上電時透過 VIN 腳給晶片供電 ,輸入電壓晶片
- PYNQ z2 使用xadcps讀取xadc內部電壓溫度
- 電動勢和電壓
- 家用儀器血壓測量儀電子方案
- 開關電源——壓敏電阻
- 膝上型電腦低壓和標壓的區別 筆記本CPU低壓和標壓哪個好?筆記
- 直流穩壓電源
- USB過壓保護晶片,高輸入電壓充電器(OVP)晶片
- 2020年低壓電工多少錢及低壓電工模擬考試題
- 當鉛筆芯加上直流電壓的時候
- 電壓-電流轉換(一):4-20mA電流環
- 2020年低壓電工考試題及低壓電工考試資料
- 2020年低壓電工新版試題及低壓電工複審考試
- 2020年低壓電工多少分及格及低壓電工考試報名
- 為何大多數MCU微控制器工作電壓為5V?
- 筆記本CPU低壓版和標壓版哪個好? 如何選膝上型電腦CPU筆記
- 分卷壓縮怎麼解壓 快速解壓電腦分卷壓縮檔案方法
- 2023 Omdia低壓電機分析
- 650【畢設課設】基於微控制器大氣壓監測報警系統電路方案設計
- 2020年高壓電工考試題及高壓電工考試題庫
- 2021年低壓電工免費試題及低壓電工考試試卷
- 2021年高壓電工證考試題庫及高壓電工試題解析
- 2020年高壓電工考試及高壓電工複審模擬考試
- 基於優先數系選擇分壓電阻
- Mac電腦好用的壓縮、解壓軟體都有哪些?Mac
- android4.4修改低電壓提醒Android
- 2020年高壓電工考試總結及高壓電工作業考試題庫
- 2020年低壓電工複審考試及低壓電工複審模擬考試
- 2020年低壓電工模擬考試題庫及低壓電工模擬考試系統
- 電腦端壓縮工具哪個好用
- 適合MCU的鋰電升降壓晶片晶片
- 電腦怎麼壓縮檔案 檔案壓縮方法詳解
- 幾款二極體、三極體結電容與反向電壓
- NTC直驅SAR ADC,分壓電阻、穩定電容選擇
- STM32系列程式碼引腳輸出上拉,測得輸出電壓太小,甚至只有0,輸出電壓太小,解決辦法
- 測量幾個光電感測器反向電容