吴忠躺衫网络科技有限公司

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子百科>無線通信>

基于nRF24L01和PIC16F877的無線數據傳輸系統設計

2017年12月15日 15:29 網絡整理 作者: 用戶評論(0

  在工業控制現場, 常常需要采集大量的現場數據, 如溫度、濕度、氣壓等, 并將這些數據傳輸到主機進行處理,由主機根據處理的結果, 將控制信號傳輸給現場執行模塊進行各種操作。可以看出數據從采集設備到處理終端,監測控制指令從處理終端到采集設備,均需經過傳輸過程這一重要環節。當數據采集點處于運動狀態,或者所處的環境不允許鋪設電纜,采集設備必須與終端設備分離,此時只能通過無線方式進行數據傳輸。基于此,本文設計了一個無線數據傳輸系統,它應用Microchip公司PIC16F877單片機控制Nordic公司的無線數字傳輸芯片nRF24L01 ,通過無線方式進行數據雙向傳輸。實驗結果證明:該系統使用靈活、成本低廉,可方便地嵌入到無線監測系統中。

  nRF24L01芯片的介紹

  nRF24L01是單片射頻收發芯片,工作于2.4~2.5 GHz ISM頻段。工作電壓為1.9~3.6 V,有多達125個頻道可供選擇。可通過SPI寫入數據,最高可達10 Mb/s,數據傳輸率最快可達2 Mb/s,并且有自動應答和自動再發射功能。和上一代nRF2401相比,nRF2401數據傳輸率更快,數據寫入速度更高,內嵌的功能更完備。

  芯片內置頻率合成器、功率放大器、晶體振蕩器、調制器等功能模塊,并融進了增強式ShockBurst技術,其中輸出功率和通信頻道可通過程序進行配置。芯片能耗非常低,以-6 dBm的功率發射時,工作電流只有9 mA,接收時工作電流只有12.3 mA,多種低功率工作模式(掉電模式和空閑模式)使節能設計更方便。

  系統總體結構設計

  基于nRF24L01和PIC16F877的無線數據傳輸系統設計

  圖1為系統設計總體框圖。此無線數據傳輸系統主控制芯片采用Microchip公司的PIC16F877微處理器,它負責控制無線芯片L01,實現數據的無線傳輸。為了進行多通道的數據采集,這里采用10片A/D進行分時采樣,它們的工作時序則由CPLD來控制,每路采集的數據經單片機處理后無線發射,至于何時采樣,則由單片機發的Trigger信號決定。 在與計算機的通訊方面,系統采用USB芯片通過USB口將無線接收數據送入計算機,并存儲在一個二進制文件內,當傳輸完畢后,運行VB讀數軟件,可將采集的信號讀出以供分析。

  系統硬件設計

  數據采集部分

  數據采集部分主要由傳感器、低通濾波放大器、A/D以及CPLD組成,電源管理則主要為各個芯片提供合適工作電壓,并為CPLD提供1MHZ主時鐘輸入。此系統采用10片AD7492,可進行10路模擬信號的采樣。CPLD主要控制10片A/D的采樣和讀數時序,采樣率由CPLD內部分頻器和無線傳輸率大小決定。為了配合無線傳輸模塊的工作,這里采用觸發采樣。即在CPLD內部設計D觸發器,并用VCC連接D輸入端,Trigger信號作為時鐘輸入,如圖2所示。系統上電后,CPLD便檢測其引腳Trigger端,當出現上升沿時, D觸發器輸出高電平,打開與非門,Convast就會輸出1KHz信號,A/D采樣開始。

  無線傳輸部分

  數據傳輸主要利用PIC16F877單片機對無線射頻芯片L01的控制實現的。nRF24L01是單片射頻收發芯片,工作于2.4~2.5GHzISM頻段,工作電壓為1.9V~3.6V,工作溫度為- 40℃~+ 85℃,有多達125個頻道可供選擇,最高通信速率2Mbit/s ,具有自動應答和重發功能,其工作參數全部通過芯片狀態字配置,而這些配置字是由PIC16F877通過SPI[1]訪問L01的。L01主要技術為:

  工作模式 :CE,CSN,SCK,MOSI,MISO,IRQ這6個管腳為該芯片的控制引腳。微處理器通過對這6個引腳的控制就可以決定該芯片的工作模式。當PWR_UP、PRIM_RX和CE為“111”時,L01處于接收模式;為“101”時處于發射模式;為“1X0”時處于空閑模式1;為“0XX”時處于掉電模式。

  增強型ShockBurst技術:L01融進了增強型ShockBurst技術,該項技術使得雙向通信協議變得簡單。在一個典型的雙向通信中,接收方在收到發射方的數據時,將會向發射方回傳一個應答信號,若接收方未收到該數據,發射方在等待一定延遲時間后將自動重發此包數據(在自動重發功能開啟的情況下),這都不需要CPU的參與。

  數據通道:當L01處于接收狀態時,它可以接收來自6個不同通道的數據。每個通道都有一個屬于自己的通道地址,但共享同一頻道。也就是說,一個配置為接收模式的L01可以和6個配置為發射模式下的L01進行通信,接收機可以根據它們的通道地址進行區分。通道0有一個40位的地址,通道1—5則共享高32位地址,只是低8位不同。每個通道都能開啟自動重發射和自動應答功能。處于接收狀態下的L01在回傳應答信號時,將利用該接收通道的地址作為發射應答信號的發射地址。在發射設備中,通道0常用于接收應答信號。發射數據的地址必須和接收通道0的地址一致 ,這樣才能有效地接收應答信號。

  數據包描述:“1字節字頭 + 3~5字節地址 + 9Bit標志位 + 1~2字節CRC”。 當L01要發送數據時,微控制器要先把地址和有效數據寫入L01緩存區,然后由L01自動產生字頭和CRC校驗碼,之后再發射出去。

  USB接口設計

  系統采用USB芯片FT245,由單片機控制讀寫操作。FT245提供了一些狀態標志位(RXF,TXE)供單片機查詢,以便讓單片機發讀寫脈沖執行讀寫操作,控制非常簡單。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

( 發表人:李倩 )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      bet365体育在线投注| 百家乐网哪一家做的最好呀| 临漳县| 百家乐筹码套装100片| 百家乐官网百战百胜| 在线真钱游戏| 电玩城百家乐技巧| 阿玛尼百家乐官网的玩法技巧和规则 | 百家乐官网打闲赢机会多| bet365金融技巧| 七胜百家乐娱乐场| 免费百家乐官网游戏下| 凤城市| 德州扑克网上平台| 百家乐赌场娱乐网规则| 属猪与属蛇做生意怎么样| 百家乐视频官网| 网络百家乐官网证据| 百家乐官网怎样算大小| 六合彩投注网| 大发888下载网站| 百家乐的薇笑打法| 百家乐网络游戏平台| 网上百家乐官网赌博网| 赌百家乐官网波音备用网| 大发888游戏攻略| 百家乐官网赌博合作| 永利博百家乐的玩法技巧和规则| 威尼斯人娱乐城游戏| 游戏机百家乐官网作弊| 老虎机 | 大发888娱乐城888bg| 威尼斯人娱乐城进不了| 贵宾百家乐的玩法技巧和规则 | 大发888-娱乐| 免费百家乐分析工具| 足球百家乐投注网出租| 钱隆百家乐的玩法技巧和规则| 百家乐做庄家必赢诀窍| 百家乐作弊内幕| 百家乐有看牌器吗|