Senet-ized LMIC for MOTE_L152RC

Fork of lmic_MOTE_L152RC by Semtech

Revision:
0:f2716e543d97
Child:
9:83ae7f34e88c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TARGET_MOTE_L152RC/debug.cpp	Tue Jun 02 19:04:29 2015 +0000
@@ -0,0 +1,76 @@
+//#include "oslmic.h"
+#include "lmic.h"
+#include "debug.h"
+#include "mbed.h"
+
+Serial pc(USBTX, USBRX);
+
+static DigitalOut red_led(PB_1);
+#define LED_ON  0
+#define LED_OFF 1
+
+void debug_init()
+{
+    pc.baud(115200);
+
+    // print banner
+    debug_str("\r\n============== DEBUG STARTED ==============\r\n");
+
+    red_led = LED_OFF;
+}
+
+void debug_str (const char* str)
+{
+    debug("%s", str);
+}
+
+void debug_event (int ev)
+{
+    static const u1_t* evnames[] = {
+        [EV_SCAN_TIMEOUT]   = "SCAN_TIMEOUT",
+        [EV_BEACON_FOUND]   = "BEACON_FOUND",
+        [EV_BEACON_MISSED]  = "BEACON_MISSED",
+        [EV_BEACON_TRACKED] = "BEACON_TRACKED",
+        [EV_JOINING]        = "JOINING",
+        [EV_JOINED]         = "JOINED",
+        [EV_RFU1]           = "RFU1",
+        [EV_JOIN_FAILED]    = "JOIN_FAILED",
+        [EV_REJOIN_FAILED]  = "REJOIN_FAILED",
+        [EV_TXCOMPLETE]     = "TXCOMPLETE",
+        [EV_LOST_TSYNC]     = "LOST_TSYNC",
+        [EV_RESET]          = "RESET",
+        [EV_RXCOMPLETE]     = "RXCOMPLETE",
+        [EV_LINK_DEAD]      = "LINK_DEAD",
+        [EV_LINK_ALIVE]     = "LINK_ALIVE",
+    };
+
+    debug("%s\r\n", evnames[ev]);
+}
+
+void debug_val (const char* label, u4_t val)
+{
+    debug("%s%d\r\n", label, val);
+}
+
+void debug_buf(const u1_t* buf, u2_t len)
+{
+    while (len--) {
+        debug("%02x ", *buf++);
+    }
+    debug("\r\n");
+}
+
+void debug_led(unsigned char on)
+{
+    if (on)
+        red_led = LED_ON;
+    else
+        red_led = LED_OFF;
+}
+
+void debug_done()
+{
+    /* block until last bit sent out debug UART */
+    while (!(USART2->SR & UART_FLAG_TC))
+        __NOP();
+}