BayEOS-Arduino  1.8.0_0.0.4
BayTCPESP8266.h
1 #ifndef BayTCPESP8266_h
2 #define BayTCPESP8266_h
3 
4 #define ESP8266_DEBUG 0
5 
6 
7 #include <HardwareSerial.h>
8 #include <SoftwareSerial.h>
9 #include <BayTCP.h>
10 
11 
13 public:
20  uint8_t connect(void);
21 
25  void disconnect(void);
26 
27 
34  virtual uint8_t begin(long baud);
35 
42  uint8_t sendATE0(void);
43 
50  uint8_t init(void);
51 
52 
53 
54  virtual void i_begin(long baud)=0;
55 
56  /*
57  * Flush the transfer depending on MTU of Network
58  */
59  void flushMTU(void);
60 
61  /*
62  * Finish the transmission mode of the modem
63  */
64  void finishTransmissionMode(void);
65 
66  long _baud;
67  int8_t _resetPin;
68  char _rxBuffer[2];
69 
70 };
71 
73 public:
77  BayESP8266(HardwareSerial &serial=Serial,int8_t resetPin=-1);
78  uint8_t begin(long baud);
79 private:
80  HardwareSerial& _serial; //Reference to existing serial object!!
81  int available(void){return _serial.available();}
82  int read(void){
83 #if ESP8266_DEBUG
84  int c=_serial.read();
85  if(c!=-1) Serial.write(c);
86  return c;
87 #else
88  return _serial.read();
89 #endif
90 
91  }
92  void i_begin(long b){ _serial.begin(b);}
93  int i_available(void){return _serial.available();}
94  size_t write(uint8_t b){
95 #if ESP8266_DEBUG
96  Serial.write(b);
97 #endif
98  return _serial.write(b);
99  }
100  int peek(void){return _serial.peek();};
101  void flush(void){_serial.flush();};
102 };
103 
104 
105 class BayESP8266softserial : private SoftwareSerial, public BayESP8266Interface {
106 public:
110  BayESP8266softserial(uint8_t rxPin, uint8_t txPin, int8_t resetPin);
111  uint8_t begin(long baud);
112 private:
113  int available(void){return SoftwareSerial::available();}
114  int read(void){return SoftwareSerial::read();}
115  void i_begin(long b){ SoftwareSerial::begin(b);}
116  int i_available(void){return SoftwareSerial::available();}
117  size_t write(uint8_t b){return SoftwareSerial::write(b);}
118  int peek(void){return SoftwareSerial::peek();};
119  void flush(void){SoftwareSerial::flush();};
120 };
121 
122 
123 #endif
uint8_t init(void)
uint8_t connect(void)
virtual uint8_t begin(long baud)
uint8_t sendATE0(void)
virtual int available(void)
Definition: BayEOS.h:184