新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于MC9S12單片機(jī)的智能車數(shù)據(jù)遠(yuǎn)程傳輸系統(tǒng)

基于MC9S12單片機(jī)的智能車數(shù)據(jù)遠(yuǎn)程傳輸系統(tǒng)

作者: 時(shí)間:2013-10-21 來(lái)源:網(wǎng)絡(luò) 收藏
1.3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)主要是實(shí)現(xiàn)三塊之間的通信,其中有兩塊是采用無(wú)線通信。
對(duì)單片機(jī)和無(wú)線模塊NRF24L01進(jìn)行初始化后,將主機(jī)的數(shù)據(jù)存入24L01的緩存區(qū),準(zhǔn)備對(duì)數(shù)據(jù)進(jìn)行發(fā)送。由于該無(wú)線模塊不能實(shí)現(xiàn)全雙工功能,但主輔機(jī)之間的通信時(shí)間是微秒級(jí),很短。所以主機(jī)與輔機(jī)采用以下方式構(gòu)成交換式“主從”結(jié)構(gòu)。
在同一個(gè)周期內(nèi),前一段時(shí)間將主機(jī)配置為發(fā)送模式,輔機(jī)配置為接受模式。主機(jī)發(fā)送命令給輔機(jī)后由輔機(jī)與智能模型車通信實(shí)現(xiàn)命令的傳達(dá)。在該周期的下一段時(shí)間里,把輔機(jī)配置為發(fā)送模式,主機(jī)配置為接收模式,輔機(jī)將的運(yùn)行數(shù)據(jù)回傳給主機(jī),主機(jī)將收到的數(shù)據(jù)通過(guò)液晶屏顯示,如此循環(huán)。其設(shè)計(jì)流程圖如圖6所示。

f.JPG


2 系統(tǒng)調(diào)試
在程序開(kāi)發(fā)過(guò)程中,使用Metrowerks公司為MC9S12系列單片機(jī)專門提供的開(kāi)發(fā)平臺(tái)Codewarrior。通過(guò)BDM,可以把程序燒入單片機(jī),還可以進(jìn)行在線調(diào)試。CodeWarrior能夠自動(dòng)檢查代碼中的語(yǔ)法錯(cuò)誤,它通過(guò)一個(gè)集成的調(diào)試器和編輯器來(lái)掃描代碼,以找到并減少明顯的錯(cuò)誤,然后編譯、鏈接程序以便計(jì)算機(jī)能夠理解和執(zhí)行程序。Codewarrior中的mc9s12xs128.h文件對(duì)MC9S12XS128單片機(jī)所有寄存器對(duì)應(yīng)的存儲(chǔ)映射地址都進(jìn)行了宏定義,軟件開(kāi)發(fā)時(shí)直接調(diào)用這些宏就可以了。CodeWarrior運(yùn)行界面如圖7所示。

g.JPG



3 結(jié)論
文中設(shè)計(jì)了一個(gè)無(wú)線數(shù)據(jù)系統(tǒng),該系統(tǒng)以Nordic公司生產(chǎn)的2.4 GHz頻段射頻芯片NRF24L01和Freescale單片機(jī)MC9S12為核心,結(jié)合電源、電機(jī)、傳感器等外圍驅(qū)動(dòng)電子電路,在硬件結(jié)構(gòu)上簡(jiǎn)單、體積小、成本低、功耗低,軟件上采用交換式“主從”結(jié)構(gòu),使其數(shù)據(jù)傳輸高、工作方式穩(wěn)定檢測(cè)數(shù)據(jù)可靠直觀。利用該系統(tǒng),對(duì)模型車的運(yùn)動(dòng)狀態(tài)和行駛軌跡進(jìn)行實(shí)時(shí)數(shù)據(jù)采集進(jìn)而對(duì)模型車實(shí)行遠(yuǎn)程控制從而提高模型車的行駛速度和操縱穩(wěn)定性。


上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