首頁 > 評(píng)測 > 帶你飛越LoRa世界--Feather 32u4 LoRa開發(fā)板體驗(yàn)

帶你飛越LoRa世界--Feather 32u4 LoRa開發(fā)板體驗(yàn)

  • 作者:
  • 來源:21ic
  • [導(dǎo)讀]
  • 今天給大家介紹的Feather 32u4 LoRa開發(fā)板是Feather家族中的一員。從名字可以看出,這是一款用于學(xué)習(xí)及評(píng)估LoRa技術(shù)的開發(fā)板。相比LoRa在國外火爆的局面,國內(nèi)似乎還沒有掀起太大的波瀾,不過技術(shù)這東西,說火爆就火爆了,有時(shí)間還是了解下也好。

對(duì)于一個(gè)典型的IoT通信模型來說,傳感器收集到的信息,一般通過網(wǎng)關(guān)集中、篩選后再上傳到服務(wù)器;除了數(shù)據(jù)的上行,也可以通過服務(wù)器下發(fā)控制指令,實(shí)現(xiàn)遠(yuǎn)程控制。

結(jié)點(diǎn)與網(wǎng)關(guān)交換信息的不同方式,又可以分為三類:

• Class A: 低功耗模式,必須實(shí)現(xiàn)

• Class B: 低延遲,可選實(shí)現(xiàn)

• Class C: 無延遲,可選實(shí)現(xiàn),功耗較大

先看一段簡單的硬件初始化代碼,如下

/* for feather32u4 */

#define RFM95_CS 8

#define RFM95_RST 4

#define RFM95_INT 7

#define RF95_FREQ 915.0

// Singleton instance of the radio driver

//RH_RF95 rf95;

RH_RF95 rf95(8, 7); // Rocket Scream Mini Ultra Pro with the RFM95W

首先指定MCU與LoRa模塊通信的一些基本配置,如片選、復(fù)位及中斷引腳,這里分別對(duì)應(yīng)于8、4及7號(hào)引腳,接下來是定義ISM頻段,前面提到這是一款900MHz的芯片,所以要設(shè)置為915。

接下來的代碼是使用硬件配置的引腳來初始化LoRa芯片,底層代碼通過SPI接口來指定相關(guān)的指令,如設(shè)置LoRa的配置參數(shù),設(shè)置發(fā)射功率等。LoRa使用擴(kuò)頻技術(shù)來實(shí)現(xiàn)遠(yuǎn)距離及低功耗,不同的調(diào)制參數(shù)適用不同的場合,例如不同的傳輸距離,典型的配置列表如下

不同的擴(kuò)頻因子SF、帶寬BW及CR的組合,可以得到不同的傳輸速率,結(jié)合不同的發(fā)射功率,還可以選擇傳輸距離等

while (!rf95.init()) {

Serial.println("LoRa radio init failed");

while (1);

}

Serial.println("LoRa radio init OK!");

// Defaults after init are 434.0MHz, modulation GFSK_Rb250Fd250, +13dbM

if (!rf95.setFrequency(RF95_FREQ)) {

Serial.println("setFrequency failed");

while (1);

}

Serial.print("Set Freq to: "); Serial.println(RF95_FREQ);

// Defaults after init are 434.0MHz, 13dBm, Bw = 125 kHz, Cr = 4/5, Sf = 128chips/symbol, CRC on

// The default transmitter power is 13dBm, using PA_BOOST.

// If you are using RFM95/96/97/98 modules which uses the PA_BOOST transmitter pin, then

// you can set transmitter powers from 5 to 23 dBm:

rf95.setTxPower(23, false);

這一段代碼設(shè)置ISM頻率,使用默認(rèn)的BW、CR及SF參數(shù),這些參數(shù)在LoRa每個(gè)結(jié)點(diǎn)上,這些參數(shù)要求保持一致。剩下的事情就是發(fā)送及接收數(shù)據(jù)的處理工作了,代碼就不詳細(xì)介紹了。

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評(píng)論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開放投稿

熱門標(biāo)簽
項(xiàng)目外包 more+