基于nRF905的LED屏無(wú)線(xiàn)通信設計
現行市場(chǎng)上的LED屏,多采用異步串口、TCP/IP接口等有線(xiàn)和GPRS無(wú)線(xiàn)進(jìn)行通信。對于裝修計劃中的LED屏,即使提前布線(xiàn)或預留線(xiàn)纜空間,在線(xiàn)纜損壞或調試LED屏還是有諸多不利條件。技術(shù)成熟的GPRS無(wú)線(xiàn)模塊,價(jià)格昂貴,不適用于大眾場(chǎng)合。針對普遍使用的串口通信控制的LED屏,本文介紹了采用nRF905芯片為核心的硬件電路,論述了無(wú)線(xiàn)通信系統中的功耗估計、速率適配、串口與無(wú)線(xiàn)的通信協(xié)議設計和嵌入式單片機的軟件設計,實(shí)現單片機控制串口的無(wú)線(xiàn)通信。
1 硬件設計
1.1 硬件總體框圖
硬件框圖如圖1和圖2所示。圖1為上位機框圖,電路板上的單片機收到計算機發(fā)來(lái)的控制數據,通過(guò)無(wú)線(xiàn)模塊轉發(fā)。圖2為下位機框圖,單片機將無(wú)線(xiàn)模塊收到的數據,通過(guò)串口發(fā)給LED屏的電路控制板。LED屏回復數據的傳輸方向正好相反。

采用ProtelDXP繪制電路原理圖和雙面PCB板,使用JTAG mk II在A(yíng)VR Studi04下編寫(xiě)基于單片機的嵌入式軟件,采用GCC編譯器進(jìn)行編譯連接。
1.2 電路設計
(1)單片機ATmega16A
采用芯片LM1117將DC 9 V穩壓到DC 3.3 V,對單片機ATmega16A、芯片nRF905、芯片MAX3232進(jìn)行供電。串口通信采用芯片MAX3232進(jìn)行邏輯電平的轉換。系統采用高性能、低功耗的8位AVR微處理器ATmega16A單片機。該單片機具有16 KB的系統內可編程FLASH、512 B的E2PROM和1 KB的SRAM,供嵌入式軟件使用;在線(xiàn)調試的JTAG端口,豐富了系統的調試手段;獨立的定時(shí)器和可編程的串口,加強了系統的功能。單片機ATmega16A上的SPI接口,可保證無(wú)線(xiàn)芯片nRF905的無(wú)縫連接。
(2)無(wú)線(xiàn)芯片nRF905
NORDIC公司的無(wú)線(xiàn)芯片nRF905采用高效的GFSK調制,使用開(kāi)放的ISM頻段,工作速率可達50 Kb/s,收發(fā)模式切換時(shí)間短,功耗低,內置硬件CRC校驗和點(diǎn)對多點(diǎn)的通信地址控制,這些優(yōu)點(diǎn)特別適合工業(yè)控制場(chǎng)合。
1.3 可行性分析
1.3.1 通信速率
nRF905無(wú)線(xiàn)收發(fā)芯片的最高工作速率50 Kb/s。PC機端的控制軟件可以設置串口的工作速率,典型波特率設置為9 600 b/s或115 200 b/s。串口的波特率的每個(gè)字節加上起始位、停止位和奇偶校驗位,經(jīng)計算,串口工作速率小于無(wú)線(xiàn)芯片的工作速率,因此,可以采用無(wú)線(xiàn)芯片nRF905轉發(fā)串口數據進(jìn)行通信。
評論