blabla
Fork of ESP8266Interface by
Revision 15:37a7a56a424f, committed 2014-11-30
- Comitter:
- michaeljkoster
- Date:
- Sun Nov 30 21:56:03 2014 +0000
- Parent:
- 14:4d1128f72e00
- Child:
- 16:3f0efaa57a12
- Commit message:
- reorganize
Changed in this revision
ESP8266/ESP8266.cpp | Show annotated file Show diff for this revision Revisions of this file |
ESP8266/ESP8266.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/ESP8266/ESP8266.cpp Sun Nov 30 21:37:16 2014 +0000 +++ b/ESP8266/ESP8266.cpp Sun Nov 30 21:56:03 2014 +0000 @@ -83,6 +83,32 @@ return join(); } +bool ESP8266::is_connected() +{ + return true; +} + +bool ESP8266::close() +{ + return true; +} + +bool ESP8266::disconnect() +{ + // if already disconnected, return + if (!state.associated) + return true; + // send command to quit AP + // + state.associated = false; + return true; +} + +char* ESP8266::getIPAddress() +{ + return ipString; +} + bool ESP8266::gethostbyname(const char * host, char * ip) { string h = host; @@ -105,43 +131,6 @@ } } -void ESP8266::flush() -{ - buf_ESP8266.flush(); -} - -bool ESP8266::sendCommand(const char * cmd, const char * ack, char * res, int timeout) -{ - return true; -} - -bool ESP8266::close() -{ - return true; -} - -bool ESP8266::disconnect() -{ - // if already disconnected, return - if (!state.associated) - return true; - // send command to quit AP - // - state.associated = false; - return true; - -} - -bool ESP8266::is_connected() -{ - return true; -} - -char* ESP8266::getIPAddress() -{ - return ipString; -} - void ESP8266::reset() { reset_pin = 0; @@ -155,10 +144,19 @@ return true; } -int ESP8266::putc(char c) +void ESP8266::handler_rx(void) { - while (!wifi.writeable()); - return wifi.putc(c); + //read characters + while (wifi.readable()) + buf_ESP8266.queue(wifi.getc()); +} + +void ESP8266::attach_rx(bool callback) +{ + if (!callback) + wifi.attach(NULL); + else + wifi.attach(this, &ESP8266::handler_rx); } int ESP8266::readable() @@ -179,21 +177,21 @@ return c; } -void ESP8266::handler_rx(void) +int ESP8266::putc(char c) { - //read characters - while (wifi.readable()) - buf_ESP8266.queue(wifi.getc()); + while (!wifi.writeable()); + return wifi.putc(c); } -void ESP8266::attach_rx(bool callback) +void ESP8266::flush() { - if (!callback) - wifi.attach(NULL); - else - wifi.attach(this, &ESP8266::handler_rx); + buf_ESP8266.flush(); } +bool ESP8266::sendCommand(const char * cmd, const char * ack, char * res, int timeout) +{ + return true; +} int ESP8266::send(const char * str, int len, const char * ACK, char * res, int timeout) { @@ -300,4 +298,4 @@ attach_rx(true); DBG("result: %d\r\n", result) return result; -} \ No newline at end of file +}
--- a/ESP8266/ESP8266.h Sun Nov 30 21:37:16 2014 +0000 +++ b/ESP8266/ESP8266.h Sun Nov 30 21:56:03 2014 +0000 @@ -58,14 +58,7 @@ bool join(); /** - * Disconnect the ESP8266 module from the access point - * - * @return true if successful - */ - bool disconnect(); - - /** - * Join to the access point and get DHCP settings + * Same as Join: connect to the ssid and get DHCP settings * @return true if successful */ bool connect(); @@ -77,10 +70,30 @@ bool is_connected(); /** + * Disconnect the ESP8266 module from the access point + * + * @return true if successful + */ + bool disconnect(); + + /** + * Close a tcp connection + * + * @return true if successful + */ + bool close(); + + /** * Return the IP address * @return IP address as a string */ char* getIPAddress(); + + /** + * Return the IP address from host name + * @return IP address as a string + */ bool gethostbyname(const char * host, char * ip); + /** * Reset the wifi module */ @@ -113,11 +126,6 @@ char getc(); /** - * Flush the buffer - */ - void flush(); - - /** * Write a character * * @param the character which will be written @@ -125,12 +133,21 @@ int putc(char c); /** - * Close a tcp connection + * Flush the buffer + */ + void flush(); + + /** + * Send a command to the wify module. Check if the module is in command mode. If not enter in command mode + * + * @param str string to be sent + * @param ACK string which must be acknowledge by the wifi module. If ACK == NULL, no string has to be acknoledged. (default: "NO") + * @param res this field will contain the response from the wifi module, result of a command sent. This field is available only if ACK = "NO" AND res != NULL (default: NULL) * * @return true if successful */ - bool close(); - + bool sendCommand(const char * cmd, const char * ack = NULL, char * res = NULL, int timeout = DEFAULT_WAIT_RESP_TIMEOUT); + /** * Send a string to the wifi module by serial port. This function desactivates the user interrupt handler when a character is received to analyze the response from the wifi module. * Useful to send a command to the module and wait a response. @@ -145,19 +162,6 @@ */ int send(const char * str, int len, const char * ACK = NULL, char * res = NULL, int timeout = DEFAULT_WAIT_RESP_TIMEOUT); - /** - * Send a command to the wify module. Check if the module is in command mode. If not enter in command mode - * - * @param str string to be sent - * @param ACK string which must be acknowledge by the wifi module. If ACK == NULL, no string has to be acknoledged. (default: "NO") - * @param res this field will contain the response from the wifi module, result of a command sent. This field is available only if ACK = "NO" AND res != NULL (default: NULL) - * - * @return true if successful - */ - bool sendCommand(const char * cmd, const char * ack = NULL, char * res = NULL, int timeout = DEFAULT_WAIT_RESP_TIMEOUT); - - bool gethostbyname(const char * host, char * ip); - static ESP8266 * getInstance() { return inst; };