Ethernet

Dependencies:   ASDL_using_Ethernet MMA8451Q mbed

Committer:
RITVIK_DAVE
Date:
Sat Feb 25 11:59:22 2017 +0000
Revision:
0:13b0a84d31ec
Ethernet

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RITVIK_DAVE 0:13b0a84d31ec 1 #include "mbed.h"
RITVIK_DAVE 0:13b0a84d31ec 2 #include "WIZnetInterface.h"
RITVIK_DAVE 0:13b0a84d31ec 3 //MAC address of sheild
RITVIK_DAVE 0:13b0a84d31ec 4 unsigned char MAC_Addr[6] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
RITVIK_DAVE 0:13b0a84d31ec 5 char* ServerIP = "192.168.0.2"; //server ip were server is set
RITVIK_DAVE 0:13b0a84d31ec 6 //public and private key of stream
RITVIK_DAVE 0:13b0a84d31ec 7 char* public_key = "YmYBg4do89c4MvQoLxXBhb6DpD9";
RITVIK_DAVE 0:13b0a84d31ec 8 char* private_key = "YK6DmdejWAF0Bwdj5pzGH7vP8Pn";
RITVIK_DAVE 0:13b0a84d31ec 9 int Count = 15;
RITVIK_DAVE 0:13b0a84d31ec 10 int x,y;
RITVIK_DAVE 0:13b0a84d31ec 11 Serial pc(USBTX, USBRX);
RITVIK_DAVE 0:13b0a84d31ec 12 SPI spi(PTD2,PTD3,PTD1);
RITVIK_DAVE 0:13b0a84d31ec 13 //wiznet object
RITVIK_DAVE 0:13b0a84d31ec 14 WIZnetInterface ethernet(&spi,PTD0,PTA20);
RITVIK_DAVE 0:13b0a84d31ec 15 //analog input
RITVIK_DAVE 0:13b0a84d31ec 16 AnalogIn pot(PTB1);
RITVIK_DAVE 0:13b0a84d31ec 17 AnalogIn ldr(PTB0);
RITVIK_DAVE 0:13b0a84d31ec 18 int writtenLen,eth;
RITVIK_DAVE 0:13b0a84d31ec 19 int main()
RITVIK_DAVE 0:13b0a84d31ec 20 {
RITVIK_DAVE 0:13b0a84d31ec 21 //Set serial port baudrate speed: 9600
RITVIK_DAVE 0:13b0a84d31ec 22 pc.baud(9600);
RITVIK_DAVE 0:13b0a84d31ec 23 pc.printf("Start\r\n");
RITVIK_DAVE 0:13b0a84d31ec 24 while(1)
RITVIK_DAVE 0:13b0a84d31ec 25 {
RITVIK_DAVE 0:13b0a84d31ec 26 //pc.printf("%d\r\n",x);
RITVIK_DAVE 0:13b0a84d31ec 27 int ret = ethernet.init(MAC_Addr);
RITVIK_DAVE 0:13b0a84d31ec 28 if (!ret)
RITVIK_DAVE 0:13b0a84d31ec 29 {
RITVIK_DAVE 0:13b0a84d31ec 30 //print MAC address of device
RITVIK_DAVE 0:13b0a84d31ec 31 pc.printf("Initialized, MAC: %s\r\n", ethernet.getMACAddress());
RITVIK_DAVE 0:13b0a84d31ec 32 ret = ethernet.connect();
RITVIK_DAVE 0:13b0a84d31ec 33 if (!ret)
RITVIK_DAVE 0:13b0a84d31ec 34 {
RITVIK_DAVE 0:13b0a84d31ec 35 //print IP alloted and details obtianed from network
RITVIK_DAVE 0:13b0a84d31ec 36 pc.printf("IP: %s, MASK: %s, GW: %s\r\n",
RITVIK_DAVE 0:13b0a84d31ec 37 ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway());
RITVIK_DAVE 0:13b0a84d31ec 38 }
RITVIK_DAVE 0:13b0a84d31ec 39 else
RITVIK_DAVE 0:13b0a84d31ec 40 {
RITVIK_DAVE 0:13b0a84d31ec 41 pc.printf("Error ethernet.connect() - ret = %d\r\n", ret);
RITVIK_DAVE 0:13b0a84d31ec 42 exit(0);
RITVIK_DAVE 0:13b0a84d31ec 43 }
RITVIK_DAVE 0:13b0a84d31ec 44 }
RITVIK_DAVE 0:13b0a84d31ec 45 else
RITVIK_DAVE 0:13b0a84d31ec 46 {
RITVIK_DAVE 0:13b0a84d31ec 47 pc.printf("Error ethernet.init() - ret = %d\r\n", ret);
RITVIK_DAVE 0:13b0a84d31ec 48 exit(0);
RITVIK_DAVE 0:13b0a84d31ec 49 }
RITVIK_DAVE 0:13b0a84d31ec 50 //create TCP socket
RITVIK_DAVE 0:13b0a84d31ec 51 TCPSocketConnection sock;
RITVIK_DAVE 0:13b0a84d31ec 52 while(1){
RITVIK_DAVE 0:13b0a84d31ec 53 x=255*pot.read();
RITVIK_DAVE 0:13b0a84d31ec 54 y=255*ldr.read();
RITVIK_DAVE 0:13b0a84d31ec 55 //connect the server to port 8080
RITVIK_DAVE 0:13b0a84d31ec 56 sock.connect(ServerIP, 8080);
RITVIK_DAVE 0:13b0a84d31ec 57 if(sock.is_connected())
RITVIK_DAVE 0:13b0a84d31ec 58 pc.printf("Socket Connected\n\r");
RITVIK_DAVE 0:13b0a84d31ec 59 else
RITVIK_DAVE 0:13b0a84d31ec 60 pc.printf("Socket NoT Connected\n\r");
RITVIK_DAVE 0:13b0a84d31ec 61 //create character buffer for URL
RITVIK_DAVE 0:13b0a84d31ec 62 char buffer[300];
RITVIK_DAVE 0:13b0a84d31ec 63 int ret_t;
RITVIK_DAVE 0:13b0a84d31ec 64 char http_cmd[100];
RITVIK_DAVE 0:13b0a84d31ec 65 //make URL
RITVIK_DAVE 0:13b0a84d31ec 66 sprintf(http_cmd,"GET /input/%s?private_key=%s&pot=%d&ldr=%d HTTP/1.0\n\n",public_key,private_key,x,y);
RITVIK_DAVE 0:13b0a84d31ec 67 printf("sending %d characters",strlen(http_cmd));
RITVIK_DAVE 0:13b0a84d31ec 68 printf("Running - %s\r\n",http_cmd);
RITVIK_DAVE 0:13b0a84d31ec 69 writtenLen = sock.send_all(http_cmd, strlen(http_cmd));
RITVIK_DAVE 0:13b0a84d31ec 70 //print the result of URL GET method
RITVIK_DAVE 0:13b0a84d31ec 71 if(writtenLen == -1)
RITVIK_DAVE 0:13b0a84d31ec 72 printf("sending failed\r\n");
RITVIK_DAVE 0:13b0a84d31ec 73 else
RITVIK_DAVE 0:13b0a84d31ec 74 printf("sending success\r\n");
RITVIK_DAVE 0:13b0a84d31ec 75 eth=ret_t = sock.receive(buffer, strlen(buffer));
RITVIK_DAVE 0:13b0a84d31ec 76 buffer[ret_t] = '\0';
RITVIK_DAVE 0:13b0a84d31ec 77 printf("Received %d chars from server:\r\n%s\r\n", ret_t, buffer);
RITVIK_DAVE 0:13b0a84d31ec 78 sock.close();
RITVIK_DAVE 0:13b0a84d31ec 79 //ethernet.disconnect();
RITVIK_DAVE 0:13b0a84d31ec 80 pc.printf("Socket Closed\r\n");
RITVIK_DAVE 0:13b0a84d31ec 81 wait(3);
RITVIK_DAVE 0:13b0a84d31ec 82 }
RITVIK_DAVE 0:13b0a84d31ec 83 }
RITVIK_DAVE 0:13b0a84d31ec 84 }