hwthinker icon

LoraReceiver_ESP32-915MHZ

hwthinker | PRO | 08/29/19 04:30:50 AM UTC | 0 ⭐ | 433 👁️ | Never ⏰ | []
text |

1.57 KB

|

None

|

0 👍

/

0 👎

// lora receiverCallBack modified by HwThinker for for TTGO ESP32 Lora 915MHz
 #include <SPI.h>
#include <LoRa.h>
 #define SCK     5    // GPIO5  -- lora SCK
#define MISO    19   // GPIO19 -- lora MISO
#define MOSI    27   // GPIO27 -- lora MOSI
#define SS      18   // GPIO18 -- lora CS
#define RST     14   // GPIO14 -- RESET (If Lora does not work, replace it with GPIO14)
#define DI0     26   // GPIO26 -- IRQ(Interrupt Request)
 #define BAND    915E6
 #define LED_BUILTIN 2
int state = 0;
 void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
  Serial.begin(115200);
  while (!Serial);
  SPI.begin(SCK, MISO, MOSI, SS);
  LoRa.setPins(SS,RST,DI0);
   Serial.println("LoRa Receiver Callback");
   if (!LoRa.begin(BAND)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }
   Serial.println("LoRa Initial OK! Blinky 1.5 second");
  for (int i=0;i<15;i++) {
    digitalWrite(LED_BUILTIN, digitalRead(LED_BUILTIN) ? LOW : HIGH);
    delay(100);
  }
   // register the receive callback
  LoRa.onReceive(onReceive);
   // put the radio into receive mode
  LoRa.receive();
}
 void loop() {
  // do nothing
}
 void onReceive(int packetSize) {
  // received a packet
  Serial.print("Received packet '");
   // read packet
  for (int i = 0; i < packetSize; i++) {
    Serial.print((char)LoRa.read());
  }
   // print RSSI of packet
  Serial.print("' with RSSI ");
  Serial.println(LoRa.packetRssi());
    digitalWrite(LED_BUILTIN, (state) ? HIGH : LOW);
  state = !state;
  //or   digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}

Comments