Ethernet
Dependencies: ASDL_using_Ethernet MMA8451Q mbed
main.cpp@0:13b0a84d31ec, 2017-02-25 (annotated)
- Committer:
- RITVIK_DAVE
- Date:
- Sat Feb 25 11:59:22 2017 +0000
- Revision:
- 0:13b0a84d31ec
Ethernet
Who changed what in which revision?
User | Revision | Line number | New 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 | } |