基于CAN總線的嵌入式車燈監(jiān)控系統(tǒng)設計
2.2 CAN通訊模塊設計
CAN通訊接口可實現(xiàn)各個節(jié)點與上位機之間的通訊,從而完成數(shù)據(jù)的共享和命令的收發(fā)[1]。LM3S2965有兩個兼容CAN2.0A/B的CAN控制器,可以實現(xiàn)數(shù)據(jù)鏈路層的功能,為實現(xiàn)物理層,這里只需要增加一個CAN收發(fā)器。Philips公司的TJA1040是一款通用的高速CAN收發(fā)器,它可將CAN控制器的邏輯電平與CAN總線上的差分電平進行相互的轉(zhuǎn)化,同時具有優(yōu)秀的EMC性能,可靠性高。本節(jié)點中,CAN接口電路如圖3所示,微處理器內(nèi)置的兩個CAN控制器分別與TJA1040連接,一路與CAN總線相連,完成與上位機的通訊;另一路與車燈相連,完成與車燈之間的通訊,實現(xiàn)對車燈的控制。本文引用地址:http://m.butianyuan.cn/article/148494.htm
2.3 電源模塊設計
電源模塊可對供電電源進行凈化處理,濾除高次諧波,避免供電電源對主控單元形成干擾。嵌入式系統(tǒng)的性能在很大程度上取決于電源電路的穩(wěn)定性和可靠性,因此設計穩(wěn)定可靠的電源模塊非常重要。本節(jié)點中,LM3S2965的電源輸入分為模擬輸入和數(shù)字輸入兩種,電壓為+3.3 V;CAN收發(fā)器TJA1040采用+5 V的供電電壓。首先采用穩(wěn)壓器將外部直流輸入電壓穩(wěn)壓成5 V供給CAN收發(fā)器工作,然后用LT1086CM-3.3將5 V電壓轉(zhuǎn)換成+3.3 V供給微處理器工作。由于模擬電源和數(shù)字電源本身的性質(zhì)差異,為保證這兩種電源不會相互影響,這里在模擬電源和數(shù)字電源間用電感進行隔離。
3 系統(tǒng)軟件設計
系統(tǒng)的軟件部分由上位機軟件和下位機軟件組成。上位機完成對系統(tǒng)功能參數(shù)的設置以及顯示各車燈的電壓電流;下位機軟件主要完成基于iCAN協(xié)議的總線通訊,實時傳遞車燈的工作情況。
3.1 下位機軟件設計
下位機軟件設計流程圖如圖3所示,包括操作系統(tǒng)μCOS-II、節(jié)點初始化、外設驅(qū)動程序以及應用程序。
操作系統(tǒng)μCOS-II是系統(tǒng)運行的核心部分,完成任務的調(diào)度、時間管理和資源管理,在操作系統(tǒng)源碼中通過對OS_CPU_C.C、OS_CPU_ A.ASM和OS_CPU.H 3個文件中與微處理器相關(guān)的數(shù)據(jù)類型和處理函數(shù)進行修改和重新編寫后,便可將μCOS-II植入LM3S2965。初始化代碼完成對MCU外設、μCOS-II操作系統(tǒng)以及CAN節(jié)點的初始化。應用程序在操作系統(tǒng)的基礎上,分配任務堆棧空間,然后建立任務間通訊的信號量以及消息郵箱等,進而創(chuàng)建任務,并分配不同的優(yōu)先級,此系統(tǒng)的任務劃分如表1所示。
評論