EthernetNetIf Compatibility.
Dependents: XBeeWiFi_SPI_example
Fork of NetServicesSource by
Diff: drv/at/ATIf.cpp
- Revision:
- 4:fd826cad83c0
- Parent:
- 0:632c9925f013
--- a/drv/at/ATIf.cpp Fri Jun 18 10:38:57 2010 +0000 +++ b/drv/at/ATIf.cpp Fri Jul 09 14:46:47 2010 +0000 @@ -38,10 +38,13 @@ //#define __DEBUG #include "dbg/dbg.h" -ATIf::ATIf() : SerialBuf(SERIAL_BUF_LEN), m_signalsEnable(false), m_isOpen(false), m_pCurrentSignal(NULL), m_signals() +ATIf::ATIf() : SerialBuf(SERIAL_BUF_LEN), m_isOpen(false)//, m_signalsEnable(false), m_isOpen(false), m_pCurrentSignal(NULL), m_signals() { + DBG("New AT If@%p\n", this); + m_readTimeout = READ_TIMEOUT; //default 1s //tmpBuf = NULL; + m_lineMode = false; m_tmpBuf = new char[TMP_BUF_SIZE]; } @@ -129,23 +132,23 @@ m_lineMode = lineMode; } +#if 0 void ATIf::setSignals(bool signalsEnable) { m_signalsEnable=signalsEnable; } +#endif -#ifdef __LINKING_SCRIPT_BUG_SOLVED__ +#if 0 template<class T> void ATIf::attachSignal( const char* sigName, T* pItem, bool (T::*pMethod)(ATIf*, bool, bool*) ) //Attach Signal ("Unsollicited response code" in Telit_AT_Reference_Guide.pdf) to an handler fn { ATSigHandler sig(sigName, (ATSigHandler::CDummy*)pItem, (bool (ATSigHandler::CDummy::*)(ATIf*, bool, bool*))pMethod); m_signals.push_back(sig); } -#else -//defined in ATIf.h directly -//(it's ugly, I know ;)) #endif +#if 0 void ATIf::detachSignal( const char* sigName ) { list<ATSigHandler>::iterator it; @@ -159,10 +162,11 @@ } } } +#endif ATErr ATIf::open(Serial* pSerial) //Deactivate echo, etc { - DBG("\r\nOpening..."); + DBG("Opening...\n"); m_isOpen = true; //Must be set so that the serial port-related fns work //Setup options // pSerial->baud(BAUDRATE); //FIXME @@ -172,14 +176,15 @@ setTimeout(1000); setLineMode(true); //Line Mode - DBG("\r\nTrmt..."); + DBG("Trmt...\n"); // printf("AT+IPR=%d", BAUDRATE); //FIXME + printf("ATZ"); //Reset wait(.100); printf("ATE"); //Deactivate echo wait(.500); flushBuffer(); - DBG("\r\nATE OK."); + DBG("ATZ ATE...\n"); int len = writeLine("ATV1"); ATErr err = AT_OK; @@ -217,7 +222,7 @@ #if NET_USB_SERIAL ATErr ATIf::open(UsbSerial* pUsbSerial) //Deactivate echo, etc { - DBG("\r\nOpening..."); + DBG("Opening...\n"); m_isOpen = true; //Must be set so that the serial port-related fns work //Setup options SerialBuf::attach(pUsbSerial); @@ -234,7 +239,7 @@ wait(.500); flushBuffer(); - DBG("\r\nATE OK."); + DBG("ATZ ATE...\n"); int len = writeLine("ATQ0 V1 S0=0 &C1 &D2 +FCLASS=0");//writeLine("ATQ0 V1 S0=0 &C1 &D2 +FCLASS=0"); ATErr err = AT_OK; @@ -246,7 +251,7 @@ err = checkOK(); if (err) //No ACK from module { - DBG("\r\nOpening port, error %d.", err); + DBG("Opening port, error %d.\n", err); if(err==AT_TIMEOUT) err = AT_NOANSWER; } @@ -259,8 +264,10 @@ return err; } - DBG("\r\nNo error."); + DBG("No error.\n"); + #if 0//FIXME m_signalsEnable = true; + #endif //FIXME: // m_pSerial->attach<ATIf>(this, &ATIf::onSerialInterrupt); @@ -272,7 +279,7 @@ { SerialBuf::detach(); //Detach serial buf m_isOpen = false; - m_signalsEnable = false; + //m_signalsEnable = false; return AT_OK; } @@ -282,11 +289,12 @@ return AT_CLOSED; int len=0; -// char c; + //char c; while(readable()) { - /* c = */ getc(); - // DBG("\r\n[%c] discarded.", c); + //DBG("Readable\n"); + /*c =*/ getc(); + //DBG("\r\n[%c] discarded.", c); // wait(0.01); len++; } @@ -335,6 +343,7 @@ return AT_OK; } +#if 0 bool ATIf::onRead() { if(!m_signalsEnable) @@ -378,6 +387,7 @@ //m_isOpen = u_isOpen; return handled; } +#endif ATErr ATIf::rawOpen(Serial* pSerial, int baudrate) //Simple open function for similar non-conforming protocols { @@ -706,6 +716,7 @@ return len; } +#if 0 bool ATIf::handleSignal() { bool beg = false; @@ -756,5 +767,6 @@ return result; } +#endif #endif