Nucleo STM32 F401RE , NodeMCU and TCP Conneciton
Dependencies: BufferedSerial mbed-rtos mbed
Fork of NucleoF401_ESP8622 by
Connection SCHEMA
SOCKET DATA
DETAIL DESCRIPTION
http://veyselkaradag.blogspot.com.tr/
esp8622.h@4:a78539de849b, 2015-02-19 (annotated)
- Committer:
- veyselka
- Date:
- Thu Feb 19 10:16:04 2015 +0000
- Revision:
- 4:a78539de849b
- Parent:
- 1:4a50b910342c
IP Checked
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
veyselka | 1:4a50b910342c | 1 | /* --------------------------------------------------------------------------- |
veyselka | 1:4a50b910342c | 2 | ** This software is in the public domain, furnished "as is", without technical |
veyselka | 1:4a50b910342c | 3 | ** support, and with no warranty, express or implied, as to its usefulness for |
veyselka | 1:4a50b910342c | 4 | ** any purpose. |
veyselka | 1:4a50b910342c | 5 | ** |
veyselka | 1:4a50b910342c | 6 | ** esp8622.h |
veyselka | 1:4a50b910342c | 7 | ** NodeMCU serial comminication STM32F401RE Nucleo Board |
veyselka | 1:4a50b910342c | 8 | ** Author: <veyselka@hotmail.com> <v.karadag@gmail.com> Veysel KARADAG |
veyselka | 1:4a50b910342c | 9 | ** -------------------------------------------------------------------------*/ |
veyselka | 1:4a50b910342c | 10 | |
veyselka | 1:4a50b910342c | 11 | |
veyselka | 1:4a50b910342c | 12 | |
veyselka | 1:4a50b910342c | 13 | #ifndef __ESP8622_H__ |
veyselka | 1:4a50b910342c | 14 | #define __ESP8622_H__ |
veyselka | 1:4a50b910342c | 15 | |
veyselka | 1:4a50b910342c | 16 | #include "mbed.h" |
veyselka | 1:4a50b910342c | 17 | #include "BufferedSerial.h" |
veyselka | 1:4a50b910342c | 18 | |
veyselka | 1:4a50b910342c | 19 | |
veyselka | 1:4a50b910342c | 20 | #define DEFAULT_TIMEOUT 5 |
veyselka | 1:4a50b910342c | 21 | |
veyselka | 1:4a50b910342c | 22 | |
veyselka | 1:4a50b910342c | 23 | |
veyselka | 1:4a50b910342c | 24 | |
veyselka | 1:4a50b910342c | 25 | |
veyselka | 1:4a50b910342c | 26 | enum DataType { |
veyselka | 1:4a50b910342c | 27 | CMD = 0, |
veyselka | 1:4a50b910342c | 28 | DATA = 1, |
veyselka | 1:4a50b910342c | 29 | }; |
veyselka | 1:4a50b910342c | 30 | |
veyselka | 1:4a50b910342c | 31 | /** Modem class. |
veyselka | 1:4a50b910342c | 32 | * Used for Modem communication. attention that Modem module communicate with MCU in serial protocol |
veyselka | 1:4a50b910342c | 33 | */ |
veyselka | 1:4a50b910342c | 34 | |
veyselka | 1:4a50b910342c | 35 | class esp8622 |
veyselka | 1:4a50b910342c | 36 | { |
veyselka | 1:4a50b910342c | 37 | |
veyselka | 1:4a50b910342c | 38 | public: |
veyselka | 1:4a50b910342c | 39 | /** Create Modem Instance |
veyselka | 1:4a50b910342c | 40 | * @param tx uart transmit pin to communicate with Modem |
veyselka | 1:4a50b910342c | 41 | * @param rx uart receive pin to communicate with Modem |
veyselka | 1:4a50b910342c | 42 | * @param baudRate baud rate of uart communication |
veyselka | 1:4a50b910342c | 43 | */ |
veyselka | 1:4a50b910342c | 44 | esp8622(PinName tx, PinName rx, int baudRate) : esp8622_com(tx, rx) { |
veyselka | 1:4a50b910342c | 45 | esp8622_com.baud(baudRate); |
veyselka | 1:4a50b910342c | 46 | }; |
veyselka | 1:4a50b910342c | 47 | |
veyselka | 1:4a50b910342c | 48 | BufferedSerial esp8622_com; |
veyselka | 1:4a50b910342c | 49 | |
veyselka | 1:4a50b910342c | 50 | /** send AT command to Modem module |
veyselka | 1:4a50b910342c | 51 | * @param cmd command array which will be send to GPRS module |
veyselka | 1:4a50b910342c | 52 | */ |
veyselka | 1:4a50b910342c | 53 | void sendCmd(const char* cmd); |
veyselka | 1:4a50b910342c | 54 | |
veyselka | 1:4a50b910342c | 55 | /**send "AT" to Modem module |
veyselka | 1:4a50b910342c | 56 | */ |
veyselka | 1:4a50b910342c | 57 | int sendATTest(void); |
veyselka | 1:4a50b910342c | 58 | |
veyselka | 1:4a50b910342c | 59 | /** check Modem module response before time out |
veyselka | 1:4a50b910342c | 60 | * @param *resp correct response which Modem module will return |
veyselka | 1:4a50b910342c | 61 | * @param *timeout waiting seconds till timeout |
veyselka | 1:4a50b910342c | 62 | * @returns |
veyselka | 1:4a50b910342c | 63 | * 0 on success |
veyselka | 1:4a50b910342c | 64 | * -1 on error |
veyselka | 1:4a50b910342c | 65 | */ |
veyselka | 1:4a50b910342c | 66 | int readFromBuffer(char *resp, unsigned int timeout,unsigned int len); |
veyselka | 1:4a50b910342c | 67 | |
veyselka | 1:4a50b910342c | 68 | Timer timeCnt; |
veyselka | 1:4a50b910342c | 69 | |
veyselka | 1:4a50b910342c | 70 | |
veyselka | 1:4a50b910342c | 71 | }; |
veyselka | 1:4a50b910342c | 72 | |
veyselka | 1:4a50b910342c | 73 | |
veyselka | 1:4a50b910342c | 74 | #endif |