新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于C8051F020單片機的汽車故障診斷儀的研究

        基于C8051F020單片機的汽車故障診斷儀的研究

        作者: 時間:2009-02-11 來源:網絡 收藏

        串行總線接口電路

        圖 4 串行總線接口電路

          2.5 鍵盤顯示及存儲器電路

          本設計主鍵盤采用4X4鍵盤輸入模塊,其驅動模塊采用的是SK5278,它是福州貝能科技有限公司推出的采用PIC內核的鍵盤控制器。該芯片采用4線串行接口,可與任何種類的接口;它具有按鍵有效指示輸出,可用中斷方式管理鍵盤;其行線X0~X3與列線Y0~Y3可構成4×4鍵盤矩陣;SK5278的16鍵鍵盤控制器內含去抖動處理電路,因而可直接輸出鍵值,并采用串行方式與或微處理器進行接口。系統設計的功能鍵采用中段方式輸入,整個工作流程通過不斷的掃描按鍵的狀態,判斷是否有健按下,當有任意鍵按下時,即產生中段,CPU執行相應的中段子程序,若沒有健按下時,繼續掃描鍵盤的狀態,直到有健按下,用鍵盤中斷處理程序完成一切和用戶之間的的信息交流。

          顯示電路選用的OCMJ5X10是160×80點陣的中文圖文液晶圖形顯示器模塊。該模塊的內部由于含有國標一級簡體字庫,使得漢字的顯示異常方便;同時,該模塊與的硬件接口除數據總線外,僅使用了REQ/BUSY兩根握手信號線,簡化了與單片機的硬件接口電路設計。上述特點對軟件、硬件資源均十分緊張的單片機系統來說是十分重要的。

          由于診斷系統中將涉及大量的代碼,傳感器信息,執行起信息等一些數據信息,需要較大的存儲空間。因此,系統擴展了一片大容量的8Mbit的FLASH存儲器AT45DB081 。

          3、系統的軟件設計

          本系統的軟件采用模塊化的設計方法,整個程序包括主程序、初始化程序、定時器中斷程序、診斷協議程序、串行通訊程序、鍵盤顯示程序、存儲器讀寫程序。所有的程序均采用C語言編寫,可以很方便的調試和下載程序代碼。限于篇幅,本文只給出主程序的流程圖,如圖5所示。系統的主程序主要完成單片機系統的初始化、設置系統時鐘和功能寄存器,調用鍵盤處理程序,完成不同的功能,如根據不同的按鍵轉入相應的服務程序,完成不同的功能。

        系統的軟件設計流程圖

        圖5系統的軟件設計流程圖

          3.1 硬件抗干擾設計

          (1) 系統設計中對電源電路及IC器件周圍配置適當的去耦電容濾波,系統中電源地線、MCU外圍電路地線、信號地線采用單點接地的方法可靠接地,以減少不等位電勢的干擾。

          (2) 硬件濾波,此方法對串模干擾有很好的抑制作用,常用RC 低通濾波器接在一些低頻信號輸入電路中,可大大消弱高頻干擾信號。

          (3) 印刷電路板設計時,數字電路與模擬電路隔離,數字的和模擬的僅在一點相連,有效地防止了數字電路對模信號的影響。

          (4) 為了防止電路模塊間的相互干擾,在電路板的設計中采用金屬機殼有效地屏蔽外界射頻信號的干擾.

          3.2 軟件抗干擾設計

          (1)數字濾波。在軟件設計時,考慮了數字濾波程序的設計,有效地排除了隨機干擾。

          (2)設置冗余指令和軟件陷井。通過應用軟件陷阱法和數據冗余法有效的抑制了由于外部干擾、震動或瞬間引起的系統癱瘓和程序跑飛。

          (3)軟件看門狗。為防止程序運行進入死循環,而不能被軟件陷井捕獲到,在系統軟件設計時,設計了“軟件看門狗”程序,有效地防止了死循環造成的系統癱瘓。

          4、結論

          本文以單片機為核心開發了ECU,該能夠實現參數測量,在線故障診斷和執行器測試等功能,具有結構簡單、成本低、體積小和性能可靠等優點,經實驗證明:該工作穩定,操作方便,抗干擾能力強。從而說明了該診斷儀軟硬件設計比較合理,具有廣闊的應用前景。是維修人員的地得力助手,完全具有生產應用的價值。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新乐市| 怀宁县| 浦江县| 河东区| 克东县| 三原县| 莱州市| 浪卡子县| 化州市| 平乡县| 偏关县| 平阴县| 长丰县| 天门市| 漯河市| 南康市| 新丰县| 鲁甸县| 白河县| 忻城县| 陆河县| 广饶县| 本溪市| 关岭| 湖南省| 合肥市| 西安市| 修水县| 承德市| 嘉鱼县| 海原县| 阳新县| 景谷| 泸溪县| 西藏| 灵石县| 通化市| 凤台县| 五河县| 平邑县| 武鸣县|