Murata TypeYD - HTTPClient example.

Dependencies:   HTTPClient SNICInterface_PullReq mbed-rtos mbed

Committer:
ban4jp
Date:
Sat Nov 22 11:02:42 2014 +0000
Revision:
0:b0e7a802fc2a
Initial commit.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ban4jp 0:b0e7a802fc2a 1 #include "mbed.h"
ban4jp 0:b0e7a802fc2a 2 #include "SNIC_WifiInterface.h"
ban4jp 0:b0e7a802fc2a 3 #include "HTTPClient.h"
ban4jp 0:b0e7a802fc2a 4
ban4jp 0:b0e7a802fc2a 5 #define WIFI_SSID "mbed_ap"
ban4jp 0:b0e7a802fc2a 6 #define WIFI_SECUTIRY_KEY "password1234"
ban4jp 0:b0e7a802fc2a 7 #define WIFI_SECURITY_TYPE e_SEC_WPA2_AES
ban4jp 0:b0e7a802fc2a 8
ban4jp 0:b0e7a802fc2a 9 #if defined(TARGET_LPC1768)
ban4jp 0:b0e7a802fc2a 10 C_SNIC_WifiInterface wifi( p9, p10, NC, NC, p30 );
ban4jp 0:b0e7a802fc2a 11 Serial pc(USBTX, USBRX); // This is required when defined "_DEBUG"
ban4jp 0:b0e7a802fc2a 12 #else
ban4jp 0:b0e7a802fc2a 13 #error no defined pin.
ban4jp 0:b0e7a802fc2a 14 #endif
ban4jp 0:b0e7a802fc2a 15
ban4jp 0:b0e7a802fc2a 16 HTTPClient http;
ban4jp 0:b0e7a802fc2a 17 char str[512];
ban4jp 0:b0e7a802fc2a 18
ban4jp 0:b0e7a802fc2a 19 int main()
ban4jp 0:b0e7a802fc2a 20 {
ban4jp 0:b0e7a802fc2a 21 pc.baud( 115200 );
ban4jp 0:b0e7a802fc2a 22 pc.printf("----------------\n");
ban4jp 0:b0e7a802fc2a 23 pc.printf("Murata TypeYD - HTTPClient example\n");
ban4jp 0:b0e7a802fc2a 24
ban4jp 0:b0e7a802fc2a 25 int ret = wifi.init();
ban4jp 0:b0e7a802fc2a 26 if (!ret) {
ban4jp 0:b0e7a802fc2a 27 printf("Initialized\n");
ban4jp 0:b0e7a802fc2a 28 //printf("Initialized, MAC: %s\n", wifi.getMACAddress());
ban4jp 0:b0e7a802fc2a 29 } else {
ban4jp 0:b0e7a802fc2a 30 printf("Error wifi.init() - ret = %d\n", ret);
ban4jp 0:b0e7a802fc2a 31 return -1;
ban4jp 0:b0e7a802fc2a 32 }
ban4jp 0:b0e7a802fc2a 33
ban4jp 0:b0e7a802fc2a 34 wait(0.5);
ban4jp 0:b0e7a802fc2a 35
ban4jp 0:b0e7a802fc2a 36 ret = wifi.disconnect();
ban4jp 0:b0e7a802fc2a 37
ban4jp 0:b0e7a802fc2a 38 wait(0.5);
ban4jp 0:b0e7a802fc2a 39
ban4jp 0:b0e7a802fc2a 40 ret = wifi.getFWVersion((unsigned char *)str);
ban4jp 0:b0e7a802fc2a 41 if (!ret) {
ban4jp 0:b0e7a802fc2a 42 printf("Firmware version: %s\n", str);
ban4jp 0:b0e7a802fc2a 43 } else {
ban4jp 0:b0e7a802fc2a 44 printf("Error wifi.getFWVersion() - ret = %d\n", ret);
ban4jp 0:b0e7a802fc2a 45 return -1;
ban4jp 0:b0e7a802fc2a 46 }
ban4jp 0:b0e7a802fc2a 47
ban4jp 0:b0e7a802fc2a 48 wait(0.5);
ban4jp 0:b0e7a802fc2a 49
ban4jp 0:b0e7a802fc2a 50 ret = wifi.connect( WIFI_SSID, strlen(WIFI_SSID)
ban4jp 0:b0e7a802fc2a 51 , WIFI_SECURITY_TYPE
ban4jp 0:b0e7a802fc2a 52 , WIFI_SECUTIRY_KEY, strlen(WIFI_SECUTIRY_KEY) );
ban4jp 0:b0e7a802fc2a 53 if (!ret) {
ban4jp 0:b0e7a802fc2a 54 printf("Connected\n");
ban4jp 0:b0e7a802fc2a 55 /*
ban4jp 0:b0e7a802fc2a 56 printf("Connected, IP: %s, MASK: %s, GW: %s\n",
ban4jp 0:b0e7a802fc2a 57 wifi.getIPAddress(), wifi.getNetworkMask(), wifi.getGateway());
ban4jp 0:b0e7a802fc2a 58 */
ban4jp 0:b0e7a802fc2a 59 } else {
ban4jp 0:b0e7a802fc2a 60 printf("Error wifi.connect() - ret = %d\n", ret);
ban4jp 0:b0e7a802fc2a 61 return -1;
ban4jp 0:b0e7a802fc2a 62 }
ban4jp 0:b0e7a802fc2a 63
ban4jp 0:b0e7a802fc2a 64 // Use DHCP
ban4jp 0:b0e7a802fc2a 65 wifi.setIPConfig( true );
ban4jp 0:b0e7a802fc2a 66 // Use Static IP
ban4jp 0:b0e7a802fc2a 67 //wifi.setIPConfig( false, "192.168.0.48", "255.255.255.0", "192.168.0.1" );
ban4jp 0:b0e7a802fc2a 68
ban4jp 0:b0e7a802fc2a 69 wait(0.5);
ban4jp 0:b0e7a802fc2a 70
ban4jp 0:b0e7a802fc2a 71 // GET data
ban4jp 0:b0e7a802fc2a 72 {
ban4jp 0:b0e7a802fc2a 73 printf("\nTrying to GET request...\n");
ban4jp 0:b0e7a802fc2a 74 ret = http.get("http://developer.mbed.org/media/uploads/donatien/hello.txt", str, sizeof(str));
ban4jp 0:b0e7a802fc2a 75 if (!ret) {
ban4jp 0:b0e7a802fc2a 76 printf("Page fetched successfully - read %d characters\n", strlen(str));
ban4jp 0:b0e7a802fc2a 77 printf("Result: %s\n", str);
ban4jp 0:b0e7a802fc2a 78 } else {
ban4jp 0:b0e7a802fc2a 79 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
ban4jp 0:b0e7a802fc2a 80 }
ban4jp 0:b0e7a802fc2a 81 }
ban4jp 0:b0e7a802fc2a 82
ban4jp 0:b0e7a802fc2a 83 // POST data
ban4jp 0:b0e7a802fc2a 84 {
ban4jp 0:b0e7a802fc2a 85 HTTPMap map;
ban4jp 0:b0e7a802fc2a 86 HTTPText inText(str, sizeof(str));
ban4jp 0:b0e7a802fc2a 87 map.put("Hello", "World");
ban4jp 0:b0e7a802fc2a 88 map.put("test", "1234");
ban4jp 0:b0e7a802fc2a 89
ban4jp 0:b0e7a802fc2a 90 printf("\nTrying to POST request...\n");
ban4jp 0:b0e7a802fc2a 91 ret = http.post("http://httpbin.org/post", map, &inText);
ban4jp 0:b0e7a802fc2a 92 if (!ret) {
ban4jp 0:b0e7a802fc2a 93 printf("Executed POST successfully - read %d characters\n", strlen(str));
ban4jp 0:b0e7a802fc2a 94 printf("Result: %s\n", str);
ban4jp 0:b0e7a802fc2a 95 } else {
ban4jp 0:b0e7a802fc2a 96 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
ban4jp 0:b0e7a802fc2a 97 }
ban4jp 0:b0e7a802fc2a 98 }
ban4jp 0:b0e7a802fc2a 99
ban4jp 0:b0e7a802fc2a 100 // PUT data
ban4jp 0:b0e7a802fc2a 101 {
ban4jp 0:b0e7a802fc2a 102 strcpy(str, "This is a PUT test!");
ban4jp 0:b0e7a802fc2a 103 HTTPText outText(str);
ban4jp 0:b0e7a802fc2a 104 HTTPText inText(str, sizeof(str));
ban4jp 0:b0e7a802fc2a 105
ban4jp 0:b0e7a802fc2a 106 printf("\nTrying to PUT request...\n");
ban4jp 0:b0e7a802fc2a 107 ret = http.put("http://httpbin.org/put", outText, &inText);
ban4jp 0:b0e7a802fc2a 108 if (!ret) {
ban4jp 0:b0e7a802fc2a 109 printf("Executed PUT successfully - read %d characters\n", strlen(str));
ban4jp 0:b0e7a802fc2a 110 printf("Result: %s\n", str);
ban4jp 0:b0e7a802fc2a 111 } else {
ban4jp 0:b0e7a802fc2a 112 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
ban4jp 0:b0e7a802fc2a 113 }
ban4jp 0:b0e7a802fc2a 114 }
ban4jp 0:b0e7a802fc2a 115
ban4jp 0:b0e7a802fc2a 116 // DELETE data
ban4jp 0:b0e7a802fc2a 117 {
ban4jp 0:b0e7a802fc2a 118 HTTPText inText(str, sizeof(str));
ban4jp 0:b0e7a802fc2a 119
ban4jp 0:b0e7a802fc2a 120 printf("\nTrying to DELETE request...\n");
ban4jp 0:b0e7a802fc2a 121 ret = http.del("http://httpbin.org/delete", &inText);
ban4jp 0:b0e7a802fc2a 122 if (!ret) {
ban4jp 0:b0e7a802fc2a 123 printf("Executed DELETE successfully - read %d characters\n", strlen(str));
ban4jp 0:b0e7a802fc2a 124 printf("Result: %s\n", str);
ban4jp 0:b0e7a802fc2a 125 } else {
ban4jp 0:b0e7a802fc2a 126 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
ban4jp 0:b0e7a802fc2a 127 }
ban4jp 0:b0e7a802fc2a 128 }
ban4jp 0:b0e7a802fc2a 129
ban4jp 0:b0e7a802fc2a 130 printf("\n");
ban4jp 0:b0e7a802fc2a 131
ban4jp 0:b0e7a802fc2a 132 ret = wifi.disconnect();
ban4jp 0:b0e7a802fc2a 133 if (!ret) {
ban4jp 0:b0e7a802fc2a 134 printf("Disconnected\n");
ban4jp 0:b0e7a802fc2a 135 } else {
ban4jp 0:b0e7a802fc2a 136 printf("Error wifi.disconnect() - ret = %d\n", ret);
ban4jp 0:b0e7a802fc2a 137 }
ban4jp 0:b0e7a802fc2a 138
ban4jp 0:b0e7a802fc2a 139 while(1) {
ban4jp 0:b0e7a802fc2a 140 }
ban4jp 0:b0e7a802fc2a 141 }