Dweet IO example for WIZwiki-W7500

Dependencies:   HTTPClient WIZnetInterface mbed

Fork of dweetIoExample by WIZnet

Prerequisite

This example is for sending data to DweetIO.

To implement this function, you need a Platform board, network Interface board.

  • WIZwiki-W7500 from WIZnet (Platform board and Ethernet I/F board)
  • ETC: PGM5537(CDS sensor) + 10k resistor

Hardware Configuration

WIZwiki-W7500 Pin map

pin map


/media/uploads/cliff1/sim.png


Software

main.cpp

#include "mbed.h"
#include "EthernetInterface.h"
#include "HTTPClient.h"

const char * IP_Addr    = "IP Address";
const char * IP_Subnet  = "IP Subnet";
const char * IP_Gateway = "IP Gateway";
unsigned char MAC_Addr[6] = {0x00,0x08,0xDC,0x12,0x34,0x56};

Serial pc(USBTX, USBRX);
AnalogIn CDSSensor(PC_15);//Analog A0 input. pgm5537 CDS sensor and 10k resistor.
/******************
VCC     A0      GND
 |      |       |
 |      |       |
 |      |       |
 |      |       |
 --10k-----CDS---
*******************/

int main() {
    
    pc.printf("Start!\r\n\r\n");
    
    EthernetInterface ethernet;

    mbed_mac_address((char *)MAC_Addr); //Use mbed mac addres
    pc.baud(115200);
       
    #if USE_DHCP
    int ret = ethernet.init(MAC_Addr);
    #else
    int ret = ethernet.init(MAC_Addr,IP_Addr,IP_Subnet,IP_Gateway);
    #endif
    if (!ret) {
        pc.printf("Initialized, MAC: %s\r\n", ethernet.getMACAddress());
        ret = ethernet.connect();
        if (!ret) {
            pc.printf("IP: %s, MASK: %s, GW: %s\r\n",
                      ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway());
        } else {
            pc.printf("Error ethernet.connect() - ret = %d\r\n", ret);
            exit(0);
        }
    } else {
        pc.printf("Error ethernet.init() - ret = %d\r\n", ret);
        exit(0);
    }
    
    char str[512] = "";
    char get_msg[128] = "";
    
    /*
        http://dweet.io/follow/nameYouWant
    */
    char nameYouWant[] = "nameYouWant";
    while(1)
    {
        sprintf(get_msg,"http://dweet.io/dweet/for/%s?a0=%d",nameYouWant,(int)(CDSSensor.read()*1000));
        HTTPClient http;
        
        pc.printf("Send post message to dweet.io\r\n");
        pc.printf("msg : %s\r\n",get_msg);
        ret = http.get(get_msg, str, sizeof(str));
        if(!ret)
        {
          pc.printf("\r\nPage fetched successfully - read %d characters\r\n", strlen(str));
          pc.printf("Result: %s\r\n", str);
        }
        else
        {
          pc.printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
        }
        wait(10);
    }
   
}

