基于XC164CM的車燈控制系統的設計與實現
2.3 CAN控制模塊
XC164CM單片機集成了TwinCAN模塊,實現CAN總線通信功能。其主要特性為:1)包括兩個全CAN功能節點,每一個CAN節點通過一對接收和發送引腳連接到總線收發器,可獨立工作或者通過網關功能交換數據幀和遠程幀。2)CAN幀的發送和接收遵循CAN V2.0B(active)規范,且每個CAN節點都能接收和發送帶11個標識符的標準幀和帶29位標識符的擴展幀。3)具有靈活和功能強大的報文傳送控制和錯誤處理能力,CAN總線通信處理更加精確和方便。4)2個CAN節點的位定時源于外設時鐘,可以通過編程使數據速率達到1 Mbps。5)具有8個單獨的可編程中斷節點和適用于發送和接收的FIFO。
系統通過XC164CM單片機CAN總線接口與采用SJA1000控制器和82C250收發器的單片機開發板連接測試CAN通信模塊,實現人機交互功能。電路圖如圖2所示。
2.4 LED驅動器
驅動模塊參照西工大LED驅動電源標準,信號燈選用了3~15 W功率范圍的LM3406型驅動器,照明燈選用了20~45 W功率范圍的LM3409型驅動器。
LM3406型驅動器是具備寬輸入電壓范圍,低參考電壓和雙導線調光功能的降壓穩壓器,可提供高達1.5 A的正向電流,是LED的理想恒流供應源。這款芯片內置有可確保電流平均輸出的積分電路。在轉換器采用連續導電模式((CCM)操作時,受控導通時間結構可以確保無論輸入及輸出電壓的變動如何,開關頻率都會恒定不變。因此LM3406的輸出電流極為準確,瞬態響應也極快,可以在不同的情況下確保開關頻率恒定不變。
LM3409是一款降壓穩流的P溝道MOSFET控制器,提供寬輸人電壓范圍,具有高邊電流檢測功能,采用增強散熱的eMSOP-10封裝。因此,LM3409是驅動LED的理想恒流源,輸出的正向電流可高達5 A。另外,LM3409采用恒定關斷時間(COT)控制功能調整電流,確保輸出電流大小恒定,而且無需通過外置元件提供環路補償,可以輕易實現模擬及PWM調光功能,可充分發揮亮度變化高度線性以及高對比度的優點,并提供可編程欠壓鎖定、低功耗關斷及熱關斷等功能。
信號燈和照明燈驅動器結構分別采用NI公司的LM3406和LM3409作為主控芯片的BUCK電路,芯片工作的溫度范圍為-40+125℃。其電路原理如圖3所示。
3 軟件設計
程序主要采用中斷控制方式,系統流程主要包括主函數,定時器中斷子程序,CAN接收中斷子程序3部分。具體系統流程圖如圖4所示。
3.1 主函數部分
1)初始化部分:設置各端口的輸入輸出狀態,對各個模塊進行初始化并開啟定時器。
2)開關掃描:選用6路開關控制10路燈的開啟和關閉。當開關閉合時輸出低電平,此時對應LED燈的開啟狀態;開關斷開時輸出高電平,對應LED燈的關閉狀態。
3)狀態數字量生成:狀態數字量為16位數據,狀態位(高八位)表示驅動器狀態,標志位(低八位)表示驅動器編號。車燈的初始亮度設為6級。
4)使能全局中斷,等待定時器中斷信號和CAN總線通信中斷信號,并在接收到中斷信號后進入相應的中斷服務程序。
3.2 定時器中斷子程序
定時器每20 ms產生一次定時中斷信號,進入定時器中斷服務程序。在定時器中斷服務程序中實現的操作有:
1)開啟AD轉換,等待AD轉換完成,并將對AD采樣結果做歸一化處理。
2)環境亮度檢測:為避免亮度信息的誤判斷,只有當位于車身前向、側面和頂部3個方向的光敏電阻器同時檢測到亮度值變化時(且同時超過判斷門限),才認為檢測結果有效,判斷所處環境亮度等級,并將結果送至車燈亮度調整程序。若3個光敏電阻未同時檢測到亮度值變化,則認為只是外界干擾造成的亮度差異,而行車環境的亮度未發生變化。
3)在檢測環境亮度的同時,對10路LED燈的開關量也進行檢測和更新。
4)車燈亮度調整:將檢測到的外界環境亮度和前一次檢測到的環
評論