基于多路開關檢測器件MC33993實現開關檢測電路的設計方案


原標題:基于多路開關檢測器件MC33993實現開關檢測電路的設計方案
基于多路開關檢測器件MC33993實現開關檢測電路的設計方案
一、引言
隨著汽車電子技術的飛速發展,汽車內部所用到的開關元件日益復雜而繁多。可靠實時地對這些開關量進行檢測已成為汽車電子硬件設計必須解決的問題。傳統的開關檢測接口電路設計多采用電阻、電容等分立元件與單片機直接相連,這樣往往存在整個開關系統可靠性得不到保證、開關觸點容易發生氧化導致使用壽命縮短等問題。針對上述問題,本文采用飛思卡爾公司生產的多路開關檢測器件MC33993設計了一款車用多路開關檢測接口電路。
二、MC33993器件介紹
MC33993是一款可編程多路開關檢測接口器件,由美國飛思卡爾(Freescale)公司生產。它可檢測多達22路的開關量輸入信號,并將檢測到的開關狀態通過SPI(串行外圍接口)發送給單片機。此外,MC33993還具有22路模擬多路開關功能,用以讀取多路模擬輸入信號,模擬輸入信號經緩沖器由模擬多路開關輸入以供微處理器讀取。除此之外,MC33993還可為傳感器提供電源,作為模擬傳感器的輸入、控制管理系統電源等。
2.1 MC33993的主要特性
與單片機的通信接口:采用3.3V/5V SPI接口協議。
開關輸入:8路可編程輸入SP0~SP7,開關可接電源正極,也可接地;14路接地輸入SG0~SG13,開關只能接地。
自動喚醒功能:開關狀態的變化可將其從睡眠狀態中隨時喚醒。
中斷:開關狀態變化引起中斷。
可編程濕性電流:16mA或20mA,濕性電流可以防止觸點氧化。
工作電壓范圍:5.5V~26V。
開關輸入電壓范圍:-14V~40V。
待機電流:器件主電源VPWR的典型待機電流為100μA,VDD電源的典型待機電流為20μA。
2.2 MC33993的引腳功能
MC33993采用32腳寬體SOIC封裝,各引腳的功能如下:
1腳(GND):接地。
2腳(SI):SPI控制數據輸入,數據來自MCU。
3腳(SCLK):SPI控制時鐘輸入。
4腳(CS):SPI控制片選輸入,片選控制來自MCU。
5~8腳(SP0~SP3):可編程開關輸入。
9~15腳(SG0~SG6):開關接地輸入。
16腳(VPWR):電池電源輸入。
17腳(WAKE):喚醒輸出。
18~24腳(SG13~SG7):可編程開關輸入。
25~28腳(SP4~SP7):開關接地輸入。
29腳(INT):輸入開關狀態變化中斷。
30腳(AMUX):模擬多路開關輸出。
31腳(VDD):3.3V/5V電源。
32腳(SO):數據輸出。
三、主控芯片型號及其在設計中的作用
在設計基于MC33993的多路開關檢測電路時,選擇合適的主控芯片(單片機)至關重要。本文選用的是Microchip公司的PIC18F2480單片機。
3.1 PIC18F2480單片機介紹
PIC18F2480是一款PIC18系列高性能MCU,采用先進的RISC架構,具有增強型內核、32級堆棧和多種內部和外部中斷源。內部帶有CAN控制器,可以方便地實現CAN通訊。其主要特點包括:
高性能RISC CPU:指令周期短,執行速度快。
大容量的程序存儲器:足夠存儲復雜的控制程序。
豐富的外設接口:包括SPI、I2C、USART等,方便與其他器件通信。
多種中斷源:支持外部中斷、定時器中斷等,提高系統的實時性。
低功耗設計:支持休眠模式,降低系統功耗。
3.2 PIC18F2480在設計中的作用
PIC18F2480作為主控芯片,在基于MC33993的多路開關檢測電路設計中起到了核心作用。其主要功能包括:
初始化MC33993:通過SPI接口對MC33993進行初始化設置,設定其工作方式。
讀取開關狀態:當開關被按下或斷開時,MC33993的輸入口狀態發生變化,并產生中斷請求。PIC18F2480識別中斷并通過SPI接口讀取開關狀態的變化,然后執行相應的操作。
控制其他外設:根據讀取到的開關狀態,控制其他外設的工作,如LED指示燈、繼電器等。
四、電路設計
4.1 電路連接
多路開關中,22路按鍵開關分別與MC33993的SP0~SP7和SG0~SG13共22個輸入引腳相連。其中,與SPn相連的開關閉合時接電源正端(通過編程實現),與SGn相連的開關閉合時接地。所有開關閉合時狀態為1,斷開時狀態為0。
PIC18F2480單片機通過SPI通信讀取MC33993的開關狀態量。MC33993的SO、SI、CS、SCLK和INT引腳分別與PIC18F2480的RC4/SDI、RC5/SDO、RC2/CCP1、RC3/SCK和RB1/NT1四個引腳相連。
4.2 工作原理
電路的工作原理如下:
初始化:首先,PIC18F2480通過SPI接口對MC33993進行初始化設置,設定MC33993的工作方式。
開關檢測:當開關被按下或斷開時,MC33993的輸入口狀態發生變化,使之從睡眠模式中被喚醒,并立刻向處理器PIC18F2480發送讀取開關狀態量的中斷請求。
中斷處理:處理器PIC18F2480識別中斷,并通過SPI接口讀取開關狀態的變化,然后執行相應的操作。
4.3 軟件設計
軟件設計包括初始化程序和讀取開關狀態的程序兩部分。
初始化程序:主要完成對MC33993內部幾個相關寄存器的命令字的設置,例如復位寄存器、濕性電流控制寄存器、SPn設置寄存器等。
讀取開關狀態:在中斷服務子程序中實現。當開關狀態變化時,MC33993產生中斷。PIC18F2480進入中斷服務程序,通過SPI接口讀取MC33993的開關狀態。
在軟件設計過程中,MC33993讀寫函數在初始化程序和開關狀態讀取程序中都會被調用,是整個開關檢測軟件設計的關鍵。
五、電路性能分析
基于MC33993的車用多路開關檢測接口電路具有以下優點:
電路簡單:采用MC33993和PIC18F2480兩個主要器件,電路結構簡單,易于實現。
運行良好:實驗證明,該電路工作性能良好,能夠準確檢測開關狀態。
安全可靠:MC33993具有自動喚醒功能和中斷功能,提高了系統的可靠性和安全性。
低功耗:MC33993具有休眠模式,可以降低系統的功耗。
此外,MC33993的可編程濕性電流功能可以防止觸點氧化,延長開關的使用壽命。
六、結論
本文采用飛思卡爾公司生產的多路開關檢測器件MC33993設計了一款車用多路開關檢測接口電路。該電路采用PIC18F2480單片機作為主控芯片,通過SPI接口與MC33993進行通信,實現了對22路開關量的可靠實時檢測。實驗證明,該電路工作性能良好,安全可靠,且降低了系統的功耗,具有較強的應用價值。
在未來的研究中,可以進一步優化電路設計和軟件設計,提高系統的穩定性和可靠性。同時,也可以探索將MC33993應用于其他領域,如工業控制、智能家居等,以拓展其應用范圍。
責任編輯:David
【免責聲明】
1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。
2、本文的引用僅供讀者交流學習使用,不涉及商業目的。
3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。
4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。
拍明芯城擁有對此聲明的最終解釋權。