Committer:
cliff1
Date:
Wed Apr 12 00:08:18 2017 +0000
Revision:
1:06d1dfb5b7eb
Parent:
0:d372849df255
Dweet IO example In WIZwiki-W7500

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bangbh 0:d372849df255 1 #include "mbed.h"
cliff1 1:06d1dfb5b7eb 2 #include "EthernetInterface.h"
bangbh 0:d372849df255 3 #include "HTTPClient.h"
bangbh 0:d372849df255 4
cliff1 1:06d1dfb5b7eb 5 const char * IP_Addr = "IP Address";
cliff1 1:06d1dfb5b7eb 6 const char * IP_Subnet = "IP Subnet";
cliff1 1:06d1dfb5b7eb 7 const char * IP_Gateway = "IP Gateway";
bangbh 0:d372849df255 8 unsigned char MAC_Addr[6] = {0x00,0x08,0xDC,0x12,0x34,0x56};
bangbh 0:d372849df255 9
bangbh 0:d372849df255 10 Serial pc(USBTX, USBRX);
cliff1 1:06d1dfb5b7eb 11 AnalogIn CDSSensor(PC_15);//Analog A0 input. pgm5537 CDS sensor and 10k resistor.
bangbh 0:d372849df255 12 /******************
bangbh 0:d372849df255 13 VCC A0 GND
bangbh 0:d372849df255 14 | | |
bangbh 0:d372849df255 15 | | |
bangbh 0:d372849df255 16 | | |
bangbh 0:d372849df255 17 | | |
bangbh 0:d372849df255 18 --10k-----CDS---
bangbh 0:d372849df255 19 *******************/
bangbh 0:d372849df255 20
bangbh 0:d372849df255 21 int main() {
cliff1 1:06d1dfb5b7eb 22
cliff1 1:06d1dfb5b7eb 23 pc.printf("Start!\r\n\r\n");
cliff1 1:06d1dfb5b7eb 24
cliff1 1:06d1dfb5b7eb 25 EthernetInterface ethernet;
bangbh 0:d372849df255 26
bangbh 0:d372849df255 27 mbed_mac_address((char *)MAC_Addr); //Use mbed mac addres
bangbh 0:d372849df255 28 pc.baud(115200);
cliff1 1:06d1dfb5b7eb 29
bangbh 0:d372849df255 30 #if USE_DHCP
bangbh 0:d372849df255 31 int ret = ethernet.init(MAC_Addr);
bangbh 0:d372849df255 32 #else
bangbh 0:d372849df255 33 int ret = ethernet.init(MAC_Addr,IP_Addr,IP_Subnet,IP_Gateway);
bangbh 0:d372849df255 34 #endif
bangbh 0:d372849df255 35 if (!ret) {
bangbh 0:d372849df255 36 pc.printf("Initialized, MAC: %s\r\n", ethernet.getMACAddress());
bangbh 0:d372849df255 37 ret = ethernet.connect();
bangbh 0:d372849df255 38 if (!ret) {
bangbh 0:d372849df255 39 pc.printf("IP: %s, MASK: %s, GW: %s\r\n",
bangbh 0:d372849df255 40 ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway());
bangbh 0:d372849df255 41 } else {
bangbh 0:d372849df255 42 pc.printf("Error ethernet.connect() - ret = %d\r\n", ret);
bangbh 0:d372849df255 43 exit(0);
bangbh 0:d372849df255 44 }
bangbh 0:d372849df255 45 } else {
bangbh 0:d372849df255 46 pc.printf("Error ethernet.init() - ret = %d\r\n", ret);
bangbh 0:d372849df255 47 exit(0);
bangbh 0:d372849df255 48 }
bangbh 0:d372849df255 49
cliff1 1:06d1dfb5b7eb 50 char str[512] = "";
cliff1 1:06d1dfb5b7eb 51 char get_msg[128] = "";
bangbh 0:d372849df255 52
bangbh 0:d372849df255 53 /*
bangbh 0:d372849df255 54 http://dweet.io/follow/nameYouWant
bangbh 0:d372849df255 55 */
bangbh 0:d372849df255 56 char nameYouWant[] = "nameYouWant";
bangbh 0:d372849df255 57 while(1)
bangbh 0:d372849df255 58 {
bangbh 0:d372849df255 59 sprintf(get_msg,"http://dweet.io/dweet/for/%s?a0=%d",nameYouWant,(int)(CDSSensor.read()*1000));
bangbh 0:d372849df255 60 HTTPClient http;
bangbh 0:d372849df255 61
bangbh 0:d372849df255 62 pc.printf("Send post message to dweet.io\r\n");
bangbh 0:d372849df255 63 pc.printf("msg : %s\r\n",get_msg);
bangbh 0:d372849df255 64 ret = http.get(get_msg, str, sizeof(str));
bangbh 0:d372849df255 65 if(!ret)
bangbh 0:d372849df255 66 {
bangbh 0:d372849df255 67 pc.printf("\r\nPage fetched successfully - read %d characters\r\n", strlen(str));
bangbh 0:d372849df255 68 pc.printf("Result: %s\r\n", str);
bangbh 0:d372849df255 69 }
bangbh 0:d372849df255 70 else
bangbh 0:d372849df255 71 {
bangbh 0:d372849df255 72 pc.printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
bangbh 0:d372849df255 73 }
cliff1 1:06d1dfb5b7eb 74 wait(10);
bangbh 0:d372849df255 75 }
bangbh 0:d372849df255 76
bangbh 0:d372849df255 77 }