資料介紹
描述
帶 ATMEGA328P 的 LoRa 基礎(chǔ)模塊
由 makeriot2020 提供
2022 年2 月 25 日由makeriot2020

我需要構(gòu)建一個可靠的 LoRa 設(shè)備,以便為朋友農(nóng)場即將進(jìn)行的項目進(jìn)行一些關(guān)于范圍等的測試。該設(shè)備的制造成本必須超低,并且功耗盡可能低。為實現(xiàn)這一目標(biāo),我決定使用 RA-02(來自 AI Tinker,非贊助商)以及 ATMEGA328P,它在休眠時消耗的電流非常小……(盡管收音機將一直處于待機狀態(tài)……)用標(biāo)準(zhǔn)的 Arduino 或另一個 ATMEGA 驅(qū)動的開發(fā)板構(gòu)建它可能會非?;靵y(如下圖所示……)

標(biāo)準(zhǔn)的 Arduino 會更糟,因為你需要在 SPI 引腳上進(jìn)行電平轉(zhuǎn)換,因為 RA-02 是一個 3.3v 設(shè)備,帶有 GPIO,不支持 5v(是的,這是真的,其他一些Youtube 上的帖子和類似的帖子很方便地省略了這個非常重要的小警告……)因此這個問題需要一個專用的定制 PCB,分階段設(shè)計,當(dāng)然要進(jìn)行徹底的測試……在這樣做的同時,我需要設(shè)計一些模塊化的東西可用。我想出了以下設(shè)計,作為第一階段的原型:
?

PCB 基本上是 Arduino Nano 風(fēng)格的 PCB(就 IO 而言),在 SPI 線路(SCK、MISO、MOSI、SS)上具有電平轉(zhuǎn)換以及 Lora 復(fù)位和 IRQ 引腳(這對于喚醒至關(guān)重要稍后啟動處理器)。由于原型將主要在實驗室中使用,稍后會進(jìn)行一些戶外測試,因此沒有提供電池充電電路。兩個 LDO 穩(wěn)壓器,5v 和 3.3v 從 7.5 到 12v 的直流輸入為 ATMEGA328P 和 RA-02 供電。
電平轉(zhuǎn)換固定在雙向 5v 到 3v 邏輯電平。所有未使用的 GPIO 都分解為標(biāo)題。代碼可以通過 ICSP 或 USB 轉(zhuǎn)串口轉(zhuǎn)換器上傳到 MCU,因為我沒有在板上添加這些,以節(jié)省空間和功率。控制引腳如下:RA-02 模塊 ATMEGA328P
SCK D13
味噌D12
摩思D11
NSS D10
重置 D9
IQR(DIO0) D2(中斷 0)
DIO1 未在第 1 階段原型中分解
DIO2 未在階段 1 原型上破解
DIO3 未在階段 1 原型上分解
DIO4 未在階段 1 原型上分解
示意圖如下
?

?
?

?

?

