基于nRF2401的工程機械儀表顯示無(wú)線(xiàn)通信平臺的設計與實(shí)現
2401具備4種工作模式,由PWR_UP、CE和CS 3個(gè)引腳信號決定,表1給出了工作模式與引腳信號的對應關(guān)系。
2401上電工作時(shí),首先置為配置模式,由初始化程序寫(xiě)入配置字,配置字的最后1位指定2401收發(fā)狀態(tài);然后由控制器輸出信號將CE引腳置為高電平,2401進(jìn)入收發(fā)模式工作,通過(guò)指定通道收發(fā)數據,收發(fā)雙方交互時(shí)一方可進(jìn)入空閑模式,待全部數據傳送完畢時(shí)進(jìn)入關(guān)機模式。
2.2 通信系統硬件邏輯電路
圖2為系統的控制芯片MSP430F149與無(wú)線(xiàn)模塊nRF2401的硬件邏輯電路。由于MSP430F149只有P1和P2口具有中斷控制功能,故將F149的P2口P2.0~P2.7分別接2401的CE、DR2、CLK2、DOUT2、CS、DR1、CLK1和DATA引腳,P5.7接PWR_UP。
2401的工作電壓為3 V,由圖2可知2401應用電路只需少量的外圍元件。在設計過(guò)程中,天線(xiàn)可以選用PCB內置,也可以使用單鞭天線(xiàn)和環(huán)形天線(xiàn)。本系統使用外置天線(xiàn),SMA接頭。傳輸距離在100 m左右,可滿(mǎn)足大型工程機械儀表通信距離要求。
系統外圍電路部分設計較簡(jiǎn)單,MSP430F149的P6口為指定A/D口,現場(chǎng)采集的儀表傳感器信號經(jīng)整形放大輸入F149的P6端口進(jìn)行A/D轉換;P3、P4、P5口為普通I/O口,因此要合理利用I/O口;F149的P4和P5端口接液晶顯示器YJD12864,控制LCD實(shí)時(shí)顯示;P1端口接鍵盤(pán),2401的收發(fā)狀態(tài)由按鍵中斷設定。
3 系統軟件設計
系統軟件是在IAR Embedded Workbench平臺上開(kāi)發(fā)的C代碼程序,采用模塊化結構。發(fā)射機程序包括數據采集、無(wú)線(xiàn)數據發(fā)送、實(shí)時(shí)顯示以及與PC機通信等模塊;接收機程序包括無(wú)線(xiàn)數據接收、地址和CRC校驗、儀表參數實(shí)時(shí)顯示以及與PC機通信等模塊。此外,發(fā)射機和接收機軟件留有收發(fā)命令接口,以備系統擴展工程操作遙控功能。本文主要討論無(wú)線(xiàn)數據傳輸模塊。
無(wú)線(xiàn)通信模塊主要完成nRF2401初始化和無(wú)線(xiàn)數據收發(fā)功能。
2401初始化主要是寫(xiě)入配置字,由CS片選引腳控制, CLK1引腳提供串行時(shí)鐘,通過(guò)DATA數據位引腳串行寫(xiě)入配置字。2401工作在ShockBurstTM方式下,配置字包括數據寬度、地址寬度、地址、CRC校驗碼和解碼四部分。
2401數據包通信協(xié)議格式由PRE-AMBLE+ADDRESS+PAYLOAD+CRC項組成。其中:PRE-AMBLE為8 bit前導碼,由硬件自動(dòng)加入;ADDRESS為32 bit發(fā)送地址碼;PAYLOAD為208 bit的發(fā)送數據;CRC是由內置糾檢錯硬件電路自動(dòng)加上的校驗和,可設為0、8或16 bit。除去前導碼,本系統設置數據包長(cháng)度為256 bit(32 B),其中:數據寬度208 bit、地址寬度32 bit、CRC碼16 bit。
評論