Test Program for the ESP8266 Library, uses AT Thinker Firmware
Dependencies: ESP8266Interface
Fork of ESP8266_Test by
This repository has been superceded
This project has moved to https://developer.mbed.org/teams/ESP8266/code/mbed-os-example-esp8266/
This is a test program for the ESP8266Interface Library.
main.cpp@3:5175e53017e4, 2015-04-28 (annotated)
- Committer:
- mbedAustin
- Date:
- Tue Apr 28 20:18:04 2015 +0000
- Revision:
- 3:5175e53017e4
- Parent:
- 1:f61c1001ee60
- Child:
- 4:d02fdd139307
IP Function Works
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
michaeljkoster | 0:6a891da014a3 | 1 | #include "mbed.h" |
mbedAustin | 3:5175e53017e4 | 2 | #define DEBUG 1 |
michaeljkoster | 0:6a891da014a3 | 3 | #include "ESP8266Interface.h" |
michaeljkoster | 0:6a891da014a3 | 4 | #include "UDPSocket.h" |
michaeljkoster | 0:6a891da014a3 | 5 | #include "Endpoint.h" |
michaeljkoster | 0:6a891da014a3 | 6 | |
mbedAustin | 3:5175e53017e4 | 7 | RawSerial pc(USBTX, USBRX); // tx, rx |
mbedAustin | 3:5175e53017e4 | 8 | ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password |
michaeljkoster | 0:6a891da014a3 | 9 | |
michaeljkoster | 0:6a891da014a3 | 10 | UDPSocket server; |
michaeljkoster | 0:6a891da014a3 | 11 | bool UDP_blocking = false; |
michaeljkoster | 0:6a891da014a3 | 12 | unsigned int UDP_timeout = 100; |
michaeljkoster | 0:6a891da014a3 | 13 | |
michaeljkoster | 0:6a891da014a3 | 14 | uint8_t macbytes[6] = {0}; |
michaeljkoster | 1:f61c1001ee60 | 15 | char MAC[20] = "665544332211"; |
michaeljkoster | 0:6a891da014a3 | 16 | |
michaeljkoster | 0:6a891da014a3 | 17 | int main() |
michaeljkoster | 0:6a891da014a3 | 18 | { |
mbedAustin | 3:5175e53017e4 | 19 | pc.baud(115200); |
mbedAustin | 3:5175e53017e4 | 20 | int check = 0; |
mbedAustin | 3:5175e53017e4 | 21 | pc.printf("\n\rSystemCoreClock=: %d", SystemCoreClock / 1000000) ; |
mbedAustin | 3:5175e53017e4 | 22 | |
mbedAustin | 3:5175e53017e4 | 23 | // Init ESP8266 |
mbedAustin | 3:5175e53017e4 | 24 | pc.printf("\r\nwifi.init: "); |
mbedAustin | 3:5175e53017e4 | 25 | check = wifi.init(); // initialize the interface, reset the module |
mbedAustin | 3:5175e53017e4 | 26 | pc.printf("%d",check); |
mbedAustin | 3:5175e53017e4 | 27 | |
mbedAustin | 3:5175e53017e4 | 28 | // Initialize Socket |
mbedAustin | 3:5175e53017e4 | 29 | pc.printf("\r\nwifi.connect: "); |
mbedAustin | 3:5175e53017e4 | 30 | check = wifi.connect(); // join AP and get DHCP settings |
mbedAustin | 3:5175e53017e4 | 31 | pc.printf("%d",check); |
mbedAustin | 3:5175e53017e4 | 32 | |
mbedAustin | 3:5175e53017e4 | 33 | // printf("\r\nsocket init: "); |
mbedAustin | 3:5175e53017e4 | 34 | // check = server.init(); |
mbedAustin | 3:5175e53017e4 | 35 | // printf("%d",check); |
mbedAustin | 3:5175e53017e4 | 36 | // |
mbedAustin | 3:5175e53017e4 | 37 | // printf("\r\nsocket bind: "); |
mbedAustin | 3:5175e53017e4 | 38 | // check = server.bind(0); |
mbedAustin | 3:5175e53017e4 | 39 | // printf("%d",check); |
mbedAustin | 3:5175e53017e4 | 40 | // |
mbedAustin | 3:5175e53017e4 | 41 | // printf("\r\nset blocking option"); |
mbedAustin | 3:5175e53017e4 | 42 | // server.set_blocking(UDP_blocking, UDP_timeout); |
mbedAustin | 3:5175e53017e4 | 43 | wifi.sendCommand("AT+CWJAP?", NULL, NULL, 1000); |
mbedAustin | 3:5175e53017e4 | 44 | |
mbedAustin | 3:5175e53017e4 | 45 | check = wifi.is_connected(); |
mbedAustin | 3:5175e53017e4 | 46 | pc.printf("\r\nwifi connected: %d,\r\n",check); |
mbedAustin | 3:5175e53017e4 | 47 | |
mbedAustin | 3:5175e53017e4 | 48 | char * ip = NULL; |
mbedAustin | 3:5175e53017e4 | 49 | ip = wifi.getIPAddress(); |
mbedAustin | 3:5175e53017e4 | 50 | pc.printf("\n\rIP = %s \n\r",ip); |
mbedAustin | 3:5175e53017e4 | 51 | |
mbedAustin | 3:5175e53017e4 | 52 | pc.printf("\r\nStarting while1 loop\r\n"); |
mbedAustin | 3:5175e53017e4 | 53 | while(1) { |
mbedAustin | 3:5175e53017e4 | 54 | if(pc.readable()) { |
mbedAustin | 3:5175e53017e4 | 55 | char c = pc.getc(); |
mbedAustin | 3:5175e53017e4 | 56 | //pc.putc(c); // echo character back to computer for sanity |
mbedAustin | 3:5175e53017e4 | 57 | wifi.putc(c); |
mbedAustin | 3:5175e53017e4 | 58 | } |
mbedAustin | 3:5175e53017e4 | 59 | if(wifi.readable()) { |
mbedAustin | 3:5175e53017e4 | 60 | char c = wifi.getc(); |
mbedAustin | 3:5175e53017e4 | 61 | pc.putc(c); |
mbedAustin | 3:5175e53017e4 | 62 | } |
mbedAustin | 3:5175e53017e4 | 63 | } |
michaeljkoster | 0:6a891da014a3 | 64 | } |