新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 采用加速度傳感器ADXL202的電子羅盤抗干擾設計

        采用加速度傳感器ADXL202的電子羅盤抗干擾設計

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

        3.2 源程序代碼分析

        對應程序流程圖,給出了單片機通過P4.2口對某一輸出通道采樣濾波并完成脈寬計數的源程序。源程序如下:





        源程序中定義了3個變量,其中變量Flag存儲原狀態值;FlagReg存儲當前采樣值;變量i記錄采樣次數;改變i的值可控制濾除尖峰脈沖的等待時間。程序通過對原狀態與當前采樣狀態異或之后的值來判斷當前信號是有效信號還是干擾信號,從而對上升沿、下降沿的中間過度或尖峰脈沖干擾進行相應處理,退出中斷子程序。實現了對正常信號計數、濾掉尖峰脈沖干擾的目的。

        4 測試結果

        由于條件限制以及干擾的隨機性,對基于構成的車載屯子進行的測試,無法對所測量的角度以及方向角進行精確標定。實驗時,通過相同條件下同一物理量多次測量值的標準差來對相應算法進行評估。測試結果如表1所列。



        從實驗測試的標準差可以看出,經過軟件濾波后σ小了很多,這種軟件濾波算法對濾除尖峰脈沖干擾是非常有效的。

        結 語

        本文提出的軟件濾波算法速度快,代碼效率高,濾波效果理想,是一種實用的數字濾波方法,體現了將算法與具體硬件相結合的思想。另一方面,當脈沖干擾較寬時可將存儲器變量適當擴展成多字節變量。這個算法還可以與FPGA結合,用于其他計數精度要求較高、易受尖峰脈沖干擾的應用結合。

        本文引用地址:http://www.104case.com/article/171971.htm
        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 德化县| 齐齐哈尔市| 桐乡市| 凌云县| 博罗县| 军事| 曲麻莱县| 东莞市| 绥棱县| 桐梓县| 浠水县| 吴旗县| 玉林市| 盖州市| 崇左市| 延吉市| 新宁县| 昌都县| 缙云县| 辽宁省| 淮南市| 吉安市| 大连市| 大同县| 新乐市| 渑池县| 台前县| 邵武市| 松滋市| 葫芦岛市| 峡江县| 黄骅市| 聂荣县| 清流县| 慈溪市| 拉孜县| 平顶山市| 肥乡县| 涟水县| 义马市| 海口市|