軟件
該板與 Sandeep Mistry 的 LoRa 庫兼容。其他庫也可以工作,但尚未經(jīng)過測試。下面是一個非?;镜臏y試草圖:請注意,此草圖沒有任何節(jié)電功能。它純粹用于進(jìn)行非?;镜臒o線電測試......更詳細(xì)的代碼將在項目的后期階段發(fā)布(稍后會詳細(xì)介紹)
#include // include libraries
#include
const int csPin = 10; // LoRa radio chip select
const int resetPin = 9; // LoRa radio reset
const int irqPin = 2; // change for your board; must be a hardware interrupt pin
byte msgCount = 0; // count of outgoing messages
int interval = 2000; // interval between sends
long lastSendTime = 0; // time of last packet send
void setup() {
Serial.begin(9600); // initialize serial
while (!Serial);
Serial.println("LoRa Duplex - Set spreading factor");
// override the default CS, reset, and IRQ pins (optional)
LoRa.setPins(csPin, resetPin, irqPin); // set CS, reset, IRQ pin
if (!LoRa.begin(433E6)) { // initialize ratio at 433 MHz
Serial.println("LoRa init failed. Check your connections.");
while (true); // if failed, do nothing
}
LoRa.setSpreadingFactor(8); // ranges from 6-12,default 7 see API docs
Serial.println("LoRa init succeeded.");
}
void loop() {
if (millis() - lastSendTime > interval) {
String message = "LoRa TEST"; // send a message
message += msgCount;
sendMessage(message);
Serial.println("Sending " + message);
lastSendTime = millis(); // timestamp the message
interval = random(2000) + 1000; // 2-3 seconds
msgCount++;
}
// parse for a packet, and call onReceive with the result:
onReceive(LoRa.parsePacket());
}
void sendMessage(String outgoing) {
LoRa.beginPacket(); // start packet
LoRa.print(outgoing); // add payload
LoRa.endPacket(); // finish packet and send it
msgCount++; // increment message ID
}
void onReceive(int packetSize) {
if (packetSize == 0) return; // if there's no packet, return
// read packet header bytes:
String incoming = "";
while (LoRa.available()) {
incoming += (char)LoRa.read();
}
Serial.println("Message: " + incoming);
Serial.println("RSSI: " + String(LoRa.packetRssi()));
Serial.println("Snr: " + String(LoRa.packetSnr()));
Serial.println();
}
未來的計劃
該項目的未來計劃包括:– 集成鋰聚合物電池充電模塊和升壓轉(zhuǎn)換器,使設(shè)備能夠依靠電池供電運行。– 與 ESP32 或類似產(chǎn)品集成,構(gòu)建一個簡單的網(wǎng)關(guān)設(shè)備– CAN-BUS 控制器集成,允許在不同但靠近的位置添加多個傳感器到一個無線電模塊– IO 卡,具有電隔離輸入,以及作為繼電器輸出,用于遠(yuǎn)程控制和監(jiān)控應(yīng)用。PCB 可以訂購,或很快從我在 PCBWay 的項目頁面下載(免費下載)設(shè)計文件……
?
?
- 基于ATmega328P微控制器的Ardu鍵盤
- 基于ATmega328P的DIY macropad
- 簡單的獨立ATMega328p微控制器
- 如何通過ATMEGA328P AU(SMD)制作廣告面板
- Atmega328P脈寬調(diào)制控制器
- 基于ATmega328P的電感計 6次下載
- 帶有ATMEGA328P設(shè)備的Arduino Uno門鈴項目
- 使用ATmega328p的迷你示波器
- 基于Atmega328P的PWM控制器卡
- 使用ATmega328P和ESP8266 12F的定制控制單元
- 具有集成LoRa和CAN總線的ATMEGA328P模塊
- 最低系統(tǒng)ATmega328p開源
- Atmega328P不帶Arduino PCB設(shè)計
- 1469416411ATmega328P中文翻譯資料 414次下載
- Arduino Atmega328P開發(fā)板軟件下載與安裝 137次下載
- LoRa數(shù)模模塊設(shè)置開啟LBT功能 2.5k次閱讀
- 低功耗 Lora模塊中收發(fā)模塊對電流有什么不同差異 1.2k次閱讀
- LoRa無線模塊E22-230T37S介紹 1.8k次閱讀
- LoRa網(wǎng)關(guān)模組E106-433G27P2簡述 1.7k次閱讀
- 如何利用ATmega328P構(gòu)建一個可靠的LoRa設(shè)備 7k次閱讀
- 如何為ATmega328P刷bootloader? 1.1w次閱讀
- 基于ATmega324p單片機實現(xiàn)便攜式控制器模塊的軟硬件設(shè)計 4.7k次閱讀
- lora模塊在安裝使用過程的注意事項 8.8k次閱讀
- LoRa通信模塊的特點及缺點 2.2w次閱讀
- 微雪電子Arduino開發(fā)板UNO PLUS簡介 6.8k次閱讀
- EML3047 LoRa模塊的詳細(xì)參數(shù)介紹 4.1k次閱讀
- 星翼電子:LORA模塊ATK-LORA-01相關(guān)信息描述 8.1k次閱讀
- 如何采用Arduino系統(tǒng)板進(jìn)行單片機編程 7.1k次閱讀
- LoRa無線模塊怎么用 通信距離可傳輸多遠(yuǎn) 2.7w次閱讀
- 自制四軸飛行器之路 2.5w次閱讀
下載排行
本周
- 1耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費
- 2TI系列-米爾TI AM62L核心板開發(fā)板-高能效低功耗嵌入式平臺
- 1.51 MB | 次下載 | 免費
- 3WILLSEMI韋爾20年半年度報告由代理分銷經(jīng)銷一級代理分銷經(jīng)銷
- 3.30 MB | 次下載 | 免費
- 4LRC 樂山無線電InTWSApplications家電由原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷供應(yīng)
- 85.84 KB | 次下載 | 免費
- 5LAT1596 一文說明白 STM32G4 雙 Bank 啟動與升級
- 0.64 MB | 次下載 | 5 積分
- 6LAT1594_基于事件喚醒低功耗之介紹
- 0.37 MB | 次下載 | 5 積分
- 7PT8P2309 觸控 A/D 型 8-Bit MCU規(guī)格書
- 4.05 MB | 次下載 | 免費
- 8PT8P2308 觸控 A/D 型 8-Bit MCU規(guī)格書
- 4.13 MB | 次下載 | 免費
本月
- 1美的電磁爐電路原理圖資料
- 4.39 MB | 19次下載 | 10 積分
- 2反激式開關(guān)電源設(shè)計解析
- 0.89 MB | 11次下載 | 5 積分
- 3耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費
- 4簡易光伏控制器原理圖資料
- 0.07 MB | 1次下載 | 5 積分
- 52EDL05x06xx系列 600V半橋門驅(qū)動器帶集成自舉二極管(BSD)手冊
- 0.69 MB | 1次下載 | 免費
- 6國產(chǎn)千兆網(wǎng)口芯片PT153S中文資料
- 1.35 MB | 次下載 | 免費
- 7斯丹電子 | 用于芯片測試系統(tǒng)的射頻干簧繼電器
- 5.11 MB | 次下載 | 免費
- 8SFI立昌ESD/TVS管原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷
- 294.76 KB | 次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233095次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191448次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183360次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81605次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費下載
- 0.02 MB | 73829次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論