基于nRF905模塊和C8051F單片機(jī)的無線收發(fā)系統(tǒng)設(shè)計
圖4 發(fā)射數(shù)據(jù)流程
nRF905的數(shù)據(jù)接收過程
當(dāng)系統(tǒng)接收數(shù)據(jù)時,其接收數(shù)據(jù)流程圖如圖5所示。系統(tǒng)的工作過程如下:
首先,在650μs以后,nRF905將不斷監(jiān)測空中的信息。當(dāng)nRF905發(fā)現(xiàn)有和接收頻率相同的載波時,其載波檢測 (CD) 被置為高電平;此后,當(dāng)nRF905接收到有效地址時,地址匹配 (AM) 被置為高電平;當(dāng)nRF905接收到有效的地址包 (CRC校驗正確) 時,nRF905將去掉前導(dǎo)碼、地址和CRC位,同時將數(shù)據(jù)準(zhǔn)備就緒位 (DR)置為高電平,并用MCU設(shè)置TRX- CN為低電平,以進(jìn)入standby模式,從而使MCU能夠以合適的速率通過SPI接口讀出有效的數(shù)據(jù);當(dāng)所有的數(shù)據(jù)讀出,nRF905將AM和DR設(shè)置為低電平,以便使nRF905準(zhǔn)備進(jìn)入ShockBurst RX、ShockBurst TX或Powerdown模式。
圖5 接收數(shù)據(jù)流程圖
用戶界面的設(shè)計
本軟件采用VB界面設(shè)計。將井下接收到并采集后的數(shù)據(jù)通過單片機(jī)顯示在PC機(jī)上,可以清楚地看到井下的相關(guān)數(shù)據(jù)信息。如圖6所示,是一組井下信息采集后通過無線傳輸?shù)姆绞?,將傳感器輸出的?shù)據(jù)傳輸?shù)組WD上。
圖6中通道1至通道15分別實(shí)測井參數(shù)量化臺階數(shù)轉(zhuǎn)換過后的模擬電壓值,其中包括壓力、溫度、濕度、三軸重力加速度傳感器輸出值(Gx、Gy、Gz)以及翼肋位移等等。在實(shí)際應(yīng)用中可較為直觀地顯示出來。
圖6 用戶交互界面
結(jié)論
系統(tǒng)調(diào)試成功后,進(jìn)行了多次數(shù)據(jù)傳輸實(shí)驗。本系統(tǒng)通過了實(shí)際數(shù)據(jù)通信實(shí)驗的驗證,運(yùn)行穩(wěn)定,通信可靠,能夠?qū)崿F(xiàn)100米左右的無線通信。從實(shí)驗數(shù)據(jù)可知,無線信號在井下傳輸環(huán)境下的損耗遠(yuǎn)大于室外環(huán)境,在同等條件下,誤碼率主要與距離延伸有關(guān)。本系統(tǒng)還可以應(yīng)用于點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)通信的一些實(shí)際工作環(huán)境中。
評論