Seppe De Witte
/
tcp-server-seppedewitte
Taak Seppe De Witte
main.cpp@0:590f58046681, 2020-11-07 (annotated)
- Committer:
- seppedewitte
- Date:
- Sat Nov 07 17:18:21 2020 +0000
- Revision:
- 0:590f58046681
TCP taak van Seppe De Witte; ;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
seppedewitte | 0:590f58046681 | 1 | #include "mbed.h" |
seppedewitte | 0:590f58046681 | 2 | #include "EthernetInterface.h" |
seppedewitte | 0:590f58046681 | 3 | |
seppedewitte | 0:590f58046681 | 4 | |
seppedewitte | 0:590f58046681 | 5 | DigitalOut led(LED1); |
seppedewitte | 0:590f58046681 | 6 | |
seppedewitte | 0:590f58046681 | 7 | int main() //Werkt samen met Aaron Degroote |
seppedewitte | 0:590f58046681 | 8 | { |
seppedewitte | 0:590f58046681 | 9 | EthernetInterface eth; |
seppedewitte | 0:590f58046681 | 10 | eth.set_network("192.168.0.45","255.255.255.0","192.168.0.1"); |
seppedewitte | 0:590f58046681 | 11 | eth.connect(); |
seppedewitte | 0:590f58046681 | 12 | printf("The Server IP address is '%s'\n\r", eth.get_ip_address()); |
seppedewitte | 0:590f58046681 | 13 | TCPServer srv(ð); |
seppedewitte | 0:590f58046681 | 14 | srv.bind(4000); |
seppedewitte | 0:590f58046681 | 15 | srv.listen(); |
seppedewitte | 0:590f58046681 | 16 | |
seppedewitte | 0:590f58046681 | 17 | while(true){ |
seppedewitte | 0:590f58046681 | 18 | TCPSocket client; |
seppedewitte | 0:590f58046681 | 19 | SocketAddress clientaddress; |
seppedewitte | 0:590f58046681 | 20 | char *buffer = "Hello TCP client!\r\n"; |
seppedewitte | 0:590f58046681 | 21 | |
seppedewitte | 0:590f58046681 | 22 | srv.accept(&client, &clientaddress); |
seppedewitte | 0:590f58046681 | 23 | |
seppedewitte | 0:590f58046681 | 24 | printf("Accepted %s:%d\n\r", clientaddress.get_ip_address(), |
seppedewitte | 0:590f58046681 | 25 | clientaddress.get_port()); |
seppedewitte | 0:590f58046681 | 26 | |
seppedewitte | 0:590f58046681 | 27 | client.send(buffer, 256); |
seppedewitte | 0:590f58046681 | 28 | |
seppedewitte | 0:590f58046681 | 29 | |
seppedewitte | 0:590f58046681 | 30 | |
seppedewitte | 0:590f58046681 | 31 | char buffer2[64]; |
seppedewitte | 0:590f58046681 | 32 | int count2 = client.recv(buffer2, sizeof buffer2); |
seppedewitte | 0:590f58046681 | 33 | |
seppedewitte | 0:590f58046681 | 34 | uint16_t TempClient = ((buffer2[1] & 0xFF) << 8 ) | (buffer2[2] & 0xFF); |
seppedewitte | 0:590f58046681 | 35 | TempClient = TempClient >> 5; |
seppedewitte | 0:590f58046681 | 36 | |
seppedewitte | 0:590f58046681 | 37 | |
seppedewitte | 0:590f58046681 | 38 | if (TempClient & (1 << 10)){ |
seppedewitte | 0:590f58046681 | 39 | |
seppedewitte | 0:590f58046681 | 40 | TempClient |= 0xFC00; |
seppedewitte | 0:590f58046681 | 41 | |
seppedewitte | 0:590f58046681 | 42 | } |
seppedewitte | 0:590f58046681 | 43 | |
seppedewitte | 0:590f58046681 | 44 | //temperatuur naar een normaal leesbaar getal omzetten in °C |
seppedewitte | 0:590f58046681 | 45 | float temperatuur = TempClient * 0.125; |
seppedewitte | 0:590f58046681 | 46 | |
seppedewitte | 0:590f58046681 | 47 | printf("received: %d\r\n", count2); |
seppedewitte | 0:590f58046681 | 48 | printf("PWM Waarde PotentioMeter: %d\r\n", buffer2[0]); |
seppedewitte | 0:590f58046681 | 49 | printf("Temperatuurswaarde LM75B: %d\r\n", temperatuur); |
seppedewitte | 0:590f58046681 | 50 | |
seppedewitte | 0:590f58046681 | 51 | client.close(); |
seppedewitte | 0:590f58046681 | 52 | |
seppedewitte | 0:590f58046681 | 53 | } |
seppedewitte | 0:590f58046681 | 54 | } |