一個(gè)典型的嵌入式系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)
四、軟硬件的聯(lián)調(diào)和集成
下面,以一個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明mvb系統(tǒng)的軟硬件的集成和驗(yàn)證。
過(guò)程數(shù)據(jù)在mvb系統(tǒng)中是周期性發(fā)送的數(shù)據(jù),其在本系統(tǒng)中的通訊機(jī)制如下:對(duì)于發(fā)送方,用戶應(yīng)用模塊將一個(gè)端口的過(guò)程變量發(fā)送給過(guò)程數(shù)據(jù)處理模塊,過(guò)程數(shù)據(jù)處理模塊按照邏輯端口的設(shè)置定時(shí)通過(guò)鏈路層接口模塊更新traffic memory當(dāng)中的相應(yīng)邏輯端口的數(shù)據(jù),此時(shí)發(fā)送方軟件的任務(wù)完成。發(fā)送方的mvbc硬件接收總線管理器ba定時(shí)發(fā)出的主幀,通過(guò)譯碼器解碼得到相應(yīng)的邏輯端口的值,通過(guò)查詢traffic memory相關(guān)的邏輯端口發(fā)送設(shè)置后將mvbc自動(dòng)設(shè)置為發(fā)送狀態(tài),將邏輯端口的數(shù)據(jù)作為過(guò)程數(shù)據(jù)從幀通過(guò)編碼器發(fā)出,如圖7所示:
圖7:過(guò)程數(shù)據(jù)通訊示例。
對(duì)于接收方,其接收過(guò)程與發(fā)送方相逆,接收方的mvbc硬件接收總線管理器ba定時(shí)發(fā)出的主幀,通過(guò)譯碼器解碼得到相應(yīng)的邏輯端口的值,通過(guò)查詢traffic memory相關(guān)的邏輯端口接收設(shè)置后將mvbc自動(dòng)設(shè)置為接收狀態(tài)將,在收到發(fā)送方發(fā)出的從幀后更新相應(yīng)邏輯端口在traffic memory的數(shù)據(jù)并發(fā)出中斷信號(hào)從而完成硬件的接收過(guò)程。接收方的軟件可以用中斷或定時(shí)查詢的方式通過(guò)過(guò)程數(shù)據(jù)處理模塊得到更新后的邏輯端口的過(guò)程數(shù)據(jù)
五、系統(tǒng)的測(cè)試
在本系統(tǒng)中,系統(tǒng)的測(cè)試即包括了軟件的測(cè)試,也包括了硬件,fgpa的測(cè)試,在本文中不再贅述。
結(jié)束語(yǔ)
上述的mvb系統(tǒng)現(xiàn)已運(yùn)行在列車控制系統(tǒng)中,成功實(shí)現(xiàn)對(duì)列車的運(yùn)行控制、機(jī)車控制、車輛控制、狀態(tài)監(jiān)測(cè)、故障診斷。當(dāng)然,如有需要,本文中的mvb系統(tǒng)可以轉(zhuǎn)化成為asic設(shè)計(jì),從而成為一個(gè)soc的嵌入式系統(tǒng)。
參考文獻(xiàn):
[1].RS485datasheethttp://www.dzsc.com/datasheet/RS485_585289.html.
[2].ARM7TDMIdatasheethttp://www.dzsc.com/datasheet/ARM7TDMI_139812.html.
[3].AT91M40800datasheethttp://www.dzsc.com/datasheet/AT91M40800_143876.html.
[4].RISCdatasheethttp://www.dzsc.com/datasheet/RISC_1189725.html.
[5]. International Standard IEC-61371-1
[6]. AT91M40800 datasheet
評(píng)論