Changes required by X-NUCLEO-IDWM01M1 and mbed-os 5.2.2
Dependents: X_NUCLEO_IDW01M1v2-lapi-1
Fork of SPWF01SA by
Revision 8:a4425b8dd2e4, committed 2016-07-04
- Comitter:
- mridup
- Date:
- Mon Jul 04 12:14:14 2016 +0000
- Parent:
- 7:551de95939e2
- Child:
- 9:5314a6659fad
- Commit message:
- fix ATParser for AT-response ending with numbers and no non-digit. ATParser pointing to mridup/ATParser.
Changed in this revision
ATParser.lib | Show annotated file Show diff for this revision Revisions of this file |
SPWFSA01.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/ATParser.lib Thu Jun 30 10:52:43 2016 +0000 +++ b/ATParser.lib Mon Jul 04 12:14:14 2016 +0000 @@ -1,1 +1,1 @@ -https://developer.mbed.org/teams/components/code/ATParser/#6b8190f55d83 +https://developer.mbed.org/users/mridup/code/ATParser/#311f99666a8d
--- a/SPWFSA01.cpp Thu Jun 30 10:52:43 2016 +0000 +++ b/SPWFSA01.cpp Mon Jul 04 12:14:14 2016 +0000 @@ -43,7 +43,7 @@ reset(); /*set local echo to 0*/ - if(!(_parser.send("AT+S.SCFG=localecho1,%d", 0) && _parser.recv("OK"))) + if(!(_parser.send("AT+S.SCFG=localecho1,%d\r", 0) && _parser.recv("OK"))) { printf("\r\nerror local echo set\n"); return false; @@ -89,7 +89,7 @@ { if(!_parser.send("AT+CFUN=1")) return false; while(1) { - if (_parser.recv("+WIND:32:WiFi Hardware Started")) { + if (_parser.recv("+WIND:32:WiFi Hardware Started\r")) { return true; } } @@ -151,13 +151,10 @@ reset(); while(1) - if((_parser.recv("+WIND:24:WiFi Up:%u.%u.%u.%u",&n1, &n2, &n3, &n4))) - //if((_parser.recv("+WIND:24:WiFi Up:%[^\\r]",_ip_buffer))) + if((_parser.recv("+WIND:24:WiFi Up:%u.%u.%u.%u\r",&n1, &n2, &n3, &n4))) { break; - } - - //printf("\r\nip address:%u.%u.%u.%u\n",n1, n2, n3, n4); + } return true; } @@ -251,7 +248,6 @@ //if(timeout) return false; //TODO: deal with errors like "ERROR: Failed to resolve name" } - //printf("\r\nsock id = %d\r\n", *id); return true; } @@ -277,9 +273,9 @@ if (!(_parser.recv("+WIND:55:Pending Data:%d:%u", &recv_id, &recv_amount) && recv_id == id - //&& _parser.send("AT+S.SOCKQ=%d", id)//send a query (will be required for secure sockets) - //&& _parser.recv(" DATALEN: %d", &recv_amount) - //&& _parser.recv("OK") + && _parser.send("AT+S.SOCKQ=%d", id)//send a query (will be required for secure sockets) + && _parser.recv(" DATALEN: %u", &recv_amount) + && _parser.recv("OK") && recv_amount <= amount && _parser.send("AT+S.SOCKR=%d,%d", id, recv_amount) && _parser.read((char*)data, recv_amount)