Nico De Witte / Mbed 2 deprecated tcp_machine_vision_server_single_client

Dependencies:   C12832 EthernetInterface mbed-rtos mbed ConfigFile

Committer:
dwini
Date:
Wed Mar 11 10:26:35 2015 +0000
Revision:
4:339a85b66476
Parent:
3:254a2671a8e3
Child:
5:7a32c081a3fa
Add ability of external triggering.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dwini 0:bef69e35f486 1 #include "mbed.h"
dwini 0:bef69e35f486 2 #include "C12832.h"
dwini 1:8efef658d90b 3 #include "Log.h"
dwini 1:8efef658d90b 4 #include "TcpDaemon.h"
dwini 3:254a2671a8e3 5 #include "StatusIndicator.h"
dwini 0:bef69e35f486 6
dwini 1:8efef658d90b 7 #define TCP_SERVER_PORT 6666
dwini 1:8efef658d90b 8
dwini 0:bef69e35f486 9 #define LCD_LINE_HEIGHT 12
dwini 0:bef69e35f486 10
dwini 0:bef69e35f486 11 Serial pc(USBTX,USBRX);
dwini 1:8efef658d90b 12 DigitalOut error_led(LED1);
dwini 0:bef69e35f486 13 C12832 lcd(p5, p7, p6, p8, p11);
dwini 0:bef69e35f486 14
dwini 1:8efef658d90b 15 using namespace MachineVision;
dwini 1:8efef658d90b 16
dwini 0:bef69e35f486 17 void setLcdServerInfo(char * ip) {
dwini 0:bef69e35f486 18 lcd.cls();
dwini 0:bef69e35f486 19 lcd.locate(0,0);
dwini 1:8efef658d90b 20 lcd.printf("IP: %s", ip);
dwini 1:8efef658d90b 21 lcd.locate(0,14);
dwini 1:8efef658d90b 22 lcd.printf("Port: %d", TCP_SERVER_PORT);
dwini 0:bef69e35f486 23 }
dwini 0:bef69e35f486 24
dwini 0:bef69e35f486 25 int main (void) {
dwini 3:254a2671a8e3 26 StatusIndicator status_indicator(p23, p24, p25);
dwini 3:254a2671a8e3 27 // status_indicator.setStatus(OK);
dwini 0:bef69e35f486 28
dwini 0:bef69e35f486 29 pc.baud(115200);
dwini 3:254a2671a8e3 30
dwini 3:254a2671a8e3 31 // Setup ethernet interface
dwini 1:8efef658d90b 32 EthernetInterface eth;
dwini 1:8efef658d90b 33 Log::v("Requesting IP address from DHCP\r\n");
dwini 1:8efef658d90b 34 eth.init(); //Use DHCP
dwini 1:8efef658d90b 35
dwini 1:8efef658d90b 36 if (eth.connect() < 0) {
dwini 1:8efef658d90b 37 Log::w("Could not retrieve IP address from DHCP\r\n");
dwini 1:8efef658d90b 38 setLcdServerInfo("No ip address");
dwini 1:8efef658d90b 39 } else {
dwini 1:8efef658d90b 40 Log::v("IP Address is %s\r\n", eth.getIPAddress());
dwini 0:bef69e35f486 41
dwini 1:8efef658d90b 42 // Set ip on LCD
dwini 0:bef69e35f486 43 setLcdServerInfo(eth.getIPAddress());
dwini 1:8efef658d90b 44
dwini 1:8efef658d90b 45 // Start the daemon
dwini 4:339a85b66476 46 TcpDaemon daemon(TCP_SERVER_PORT, LED2, LED3, p14);
dwini 1:8efef658d90b 47 Log::v("TCP daemon listening @ TCP_SERVER_PORT = %d\r\n", TCP_SERVER_PORT);
dwini 1:8efef658d90b 48 daemon.startListening();
dwini 1:8efef658d90b 49 }
dwini 1:8efef658d90b 50
dwini 1:8efef658d90b 51 // Should never be reached
dwini 1:8efef658d90b 52 while (true) {
dwini 1:8efef658d90b 53 error_led = 1;
dwini 1:8efef658d90b 54 wait(0.25);
dwini 1:8efef658d90b 55 error_led = 0;
dwini 1:8efef658d90b 56 wait(0.25);
dwini 0:bef69e35f486 57 }
dwini 0:bef69e35f486 58 }