This is a demo code for ARCH GPRS 2.0 Serial debug

Dependencies:   USBDevice mbed

Fork of Arch_GPRS_V2_Serial_Debug by wei zou

Revision:
0:38b190020352
Child:
1:ba5061c882ea
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sat Apr 26 12:46:40 2014 +0000
@@ -0,0 +1,68 @@
+/*
+  main.cpp
+  2014 Copyright (c) Seeed Technology Inc.  All right reserved.
+
+  Author:lawliet zou(lawliet.zou@gmail.com)
+  2014-4-26
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License, or (at your option) any later version.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+*/
+
+#include "mbed.h"
+#include "USBSerial.h"
+
+#define PIN_PWR         P1_2    //power up gprs module
+#define PIN_TX          P1_27   //Serial tx pin
+#define PIN_RX          P1_26   //Serial rx pin
+
+DigitalOut power(PIN_PWR);
+Serial gprs(PIN_TX, PIN_RX);
+USBSerial pc;
+
+// Called by ISR
+void settingsChanged(int baud, int bits, int parity, int stop)
+{
+    const Serial::Parity parityTable[] = {Serial::None, Serial::Odd, Serial::Even, Serial::Forced0, Serial::Forced1};
+
+    if (stop != 2) {
+        stop = 1;   // stop bit(s) = 1 or 1.5
+    }
+
+    gprs.baud(baud);
+    gprs.format(bits, parityTable[parity], stop);
+}
+
+void gprsPowerUp(void)
+{
+    power = 0;
+}
+
+int main()
+{
+    gprsPowerUp();
+    wait(2);
+
+    pc.attach(settingsChanged);
+
+    while (1) {
+        while (gprs.readable()) {
+            pc.putc(gprs.getc());
+        }
+
+        while (pc.readable()) {
+            gprs.putc(pc.getc());
+        }
+    }
+}
\ No newline at end of file