Taak Seppe De Witte

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "EthernetInterface.h"
00003 
00004 
00005 DigitalOut led(LED1);
00006 
00007 int main() //Werkt samen met Aaron Degroote
00008 {
00009     EthernetInterface eth;
00010     eth.set_network("192.168.0.45","255.255.255.0","192.168.0.1");
00011     eth.connect();
00012     printf("The Server IP address is '%s'\n\r", eth.get_ip_address());
00013     TCPServer srv(&eth);  
00014     srv.bind(4000);
00015     srv.listen();
00016     
00017     while(true){
00018         TCPSocket client;
00019         SocketAddress clientaddress;
00020         char *buffer = "Hello TCP client!\r\n";
00021         
00022         srv.accept(&client, &clientaddress);
00023         
00024         printf("Accepted %s:%d\n\r", clientaddress.get_ip_address(), 
00025                     clientaddress.get_port());
00026                     
00027         client.send(buffer, 256);
00028         
00029         
00030         
00031         char buffer2[64];
00032         int count2 = client.recv(buffer2, sizeof buffer2);
00033         
00034         uint16_t TempClient = ((buffer2[1] & 0xFF) << 8 ) | (buffer2[2] & 0xFF);
00035         TempClient =  TempClient >> 5;
00036         
00037             
00038         if (TempClient & (1 << 10)){
00039             
00040             TempClient |= 0xFC00;
00041             
00042             }
00043 
00044         //temperatuur naar een normaal leesbaar getal omzetten in °C
00045          float temperatuur = TempClient * 0.125;
00046         
00047         printf("received: %d\r\n", count2);
00048         printf("PWM Waarde PotentioMeter: %d\r\n", buffer2[0]);
00049         printf("Temperatuurswaarde LM75B: %d\r\n", temperatuur);
00050         
00051         client.close();
00052         
00053     }
00054 }