sx1261/2 driver

Dependents:   alarm_slave iq_sx126x sx126x_simple_TX_shield_2020a sx126x_simple_RX_shield_2020a ... more

Driver for SX1261 or SX1262

Revision:
5:8b75387af4e0
Parent:
4:b941bceb401d
Child:
8:66d3e344d61c
--- a/sx126x.cpp	Thu Jul 05 13:38:27 2018 -0700
+++ b/sx126x.cpp	Thu Aug 16 14:47:55 2018 -0700
@@ -76,12 +76,12 @@
         irqFlags.word |= buf[2];
         clearIrqFlags.word = 0;
         if (irqFlags.bits.TxDone) {
+            chipMode = CHIPMODE_NONE;
+            if (chipModeChange)
+                chipModeChange.call();  // might change to Rx
             if (txDone)
                 txDone.call();
             clearIrqFlags.bits.TxDone = 1;
-            chipMode = CHIPMODE_NONE;
-            if (chipModeChange)
-                chipModeChange.call();
         }
         if (irqFlags.bits.RxDone) {
             if (rxDone) {
@@ -379,3 +379,11 @@
     return ret;
 }
 
+void SX126x::setBufferBase(uint8_t txAddr, uint8_t rxAddr)
+{
+    uint8_t buf[2];
+
+    buf[0] = 0; // TX base address
+    buf[1] = 0; // RX base address
+    xfer(OPCODE_SET_BUFFER_BASE_ADDR, 2, 0, buf);
+}