Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: ATParser
Dependents: X_NUCLEO_IDW01M1v2
Fork of SPWF01SA by
Diff: SPWFSA01.cpp
- Revision:
- 19:df8d7f70a740
- Parent:
- 18:fd46c2ca8eb7
- Child:
- 20:01031cd39e73
--- a/SPWFSA01.cpp Fri Sep 16 11:31:36 2016 +0000
+++ b/SPWFSA01.cpp Wed Sep 21 10:22:40 2016 +0000
@@ -283,6 +283,7 @@
return false;
}
+/*
int32_t SPWFSA01::recv(int id, void *data, uint32_t amount)
{
uint32_t recv_amount;
@@ -325,6 +326,31 @@
}
return recv_amount;
}
+*/
+
+int32_t SPWFSA01::recv(int id, void *data, uint32_t amount)
+{
+ uint32_t recv_amount=0;
+
+ while(!recv_amount) {
+ if(!(_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"))) {
+ return -2;
+ }
+ }
+ if(recv_amount > amount)
+ recv_amount = amount;
+
+ _parser.flush();
+ if(!(_parser.send("AT+S.SOCKR=%d,%d", id, recv_amount)
+ && (_parser.read((char*)data, recv_amount) >0)
+ && _parser.recv("OK"))) {
+ return -2;
+ }
+
+ return recv_amount;
+}
bool SPWFSA01::close(int id)
{
