以下介紹的這個方法是用沒有 ADC 功能的芯片來檢測模擬量,采集溫度:
1. 溫度檢測電路圖 :
1.PNG (24.12 KB, 下載次數: 64)
下載附件
2018-6-30 22:42 上傳
2. 溫度檢測步驟 :
第一步:放電
P85 和 P86 設置為高阻態, P87 輸出“1”,電容放電
第二步:測標準電阻
P85 和 P87 設置為高阻態, P86 輸出“0”,電容充電,并對充電時間計時
計時功能說明:計時最小時基為 30US,用定時器中斷來實現。每 30US 中斷一次,
計時器+1。 計時器長度=16BIT, 高字節的 BIT4 代表溢出位。 所以實際有效長度為 12 位,
超出則判為溢出,可能是被測電阻開路和電容短路等故障引起的。
第三步:放電
P85 和 P86 設置為高阻態, P87 輸出“1”,電容放電
第四步:測溫度電阻
P86 和 P87 設置為高阻態, P85 輸出“0”,電容充電,并對充電時間計時
計時功能說明:(同第二步)
第五步:計算電阻比率
計算公式:
電阻比率=溫度電阻÷標準電阻
=溫度電阻充電時間÷標準電阻充電時間
第六步:查表求溫度
根據電阻比率查表求溫度攝氏值
為了提高查表時的分辨率,在上一步驟計算比率時應該將比率值乘以一定系數(在本
項目中該系數=256*64=16384).在表格中的數據也應該同步乘以該系數
第七步:溫度單位轉換
如果是溫度單位=華氏值,則將攝氏值轉化為華氏值;否則跳過
溫度轉換公式:
華氏值 = 攝氏值×1.8+32
攝氏值 = (華氏值-32)÷1.8
第八步:數字濾波
采用遞推中位平均濾波方法:保留最新 10 個采樣值,去掉一個最大值,去掉一個最小
值,剩余 8 個采樣值取平均數
|