新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 基于EFM32TG840F16 MCU的室內甲醛檢測儀設計

        基于EFM32TG840F16 MCU的室內甲醛檢測儀設計

        作者: 時間:2012-04-24 來源:網絡 收藏

        圖 2:主程序結構框圖
        圖 2:主程序結構框圖

        系統上電后,進行初始化和中斷處理操作,主要完成系統自檢和復位。初始化完成后,開始采樣濃度值,并判斷是否有按鍵按下。如果有按鍵按下,則進行相應數據處理,并執行功能指令,然后在液晶顯示屏上顯示相應信息。如果沒有按鍵按下,則顯示當前實測濃度值,等待用戶進行下一步操作,系統轉入定時計時階段。

        2.2 低功耗中斷子程序

        為減小系統功耗,延長電池的使用時間,設計時考慮設備在較長時間段內處于待機狀態時,應盡量降低功耗。系統設計低功耗中斷子程序(見圖3)

        圖3:低功耗中斷子程序結構框圖
        圖3:低功耗中斷子程序結構框圖

        這里采用一個定時器。當定時器大于0 時,系統處于開機狀態;當定時器倒數到0 時,系統自動進入低功耗模式,并關閉LCD 模塊和A/D 模塊。其中定時器是通過軟件對控制寄存器進行設置實現的。具體操作是這樣:開機時,對定時器初始化一個大于0 的值,比如60,并且在每按一次有效鍵時,系統重新初始化這個值。因此,當沒有按任何有效鍵時,60s 后就會自動進入休眠狀態,從而實現降耗目的。在休眠期間,若有按鍵按下,微處理器響應中斷,系統退出休眠狀態,返回到正常工作狀態。

        2.3 采樣數據處理子程序

        為提高檢測精度,采樣數據處理軟件設計是關鍵。系統采用采樣數據排隊與中值濾波法。數據排隊就是在給定的數據暫存區內不斷地用最新數據取代最早數據的過程;利用軟件進行數據排隊具有通用性和靈活性。原理(見圖4)。

        圖4:采樣數據更新排隊的雙倍暫存區擴展法
        圖4:采樣數據更新排隊的雙倍暫存區擴展法

        由圖4 可見, 將暫存區的空間擴大為需要保存數據空間的2 倍, 并將暫存區等分為前后相連的2 個區, 每個區的長度與需保存數據長度相等。當前采樣得到的一組新數據同時存入2 個區的對應位置,這樣2 組相同采樣數據之間剛好間隔1 個區的長度, 間隔內的全部數據連同最后1 個最新數據即為當前排隊結果。以后每組新采樣數據依次向后存入暫存區, 存滿后再從頭開始。每次采樣周期中完成相應的排隊更新任務后記下當前隊列的首(或末)地址作為指針并保存,供處理程序取數時使用,這樣一來就滿足實時排序的要求。

        對排隊后的數據采取中位值濾波算法。算法的具體實現過程:取N 個連續采樣數據,并按照遞增或遞減順序排列,取中間值作為本次采樣值。中位值濾波算法能有效地克服因偶然因素引起的干擾或波動而產生的誤差。即提高系統的檢測精度。

        3 結束語

        本甲醛檢測儀采用32TGF16 單片機作為核心控制單元,電路結構簡單、外設功能模塊豐富,功耗低,待機時間長,支持IAP 功能,軟件升級方便,另外該MCU 性能強勁,可升級空間極大。

        網線測試儀相關文章:網線測試儀原理

        上一頁 1 2 下一頁

        關鍵詞: 840F EFM 840 F16

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 木里| 潜江市| 正定县| 鹤岗市| 平江县| 平阴县| 岳西县| 黄石市| 虞城县| 海兴县| 田林县| 孝昌县| 泰兴市| 集贤县| 镇坪县| 邓州市| 昔阳县| 咸宁市| 琼中| 德兴市| 定兴县| 红安县| 德保县| 清原| 奉贤区| 浪卡子县| 喜德县| 富川| 育儿| 化德县| 乌拉特后旗| 绥阳县| 西乌| 清涧县| 宝鸡市| 新野县| 铁岭市| 新闻| 临沧市| 靖西县| 兰溪市|