C027_Support library plus AT Comand for dialing.

Fork of C027_Support_New by irsan julfikar

Files at this revision

API Documentation at this revision

Comitter:
mazgch
Date:
Mon May 05 15:42:49 2014 +0000
Parent:
44:9d12223b78ff
Child:
46:8ce9169e0747
Commit message:
make more portable to other cpus

Changed in this revision

GPS.cpp Show annotated file Show diff for this revision Revisions of this file
MDM.cpp Show annotated file Show diff for this revision Revisions of this file
SerialPipe.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/GPS.cpp	Thu Apr 17 20:41:30 2014 +0000
+++ b/GPS.cpp	Mon May 05 15:42:49 2014 +0000
@@ -260,6 +260,7 @@
             _pipe(rxSize),
             _i2cAdr(i2cAdr)
 {
+    frequency(100000);
     found = false;
 }
 
--- a/MDM.cpp	Thu Apr 17 20:41:30 2014 +0000
+++ b/MDM.cpp	Mon May 05 15:42:49 2014 +0000
@@ -3,7 +3,7 @@
 #include <string.h>
 #include "MDM.h"
 
-#define TRACE           (0)?:printf
+#define TRACE           (1/*1=off,0=trace*/)?:printf
 //#define DEBUG         // enable this for AT command debugging
 #define PROFILE         "0"   // this is the psd profile used
 #define MAX_SIZE        256  // max expected messages
@@ -210,7 +210,7 @@
         if(OK == waitFinalResp())
             break;
     }
-    if (i == 0)
+    if (i < 0)
         return false;
     // echo off
     sendFormated("AT E0\r\n");
--- a/SerialPipe.cpp	Thu Apr 17 20:41:30 2014 +0000
+++ b/SerialPipe.cpp	Mon May 05 15:42:49 2014 +0000
@@ -6,13 +6,18 @@
     : _SerialPipeBase(tx,rx), _pipeRx(rxSize), _pipeTx(txSize)
 {
     attach(this, &SerialPipe::rxIrqBuf, RxIrq);
+#if defined(TARGET_UBLOX_C027) || defined(TARGET_LPC1768)
+    // the lpc1768 supports interrupt driven tx
     attach(this, &SerialPipe::txIrqBuf, TxIrq);
+#endif
 }
 
 SerialPipe::~SerialPipe(void)
 {
     attach(NULL, RxIrq);
+#if defined(TARGET_UBLOX_C027) || defined(TARGET_LPC1768)
     attach(NULL, TxIrq);
+#endif
 }
 
 // tx channel
@@ -57,9 +62,19 @@
 
 void SerialPipe::txStart(void)
 {
+#if defined(TARGET_UBLOX_C027) || defined(TARGET_LPC1768)
     __disable_irq();
     txIrqBuf();
     __enable_irq();
+#else
+    while (_pipeTx.readable())
+    {
+        char c = _pipeTx.getc();
+        while (!_SerialPipeBase::writeable())
+            /*wait*/;
+        _SerialPipeBase::_base_putc(c);
+    }
+#endif
 }
 
 // rx channel