prova
Dependencies: mbed HTTPClient X_NUCLEO_IDW01M1v2 NetworkSocketAPI
main.cpp@8:1b5c28fe5e94, 2016-11-17 (annotated)
- Committer:
- mapellil
- Date:
- Thu Nov 17 14:10:21 2016 +0000
- Revision:
- 8:1b5c28fe5e94
- Parent:
- 5:526c0df8cbff
- Child:
- 9:b54448c7f712
Added NSAPITests lib for a more extensive test
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mapellil | 8:1b5c28fe5e94 | 1 | |
mapellil | 8:1b5c28fe5e94 | 2 | //#define TESTV2 |
mapellil | 8:1b5c28fe5e94 | 3 | #ifdef TESTV2 |
mapellil | 8:1b5c28fe5e94 | 4 | |
mapellil | 8:1b5c28fe5e94 | 5 | #include "mbed.h" |
mapellil | 8:1b5c28fe5e94 | 6 | #include "SpwfInterface.h" |
mapellil | 8:1b5c28fe5e94 | 7 | #include "NSAPITests.h" |
mapellil | 8:1b5c28fe5e94 | 8 | |
mapellil | 8:1b5c28fe5e94 | 9 | //------------------------------------ |
mapellil | 8:1b5c28fe5e94 | 10 | // Hyperterminal configuration |
mapellil | 8:1b5c28fe5e94 | 11 | // 9600 bauds, 8-bit data, no parity |
mapellil | 8:1b5c28fe5e94 | 12 | //------------------------------------ |
mapellil | 8:1b5c28fe5e94 | 13 | |
mapellil | 8:1b5c28fe5e94 | 14 | Serial pc(USBTX, USBRX); |
mapellil | 8:1b5c28fe5e94 | 15 | DigitalOut myled(LED1); |
mapellil | 8:1b5c28fe5e94 | 16 | SpwfSAInterface spwf(D8, D2, false); |
mapellil | 8:1b5c28fe5e94 | 17 | |
mapellil | 8:1b5c28fe5e94 | 18 | int main() |
mapellil | 8:1b5c28fe5e94 | 19 | { |
mapellil | 8:1b5c28fe5e94 | 20 | int32_t err; |
mapellil | 8:1b5c28fe5e94 | 21 | // char * ssid = "STM"; |
mapellil | 8:1b5c28fe5e94 | 22 | // char * seckey = "STMdemoPWD"; |
mapellil | 8:1b5c28fe5e94 | 23 | char * ssid = "crespan"; |
mapellil | 8:1b5c28fe5e94 | 24 | char * seckey = "Elfrontal1"; |
mapellil | 8:1b5c28fe5e94 | 25 | |
mapellil | 8:1b5c28fe5e94 | 26 | |
mapellil | 8:1b5c28fe5e94 | 27 | pc.printf("\r\nSpwf Interface NSAPI Tests\r\n"); |
mapellil | 8:1b5c28fe5e94 | 28 | pc.printf("\r\nconnecting to AP\r\n"); |
mapellil | 8:1b5c28fe5e94 | 29 | |
mapellil | 8:1b5c28fe5e94 | 30 | err = spwf.connect(ssid, seckey, NSAPI_SECURITY_WPA); |
mapellil | 8:1b5c28fe5e94 | 31 | |
mapellil | 8:1b5c28fe5e94 | 32 | if (!err) { |
mapellil | 8:1b5c28fe5e94 | 33 | printf("Interface failed to connect with code %d\r\n", err); |
mapellil | 8:1b5c28fe5e94 | 34 | } else { |
mapellil | 8:1b5c28fe5e94 | 35 | do { |
mapellil | 8:1b5c28fe5e94 | 36 | |
mapellil | 8:1b5c28fe5e94 | 37 | nsapi_tests("SPWF Tests", &spwf, "192.168.1.19", 32001); |
mapellil | 8:1b5c28fe5e94 | 38 | |
mapellil | 8:1b5c28fe5e94 | 39 | } while (1); |
mapellil | 8:1b5c28fe5e94 | 40 | spwf.disconnect(); |
mapellil | 8:1b5c28fe5e94 | 41 | } |
mapellil | 8:1b5c28fe5e94 | 42 | |
mapellil | 8:1b5c28fe5e94 | 43 | while(1) |
mapellil | 8:1b5c28fe5e94 | 44 | { |
mapellil | 8:1b5c28fe5e94 | 45 | wait(1); |
mapellil | 8:1b5c28fe5e94 | 46 | myled = !myled; |
mapellil | 8:1b5c28fe5e94 | 47 | } |
mapellil | 8:1b5c28fe5e94 | 48 | } |
mapellil | 8:1b5c28fe5e94 | 49 | |
mapellil | 8:1b5c28fe5e94 | 50 | #else |
mapellil | 8:1b5c28fe5e94 | 51 | |
donatien | 0:0e0debc29569 | 52 | #include "mbed.h" |
mapellil | 3:6e7a93483c12 | 53 | //#include "EthernetInterface.h" |
mapellil | 3:6e7a93483c12 | 54 | #include "TCPSocket.h" |
donatien | 0:0e0debc29569 | 55 | #include "HTTPClient.h" |
donatien | 0:0e0debc29569 | 56 | |
mapellil | 3:6e7a93483c12 | 57 | #ifdef LICIO |
mapellil | 3:6e7a93483c12 | 58 | |
mapellil | 3:6e7a93483c12 | 59 | #else |
donatien | 1:d263603373ac | 60 | EthernetInterface eth; |
mapellil | 3:6e7a93483c12 | 61 | #endif |
mapellil | 3:6e7a93483c12 | 62 | |
donatien | 1:d263603373ac | 63 | char str[512]; |
donatien | 1:d263603373ac | 64 | |
donatien | 0:0e0debc29569 | 65 | int main() |
donatien | 0:0e0debc29569 | 66 | { |
mapellil | 3:6e7a93483c12 | 67 | #ifdef LICIO |
mapellil | 8:1b5c28fe5e94 | 68 | SpwfSAInterface spwf(D8, D2, false); |
mapellil | 8:1b5c28fe5e94 | 69 | spwf.connect("crespan","Elfrontal1", NSAPI_SECURITY_WPA2); |
donatien | 0:0e0debc29569 | 70 | |
mapellil | 8:1b5c28fe5e94 | 71 | HTTPClient http(spwf); |
mapellil | 3:6e7a93483c12 | 72 | #else |
mapellil | 3:6e7a93483c12 | 73 | eth.init(); //Use DHCP |
donatien | 0:0e0debc29569 | 74 | eth.connect(); |
mapellil | 3:6e7a93483c12 | 75 | #endif |
mapellil | 3:6e7a93483c12 | 76 | int ret; |
donatien | 0:0e0debc29569 | 77 | |
donatien | 0:0e0debc29569 | 78 | //GET data |
mapellil | 5:526c0df8cbff | 79 | printf("\nTrying to fetch page...\n\r"); |
mapellil | 3:6e7a93483c12 | 80 | ret = http.get("http://mbed.org/media/uploads/donatien/hello.txt", str, 128, HTTP_CLIENT_DEFAULT_TIMEOUT); |
mapellil | 3:6e7a93483c12 | 81 | // ret = http.get("http://httpstat.us", str, 128, HTTP_CLIENT_DEFAULT_TIMEOUT); |
donatien | 0:0e0debc29569 | 82 | if (!ret) |
donatien | 0:0e0debc29569 | 83 | { |
mapellil | 5:526c0df8cbff | 84 | printf("Page fetched successfully - read %d characters\n\r", strlen(str)); |
donatien | 0:0e0debc29569 | 85 | printf("Result: %s\n", str); |
donatien | 0:0e0debc29569 | 86 | } |
donatien | 0:0e0debc29569 | 87 | else |
donatien | 0:0e0debc29569 | 88 | { |
mapellil | 5:526c0df8cbff | 89 | printf("Error - ret = %d - HTTP return code = %d\n\r", ret, http.getHTTPResponseCode()); |
donatien | 0:0e0debc29569 | 90 | } |
mapellil | 8:1b5c28fe5e94 | 91 | |
donatien | 0:0e0debc29569 | 92 | //POST data |
donatien | 0:0e0debc29569 | 93 | HTTPMap map; |
donatien | 2:270e2d0bb85a | 94 | HTTPText inText(str, 512); |
donatien | 0:0e0debc29569 | 95 | map.put("Hello", "World"); |
donatien | 0:0e0debc29569 | 96 | map.put("test", "1234"); |
mapellil | 5:526c0df8cbff | 97 | printf("\nTrying to post data...\n\r"); |
mapellil | 3:6e7a93483c12 | 98 | ret = http.post("http://httpbin.org/post", map, &inText, HTTP_CLIENT_DEFAULT_TIMEOUT); |
mapellil | 3:6e7a93483c12 | 99 | // ret = http.post("http://posttestserver.com/post.php", map, &inText, HTTP_CLIENT_DEFAULT_TIMEOUT); |
donatien | 0:0e0debc29569 | 100 | if (!ret) |
donatien | 0:0e0debc29569 | 101 | { |
mapellil | 5:526c0df8cbff | 102 | printf("Executed POST successfully - read %d characters\n\r", strlen(str)); |
mapellil | 5:526c0df8cbff | 103 | printf("Result: %s\n\r", str); |
donatien | 0:0e0debc29569 | 104 | } |
donatien | 0:0e0debc29569 | 105 | else |
donatien | 0:0e0debc29569 | 106 | { |
mapellil | 5:526c0df8cbff | 107 | printf("Error - ret = %d - HTTP return code = %d\n\r", ret, http.getHTTPResponseCode()); |
donatien | 0:0e0debc29569 | 108 | } |
donatien | 0:0e0debc29569 | 109 | |
donatien | 2:270e2d0bb85a | 110 | //PUT data |
donatien | 2:270e2d0bb85a | 111 | strcpy(str, "This is a PUT test!"); |
donatien | 2:270e2d0bb85a | 112 | HTTPText outText(str); |
donatien | 2:270e2d0bb85a | 113 | //HTTPText inText(str, 512); |
mapellil | 5:526c0df8cbff | 114 | printf("\nTrying to put resource...\n\r"); |
donatien | 2:270e2d0bb85a | 115 | ret = http.put("http://httpbin.org/put", outText, &inText); |
donatien | 2:270e2d0bb85a | 116 | if (!ret) |
donatien | 2:270e2d0bb85a | 117 | { |
mapellil | 5:526c0df8cbff | 118 | printf("Executed PUT successfully - read %d characters\n\r", strlen(str)); |
mapellil | 5:526c0df8cbff | 119 | printf("Result: %s\n\r", str); |
donatien | 2:270e2d0bb85a | 120 | } |
donatien | 2:270e2d0bb85a | 121 | else |
donatien | 2:270e2d0bb85a | 122 | { |
mapellil | 5:526c0df8cbff | 123 | printf("Error - ret = %d - HTTP return code = %d\n\r", ret, http.getHTTPResponseCode()); |
donatien | 2:270e2d0bb85a | 124 | } |
donatien | 2:270e2d0bb85a | 125 | |
donatien | 2:270e2d0bb85a | 126 | //DELETE data |
donatien | 2:270e2d0bb85a | 127 | //HTTPText inText(str, 512); |
mapellil | 5:526c0df8cbff | 128 | printf("\nTrying to delete resource...\n\r"); |
donatien | 2:270e2d0bb85a | 129 | ret = http.del("http://httpbin.org/delete", &inText); |
donatien | 2:270e2d0bb85a | 130 | if (!ret) |
donatien | 2:270e2d0bb85a | 131 | { |
mapellil | 5:526c0df8cbff | 132 | printf("Executed DELETE successfully - read %d characters\n\r", strlen(str)); |
mapellil | 5:526c0df8cbff | 133 | printf("Result: %s\n\r", str); |
donatien | 2:270e2d0bb85a | 134 | } |
donatien | 2:270e2d0bb85a | 135 | else |
donatien | 2:270e2d0bb85a | 136 | { |
donatien | 2:270e2d0bb85a | 137 | printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode()); |
donatien | 2:270e2d0bb85a | 138 | } |
donatien | 2:270e2d0bb85a | 139 | |
mapellil | 3:6e7a93483c12 | 140 | // eth.disconnect(); |
donatien | 0:0e0debc29569 | 141 | |
donatien | 0:0e0debc29569 | 142 | while(1) { |
donatien | 0:0e0debc29569 | 143 | } |
donatien | 0:0e0debc29569 | 144 | } |
mapellil | 8:1b5c28fe5e94 | 145 | #endif |