遊客:
註冊
|
登錄
|
會員
終身學習:智慧電子(物聯網)含金融證卷
»
團隊運作與實作心得
»
Arduino
» 無線WI FI模組 NRF24L01程式函式庫
投票
交易
懸賞
活動
打印
|
推薦
|
訂閱
|
收藏
標題:
[技術文章]
無線WI FI模組 NRF24L01程式函式庫
無頭像
s6351301
註冊 2013-3-2
用戶註冊天數 4095
狀態 離線
發表於 2017-5-7 21:35
219.84.242.121
#1
分享
私人訊息
http://single9.net/2015/01/rf24-nrf24l01-library/
RF24 專屬於 nRF24L01 的程式函式庫。
我在大學研究的專題可以說是自幹一個 Zigbee 的無線網路系統,我所採用無線傳輸模組是不在 IEEE 規範中的 2.4GHz 無線網路模組 nRF24L01,並且利用
Arduino
以及 Raspberry Pi 做雛形開發。很久之前還有為了它與
Launchpad
之間的通訊而
寫過一篇文章
。至於我專題的細節,改天再來說說。nRF24L01 是一個非常便宜,便宜到可以說是不可思議的無線傳輸模組,且透過 SPI 的方式與微處理器溝通與傳輸資料。以下是 nRF24L01 的一些特色。
使用2.4GHz全球開放頻寬
126個可選擇頻道
可設定收發位址及頻率
最高 2Mbps 的資料傳輸速率
可程式控制的輸出功率(最大0dBm,消耗11.3mA)
1.9~3.3V低電壓
使用SPI界面控制
細節可以參考
官方網站
。
如果你剛剛有去翻閱一下先前寫的那篇文章的話,應該會對於這個傳輸模組有些微的概念。但那篇文章的操作環境主要是在 Launchpad 這個由 TI 出品的開發板上,而今天要介紹的,則是讓你能透過 Raspberry Pi 的 GPIO 來操作這個無線傳輸模組。RF24
RF24
是一個支援多種單板電腦的 C++ 程式函式庫(Library),因為這種外接模組並不像是 USB 裝置那樣,可以隨插隨用,而是要透過一些特殊的程式才能運作,而通常這些程式都是由一些義工愛好者們所提供的。RF24便是其中之一。RF24 提供許多方便好用的 function 讓你可以快速的掌握 nRF24L01 ,並且讓他可以跟 Raspberry Pi 緊密結合,做更多你想用他做的事情。目前支援的單板電腦除了 Raspberry 以外,還有…
Intel Galileo
Arduino Uno, Nano… ATMega 328 核心的
Arduino Mega Boards
Arduino Due
ATTiny
其他細節可以參考他的
Git Page
RF24 Github:
https://github.com/maniacbug/RF24
Class Reference這部分可以直接
參考官方
的內容,因為項目繁多,我就不一一介紹了。範例
範例程式
其實包在所下載下來的資料包中,不過都是英文,但我想我把 GettingStarted.cpp 這個範例給簡單的翻譯一下,也順便讓你了解這個函式庫的使用方法。GETTINGSTARTED.CPP這是一個 Raspberry Pi 的範例,執行時需要兩個 nRF24L01 的裝置才能運作,一個可以是 Raspberry Pi 另一個是 Arduino。Arduino 的範例程式你可以
在這邊
看到。
總結其實個人覺得這個無線模組不難用,但問題在於傳輸距離。雖然宣稱可以長達 100 公尺以上的傳輸距離,但那只限定在沒有過多障礙物且傳輸速率較慢的環境下才有可能抵達這麼遠的距離,在我的實測過程中,2Mbps的速率下,最多只能到30M左右。但是他的便宜、小巧以及低功耗可以讓它在小區域的無線控制上佔上一席之地。
投票
交易
懸賞
活動
最近訪問的論壇 ...
勞工福利
FB(智慧電子-物聯網)
土地與建築物相關
6.行政法
期貨與選擇權及權證
102上_公平交易法
投資報告
LINE(Iot物聯網)
民事訴訟
民法
Powered by
Discuz!
© Comsenz Inc.
檢舉論壇