Example of code that returns information about the status of the Ethernet connection.
Dependencies: EthernetInterface mbed-rtos mbed
main.cpp
- Committer:
- edodm85
- Date:
- 2014-01-15
- Revision:
- 0:9e8b3fd68f6c
- Child:
- 2:922ee74b0192
File content as of revision 0:9e8b3fd68f6c:
/* * Author: Edoardo De Marchi * Date: 15/01/14 * Notes: OV7670 + FIFO AL422B camera test (TCP Ethernet) */ #include "mbed.h" #include "EthernetInterface.h" #include "eth_status.h" DigitalOut led1(LED1); DigitalOut led2(LED2); DigitalOut led3(LED3); DigitalOut led4(LED4); //ETHERNET #define ECHO_SERVER_PORT 2000 char* ip = "192.168.153.153"; // ip char* mask = "255.255.255.0"; // mask char* gateway = "192.168.153.100"; // gateway EthernetInterface eth; TCPSocketConnection client; TCPSocketServer server; int Init() { led1 = 0; led2 = 0; led3 = 0; led4 = 0; // ETHERNET eth.init(ip, mask, gateway); eth.connect(); server.bind(ECHO_SERVER_PORT); server.listen(1); printf("IP Address is %s\r\n", eth.getIPAddress()); printf("%s - Speed: %d Mbps\n", get_transmission_status(), get_connection_speed()); return 0; } int main() { bool eth_status = false; bool eth_status_temp = true; Init(); while(true) { printf("\nWait for new connection...\n"); server.accept(client); printf("Connection from: %s\n", client.get_address()); while (true) { if(!get_link_status()) { eth_status = true; }else { led1 = 0; } if(eth_status == eth_status_temp) { eth_status_temp = !eth_status; printf("Check cable connection\r\n"); led1 = 1; eth_status = false; } led2 = !led2; osDelay(500); } } }