基于XC164的六通道ABS開發(fā)板設計
ABS的匹配是一個非常復雜的過程,需要做大量的實車試驗。由于試驗存在著很大的危險性,所以在進行實車試驗之前一定要先對控制軟件做一定程度的驗證,如輪速、輪加減速度、滑移率計算的準確性,以及電磁閥、報警燈、電機的正確運轉等。車載的ABS電子控制單元不具備信號發(fā)生和數(shù)據(jù)顯示的功能,而開發(fā)板彌補了這一缺陷。
總體結構介紹
開發(fā)板基本上具有六通道ABS電子控制單元的所有模塊,包括單片機、電磁閥驅(qū)動、電機驅(qū)動、電源模塊、輪速處理等,另外還有輪速發(fā)生模塊和顯示模塊等。液晶屏下方的電路板(簡稱電路板1)用來產(chǎn)生方波信號,發(fā)送到主控芯片XC164CS的高速輸入捕捉口(CAPCOM),加速、減速、制動按鈕用來控制方波信號的頻率,可模擬車輛的加速、減速和制動過程。主控芯片經(jīng)過計算后,又通過串口將計算結果,如輪速、輪加減速度、滑移率等發(fā)送給電路板1,再驅(qū)動液晶屏顯示數(shù)據(jù)。同時主控芯片根據(jù)不同的計算結果驅(qū)動報警燈、電機、繼電器和閥等外圍設備,以此模擬ABS的工作過程。
開發(fā)板的芯片大部分采用Infineon公司生產(chǎn)的專用芯片,它們被國內(nèi)外的ABS生產(chǎn)商廣泛采用。主要功能模塊及使用的芯片如表1所示:
表1 功能模塊及使用芯片
下面對主控芯片XC164CS和監(jiān)控芯片C505CA作較為詳細的介紹。
主控芯片XC164CS
XC164CS是Infineon公司近年推出的16位高檔單片機。該單片機有如下優(yōu)點:
運算速度快:能達到40MHz的CPU頻率。
存儲器容量大:
-2kB雙口RAM用于變量,寄存器池和系統(tǒng)堆棧;
-附加的2kB高速數(shù)據(jù)SRAM用于變量和用戶堆棧;
-2kB高速SRAM用于代碼和數(shù)據(jù);
-128k的flash支持在線編程。
中斷源多:接收70種中斷,分為16個中斷優(yōu)先級(ILVL),每個中斷優(yōu)先級中分為4個組優(yōu)先級(GLVL),數(shù)字越高,優(yōu)先級越高。
具有在片調(diào)試接口OCDS,OCDS接口標準測試協(xié)議(與IEEE1149.1兼容),主要用于芯片內(nèi)部測試?,F(xiàn)在的多數(shù)的高級器件都支持JTAG協(xié)議,如DSP、FPGA器件等。標準的JTAG接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。OCDS接口擴充了JTAG接口。
TMS 模式選擇
OCDS接口大大方便了軟件調(diào)試工作,這在下面部分將詳細描述。
另外該芯片還具備外圍IO口多、時鐘多、AD轉換口多等優(yōu)點,并且具有兩個CAN接口。
XC164CS開發(fā)方法
XC164CS可以通過三種方式跟上位機連接進行在片仿真:串口方式(即bootloader模式)、并口方式(LPT)和USB口方式(即OCDS)。其中并口方式要求上位機的主頻小于800MHz,給應用帶來不便。串口方式,速度較慢。需要占用一個串口,而且調(diào)試過程中經(jīng)常出現(xiàn)連接丟失的情況,因此也不予采用。OCDS接口是XC164CS專門提供的調(diào)試接口,也是其不同于Infineon其它164系列單片機的主要特征之一,因此在開發(fā)板研制過程中采用OCDS的調(diào)試方式。
軟件采用的編譯器是Keil uVision2 (PK166,摘編者注),該編譯器調(diào)試功能強大,不僅能夠進行純軟件仿真,而且上位機能夠通過并口或者USB口跟用戶板進行連接,實現(xiàn)在片調(diào)試。連接關系如圖3所示。
其中的ULINK是一種USB接口到OCDS接口的適配器,它具有如下特性:
通過USB口實現(xiàn)上位機和用戶板的快速連接;
通過在片調(diào)試接口OCDS實現(xiàn)在片調(diào)試功能;
通過OCDS實現(xiàn)片上flash的燒寫功能。
監(jiān)控芯片C505CA
監(jiān)控芯片跟主控芯片進行實時通信,從而保證主控的正確運行,監(jiān)控芯片還行使故障診斷的職能。
C505CA是Infineon公司的一款8位單片機,它基于8051內(nèi)核,優(yōu)點在于:
有較高的運算速度,能達到20MHz的工作頻率;
具有片上CAN接口,方便跟主控芯片通信;
支持在片仿真;
采用貼片封裝。
開發(fā)板工作過程
開發(fā)板上電后,液晶屏顯示一些說明信息,同時開始模擬ABS在實際車輛中的上電自檢:報警燈亮快閃幾秒,然后模擬電機和12個電 磁閥的LED依次點亮,最后,所有的LED閃一次。
自檢之后,液晶屏開始顯示XC164CS傳送的輪速計算值,輪速脈沖是由電路板1產(chǎn)生的;如果當前輪速較低,則模擬電機和12個電磁閥的LED會循環(huán)點亮,表示ABS系統(tǒng)在較低車速下,不會進行防抱制動,只進行常規(guī)的在線檢查;如果當前輪速較高,則除報警燈外的所有LED會同時閃爍,表明ABS系統(tǒng)在該速度下會起作用。
對于輪速的改變,需要用到開發(fā)板上的3個按鍵,按住UP鍵不動,則輪速升高,按住DOWN鍵不動,則輪速降低,按一下STOP鍵,則當前輪速會迅速減至0。
開發(fā)板在ABS開發(fā)過程中的應用
由于以前使用Intel公司196系列單片機作為主控芯片,現(xiàn)改用XC164CS,將代碼從196移植到XC164CS是一個非常煩雜的工作,鑒于實車試驗的危險性,在進行實車試驗以前必須對代碼進行嚴格的驗證,開發(fā)板很好的起到了這個作用。
首先,開發(fā)板能觀察輪速、輪加減速度等控制量,通過改變脈沖發(fā)生的頻率,觀察液晶屏的顯示即可知道計算結果的對錯,非常直觀。
其次,可以驗證主控芯片和監(jiān)控芯片對報警燈、繼電器、電機、電磁閥等外部設備的操作。
第三,通過閥旁邊的開關,可以模擬閥的通斷,實現(xiàn)故障診斷的功能。
第四,通過主控芯片與監(jiān)控芯片的CAN通信驗證主控芯片和監(jiān)控芯片代碼的正確性。
另外,通過開發(fā)板還可以驗證ABS的進退出條件等。
開發(fā)板和實際AB系統(tǒng)的區(qū)別
開發(fā)板僅用于ABS系統(tǒng)功能和單片機功能的驗證,無法做到很全面,有些功能尚不能演示,比如:
XC164CS和C505CA提供了強大的CAN接口,同時在設計過程中,又在板子上擴展了K-line/LIN總線接口,但是其在汽車網(wǎng)絡中的實時數(shù)據(jù)傳輸,無法演示。
完善的診斷功能也不能完成,因為用來演示電機和電磁閥的LED同實際使用的電機和電磁閥比較起來,需要的驅(qū)動電流很小,而在ABS中使用的Infineon TLE6228驅(qū)動芯片會把這種情況樣認為是故障。
結語
六通道ABS的開發(fā)板驗證了ABS軟件代碼的正確性。該開發(fā)板自成體系,具有輪速發(fā)生、數(shù)據(jù)顯示、故障診斷、外圍電路驅(qū)動和實時通信功能。另外,主控芯片XC164CS采用了先進的在片調(diào)試接口(OCDS),大大提高了開發(fā)效率。
評論