Giung Kim
/
WIZnet-IoTShield-WM-N400MSE-Ping
Init project for Ping
Diff: main.cpp
- Revision:
- 2:74f027438e00
- Parent:
- 1:9f135d5ea1f9
- Child:
- 3:574affd4cf9f
--- a/main.cpp Sun Sep 15 23:43:17 2019 +0000 +++ b/main.cpp Tue Sep 17 08:57:44 2019 +0000 @@ -51,6 +51,7 @@ #define devlog(f_, ...) if(CATM1_DEVICE_DEBUG == DEBUG_ENABLE) { pc.printf("\r\n[%s] ", DEVNAME); pc.printf((f_), ##__VA_ARGS__); } #define myprintf(f_, ...) {pc.printf("\r\n[MAIN] "); pc.printf((f_), ##__VA_ARGS__);} +#define pingprintf(f_, ...) {pc.printf((f_), ##__VA_ARGS__);} /* Pin configuraiton */ // Cat.M1 @@ -323,7 +324,7 @@ void printPingToHost_WM01(char *host, int pingnum) { - char resp_str[1024] = {0, }; + Timer t; if((pingnum < 1) || (pingnum > 10)) { @@ -332,13 +333,16 @@ return; } - _parser->set_timeout(1000 * pingnum); + _parser->set_timeout((1000 * pingnum) + 2000); if(_parser->send("AT*PING=%s,%d", host, pingnum) && _parser->recv("OK")) { - _parser->read(resp_str, sizeof(resp_str)); + t.start(); - devlog("%s", resp_str); + while(t.read_ms() < ((1000 * pingnum) + 2000)) + { + pingprintf("%c", _parser->getc()); + } } _parser->set_timeout(WM01_DEFAULT_TIMEOUT);