新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 用PIC MCU測量相對濕度

        用PIC MCU測量相對濕度

        作者: 時間:2012-06-01 來源:網(wǎng)絡 收藏

        如圖所示,用一個具有容性響應的傳感器和一只微控制器()就可以構成一個計。

        本文引用地址:http://www.104case.com/article/171381.htm

        其中Humirel公司提供的HS1101型傳感器的電容取值范圍為162 ~202pF。

        使用一個TLC555 CMOS 定時器作為振蕩器,完成從電容到頻率的轉換,定時器的頻率等式如下:F = 1.44/(RA + 2RB)×CX這里電阻RA和RB分別等于421 kΩ和42.4 kΩ,CX為傳感器電容。接到定時器控制電壓輸入端的1MΩ電阻用來使與傳感器溫度系數(shù)相匹配的定時器內(nèi)部溫度系數(shù)失衡。

        輸入信號周期,并將其轉換為數(shù)字讀數(shù)。這通過內(nèi)部計數(shù)器(TMR1)和捕獲/比較/脈寬調制模塊(CCP)來實現(xiàn)的。

        因為傳感器的電容范圍非常窄,信號的周期范圍也會非常小,因此使用一個8.000MHz的晶振來獲得0.5μs的指令周期。

        34.jpg
        圖。

        另外,CCP模塊被配置成將輸入電壓分為4部分,這樣就可以在由TLC555提供的不同周期中增加計數(shù)脈沖范圍。的CCP模塊可以檢測每4個或16個脈沖的上升或下降沿。

        在這種情況下,CCP模塊是按4個上升沿配置的。此檢測事件存儲在寄存器PIR1的CCP1IF標志位。當檢測到第一個上升沿時此標志位被置位,通過軟件使能TMR1開始計數(shù)。

        隨后該標志位必須被清除,等待檢測第四個上升沿,然后停止定時器?,F(xiàn)在必須將代表一個周期的總計數(shù)從存儲器TMR1L和TMR1H分別轉存到存儲器CCPR1L和CCPR1H。

        利用該數(shù)據(jù),我們進一步從結果周期數(shù)中減去對應于濕度0%的周期數(shù)(在本例中,取十進制數(shù)62(3EH)) 以完成從周期數(shù)到的轉換。對應于濕度0%的周期數(shù)可以由制造商提供的等式和TLC555定時器產(chǎn)生的頻率計算確定。

        16位減法是通過首先對上述數(shù)值進行二進制補運算,然后將結果加到由TMR1得到的數(shù)據(jù)而實現(xiàn)的,這個算術運算的結果即對應于相對濕度。最后由MCU完成從二進制數(shù)到BCD碼的轉換。

        二進制到BCD的轉換使用三個外存儲器:個、十、百位存儲器,相對濕度(濕度百分比)被送到個位存儲器,然后減10,由累加器W保存此運算結果。

        通過測試狀態(tài)寄存器的進位,我們可以知道運算結果是否大于10。如果小于10,則運算結果只有個位,不需要繼續(xù)進行更多的比較運算,這樣轉換就僅限于于個位存儲器。

        如果運算結果大于10,十位存儲器加1,十位存儲器加1時個位存儲器必須進行同樣的減10運算。

        當十位存儲器等于10時,百位存儲器加1。同樣的運算處理一直進行下去,直到個位存儲器的數(shù)小于10。轉換結束時,每個存儲器的結果便是BCD碼,BCD碼到七段數(shù)碼的轉換由子程序OPTABLE完成。

        轉換電路有一個四位多路共陰極LED顯示器,要求采用一個多路轉換程序來正確地顯示讀數(shù)。多路轉換通過以200Hz的頻率切換三個2N2222晶體管,一次激發(fā)一個顯示單元的方式來實現(xiàn)。

        接地電阻相關文章:接地電阻測試方法




        關鍵詞: 相對濕度 測量 MCU PIC

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 新巴尔虎右旗| 平果县| 梅河口市| 青田县| 应用必备| 巴马| 鲁山县| 随州市| 独山县| 晋城| 三门县| 上虞市| 府谷县| 宁阳县| 宣城市| 丁青县| 和林格尔县| 韶关市| 襄汾县| 沅陵县| 昭通市| 西华县| 兴海县| 获嘉县| 万盛区| 固原市| 余江县| 仁化县| 淮南市| 贵州省| 天长市| 丰原市| 手游| 广东省| 榆树市| 萍乡市| 宁夏| 台安县| 安丘市| 肇源县| 凤山市|