esp idf sx127x
1.0.0
SX1276/77/78/79 ESP-IDF的低功率长距离收发驱动器。
我基于这个。
ESP-IDF v4.4/v5.x。
使用ESP32-C2时,需要ESP-IDF v5.0。
使用ESP32-C6时,需要ESP-IDF v5.1。
git clone https://github.com/nopnop2002/esp-idf-sx127x
cd esp-idf-sx127x/basic/
idf.py set-target {esp32/esp32s2/esp32s3/esp32c2/esp32c3/esp32c6}
idf.py menuconfig
idf.py flash注意ESP32C3
由于某些原因,有些开发板无法使用GPIO06,GPIO08,GPIO09,GPIO19用于SPI Clock Pins。
根据ESP32C3规格,这些引脚也可以用作SPI时钟。
我使用RAW ESP-C3-13来验证这些引脚可以用作SPI时钟。



ESP32系列有三辆SPI巴士。
SPI1_HOST用于与闪存通信。
您可以自由使用spi2_host和spi3_host。
当您使用SDSPI(通过SPI的SD卡)时,SDSPI使用SPI2_HOST总线。
当使用SPI2_HOST与SDSPI或其他SPI设备同时使用此模块时,需要将其更改为SPI3_HOST。
当您不使用SDSPI时,SPI2_HOST和SPI3_HOST都将起作用。
以前称为hspi_host / vspi_host,但现在称为spi2_host / spi3_host。
| SX127X | ESP32 | ESP32-S2/S3 | ESP32-C2/C3/C6 | |
|---|---|---|---|---|
| 第 | - - | GPIO16 | GPIO38 | GPIO3 |
| 味o | - - | GPIO19 | GPIO37 | GPIO4 |
| SCK | - - | GPIO18 | GPIO36 | GPIO5 |
| 莫西 | - - | GPIO23 | GPIO35 | GPIO6 |
| NSS | - - | GPIO15 | GPIO34 | GPIO7 |
| gnd | - - | gnd | gnd | gnd |
| VCC | - - | 3.3V | 3.3V | 3.3V |
您可以使用menuconfig将其更改为任何针脚。
严格指定了Lora的数据包格式。
因此,如果以下三个参数相同,它们可以相互通信。
在LORA调制模式下,通信速度(BP)和最大接收灵敏度(RSSI)由扩散因子(SF),带宽(BW)和编码速率(CDR)的组合确定。
数据表在这里。
https://github.com/nopnop2002/esp-idf-sx126x