final

Dependencies:   KS0108 WIZnet_Library mbed

Fork of bigthingRec by rohan gala

Committer:
rohangala
Date:
Tue Mar 15 11:38:05 2016 +0000
Revision:
3:0ee289161a2a
Parent:
2:015a5a76bb82
Child:
4:a4ec8ea99d70
za

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rohangala 0:98be6bf27557 1 #include "mbed.h"
rohangala 3:0ee289161a2a 2 #include "stdio.h"
rohangala 3:0ee289161a2a 3 #include "WIZnetInterface.h"
rohangala 3:0ee289161a2a 4
rohangala 3:0ee289161a2a 5 unsigned char MAC_Addr[6] = {0x90,0x08,0xDC,0x12,0x07,0x07};
rohangala 3:0ee289161a2a 6
rohangala 3:0ee289161a2a 7 char* Update_Key = "L055HRYFCBL1LTM2";
rohangala 3:0ee289161a2a 8 char* ServerIP = "api.thingspeak.com";
rohangala 3:0ee289161a2a 9 int Count = 15;
rohangala 3:0ee289161a2a 10
rohangala 3:0ee289161a2a 11 SPI spi(PTD2,PTD3,PTD1);
rohangala 3:0ee289161a2a 12 WIZnetInterface ethernet(&spi,PTD0,PTA1);
rohangala 3:0ee289161a2a 13
rohangala 0:98be6bf27557 14 Serial pc(USBTX, USBRX);
rohangala 2:015a5a76bb82 15 Serial micro(PTE0, PTE1); // tx, rx
rohangala 3:0ee289161a2a 16
rohangala 0:98be6bf27557 17 char buff[]={'\0'};
rohangala 3:0ee289161a2a 18
rohangala 2:015a5a76bb82 19 AnalogIn ax(PTC1);
rohangala 2:015a5a76bb82 20
rohangala 2:015a5a76bb82 21 float luxm(void)
rohangala 2:015a5a76bb82 22 {
rohangala 2:015a5a76bb82 23 AnalogIn ain(PTC2);
rohangala 2:015a5a76bb82 24
rohangala 3:0ee289161a2a 25 float vr=0;
rohangala 3:0ee289161a2a 26 /*float vr=0,lr=0;
rohangala 2:015a5a76bb82 27 float vol[12]={0.36,0.61,0.8,0.9,1.23,1.45,1.81,2.06,2.62,2.81,3.02,3.25};
rohangala 2:015a5a76bb82 28 float lux[12]={27000,20000,16000,11000,4000,1500,833,578,201,104,40,23};
rohangala 2:015a5a76bb82 29
rohangala 2:015a5a76bb82 30 int i;
rohangala 2:015a5a76bb82 31 float m=0;
rohangala 3:0ee289161a2a 32 */
rohangala 2:015a5a76bb82 33 vr=ain*3.3;
rohangala 3:0ee289161a2a 34 /*
rohangala 2:015a5a76bb82 35 for(i=0; vr> vol[i];i++);
rohangala 2:015a5a76bb82 36 m = ((lux[i]-lux[i+1])/(vol[i]-vol[i+1]));
rohangala 2:015a5a76bb82 37 lr=lux[i+1]+(m*(vr-(vol[i+1])));
rohangala 3:0ee289161a2a 38 */
rohangala 3:0ee289161a2a 39 return vr;
rohangala 2:015a5a76bb82 40 }
rohangala 2:015a5a76bb82 41
rohangala 1:630aef63181c 42 uint8_t val;
rohangala 0:98be6bf27557 43
rohangala 0:98be6bf27557 44 int main()
rohangala 2:015a5a76bb82 45 {
rohangala 0:98be6bf27557 46 while(1)
rohangala 0:98be6bf27557 47 {
rohangala 3:0ee289161a2a 48 pc.printf("Start\r\n");
rohangala 3:0ee289161a2a 49 val=0x00;
rohangala 3:0ee289161a2a 50 int ret = ethernet.init(MAC_Addr);
rohangala 3:0ee289161a2a 51
rohangala 3:0ee289161a2a 52 if (!ret)
rohangala 3:0ee289161a2a 53 {
rohangala 3:0ee289161a2a 54 pc.printf("Initialized, MAC: %s\r\n", ethernet.getMACAddress());
rohangala 3:0ee289161a2a 55 ret = ethernet.connect();
rohangala 3:0ee289161a2a 56 if (!ret)
rohangala 3:0ee289161a2a 57 {
rohangala 3:0ee289161a2a 58 pc.printf("IP: %s, MASK: %s, GW: %s\r\n",
rohangala 3:0ee289161a2a 59 ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway());
rohangala 3:0ee289161a2a 60 }
rohangala 3:0ee289161a2a 61 else
rohangala 3:0ee289161a2a 62 {
rohangala 3:0ee289161a2a 63 pc.printf("Error ethernet.connect() - ret = %d\r\n", ret);
rohangala 3:0ee289161a2a 64 val=0xff;
rohangala 3:0ee289161a2a 65 }
rohangala 3:0ee289161a2a 66
rohangala 3:0ee289161a2a 67 }
rohangala 3:0ee289161a2a 68 else
rohangala 3:0ee289161a2a 69 {
rohangala 3:0ee289161a2a 70 pc.printf("Error ethernet.init() - ret = %d\r\n", ret);
rohangala 3:0ee289161a2a 71 val=0xff;;
rohangala 3:0ee289161a2a 72 }
rohangala 3:0ee289161a2a 73
rohangala 3:0ee289161a2a 74
rohangala 3:0ee289161a2a 75 TCPSocketConnection sock;
rohangala 3:0ee289161a2a 76 sock.connect("api.thingspeak.com", 80);
rohangala 3:0ee289161a2a 77 if(sock.is_connected())
rohangala 3:0ee289161a2a 78 pc.printf("Socket Connected\n\r");
rohangala 3:0ee289161a2a 79 else
rohangala 3:0ee289161a2a 80 pc.printf("Socket NoT Connected\n\r");
rohangala 3:0ee289161a2a 81
rohangala 3:0ee289161a2a 82
rohangala 3:0ee289161a2a 83
rohangala 3:0ee289161a2a 84 char buffer[300];
rohangala 3:0ee289161a2a 85 int ret_t;
rohangala 3:0ee289161a2a 86 char http_cmd[256];
rohangala 3:0ee289161a2a 87 while(val==0x00)
rohangala 3:0ee289161a2a 88 {
rohangala 0:98be6bf27557 89 if(micro.readable())
rohangala 0:98be6bf27557 90 {
rohangala 1:630aef63181c 91 val=(micro.getc());
rohangala 3:0ee289161a2a 92 if(val == 0x01)
rohangala 1:630aef63181c 93 {
rohangala 3:0ee289161a2a 94 pc.printf("%.2f ",luxm());
rohangala 3:0ee289161a2a 95
rohangala 3:0ee289161a2a 96
rohangala 3:0ee289161a2a 97 sprintf(http_cmd,"GET /update?key=L055HRYFCBL1LTM2&field1= %.2f HTTP/1.0\n\n",luxm());
rohangala 3:0ee289161a2a 98 printf("Running - %s\r\n",http_cmd);
rohangala 3:0ee289161a2a 99 sock.send_all(http_cmd, sizeof(http_cmd)-1);
rohangala 3:0ee289161a2a 100
rohangala 3:0ee289161a2a 101 ret_t = sock.receive(buffer, sizeof(buffer)-1);
rohangala 3:0ee289161a2a 102 buffer[ret_t] = '\0';
rohangala 3:0ee289161a2a 103 printf("Received %d chars from server:\n%s\r\n", ret_t, buffer);
rohangala 3:0ee289161a2a 104
rohangala 1:630aef63181c 105 }
rohangala 0:98be6bf27557 106
rohangala 3:0ee289161a2a 107 else if(val == 0x02)
rohangala 1:630aef63181c 108 {
rohangala 3:0ee289161a2a 109 pc.printf("%.2f ",ax*3.3);
rohangala 1:630aef63181c 110
rohangala 3:0ee289161a2a 111
rohangala 3:0ee289161a2a 112 sprintf(http_cmd,"GET /update?key=L055HRYFCBL1LTM2&field2= %.2f HTTP/1.0\n\n",ax*3.3);
rohangala 3:0ee289161a2a 113 printf("Running - %s\r\n",http_cmd);
rohangala 3:0ee289161a2a 114 sock.send_all(http_cmd, sizeof(http_cmd)-1);
rohangala 3:0ee289161a2a 115
rohangala 3:0ee289161a2a 116 ret_t = sock.receive(buffer, sizeof(buffer)-1);
rohangala 3:0ee289161a2a 117 buffer[ret_t] = '\0';
rohangala 3:0ee289161a2a 118 printf("Received %d chars from server:\n%s\r\n", ret_t, buffer);
rohangala 3:0ee289161a2a 119
rohangala 1:630aef63181c 120 }
rohangala 0:98be6bf27557 121
rohangala 3:0ee289161a2a 122 else
rohangala 1:630aef63181c 123 val=0x00;
rohangala 1:630aef63181c 124
rohangala 1:630aef63181c 125 wait(2);
rohangala 3:0ee289161a2a 126
rohangala 0:98be6bf27557 127 }
rohangala 3:0ee289161a2a 128
rohangala 3:0ee289161a2a 129 }
rohangala 3:0ee289161a2a 130
rohangala 3:0ee289161a2a 131 sock.close();
rohangala 3:0ee289161a2a 132
rohangala 3:0ee289161a2a 133 ethernet.disconnect();
rohangala 3:0ee289161a2a 134 printf("Socket Closed");
rohangala 0:98be6bf27557 135 }
rohangala 0:98be6bf27557 136 }