USB serial demo passes data from virtual serial port to debug serial port

Dependencies:   max32630fthr USBDevice

Fork of FTHR_USB_serial by Greg Steiert

This program receives characters from the virtual USBSerial UART and sends them back out over the virtual USBSerial UART and the DapLink UART. It will also change the status of LED 1 based on the least significant bit of the character received.

The default baud rate for the DapLink UART is 9600, the baud rate does not affect the virtual USBSerial UART.

To Build using mbed CLI and GCC ARM:

mbed compile -m MAX32630FTHR -t GCC_ARM

Revision:
2:57500e991166
Parent:
1:6923b075c8d7
Child:
3:601c11238ccb
--- a/main.cpp	Sat Nov 12 00:34:35 2016 +0000
+++ b/main.cpp	Thu Dec 08 00:06:59 2016 +0000
@@ -1,38 +1,40 @@
 #include "mbed.h"
+#include "max32630fthr.h"
 #include "USBSerial.h"
 
-#define MAX14690_I2C_ADDR    0x50
+MAX32630FTHR pegasus(MAX32630FTHR::VIO_3V3);
 
 // Hardware serial port over DAPLink
-Serial pc(USBTX, USBRX);
+Serial daplink(P2_1, P2_0);
 
-DigitalOut led1(LED1);
-I2C i2cm2(P5_7, P6_0);
+DigitalOut rLED(LED1);
+DigitalOut gLED(LED2);
+DigitalOut bLED(LED3);
 
 // main() runs in its own thread in the OS
 // (note the calls to Thread::wait below for delays)
 int main()
 {
-    char data[5];
     int c;
-    data[0] = 0x14; // I2C address for first register (LDO2 CFG)
-    data[1] = 0x00; // Dissable LDO2
-    data[2] = 0x19; // Set voltage to 3.3V
-    data[3] = 0x00; // Dissable LDO3
-    data[4] = 0x19; // Set voltage to 3.3V
-    i2cm2.write(MAX14690_I2C_ADDR, data, 5);
-    data[1] = 0x02; // Enable LDO2
-    data[3] = 0x02; // Enable LDO3
-    i2cm2.write(MAX14690_I2C_ADDR, data, 5);
+
+    daplink.printf("daplink serial port\r\n");
+    rLED = LED_ON;
+    gLED = LED_ON;
+    bLED = LED_OFF;
+    pegasus.init();
 
     // Virtual serial port over USB
-    USBSerial serial;
+    USBSerial microUSB;
+    microUSB.printf("micro USB serial port\r\n");
+    
+
+    rLED = LED_OFF;
 
     while(1) {
-        c = serial.getc();
-        serial.putc(c);
-        pc.putc(c);
-        led1 = c & 1;
+        c = microUSB.getc();
+        microUSB.putc(c);
+        daplink.putc(c);
+        bLED = c & 1;
     }
 }