Program used to setup Ethernet Static IP Port
Dependencies: EthernetInterface mbed-rtos mbed
Ethernet Cat6 cable rom MCU to PC
main.cpp@0:31ba7a9a7743, 2018-05-05 (annotated)
- Committer:
- Rbinas
- Date:
- Sat May 05 21:03:36 2018 +0000
- Revision:
- 0:31ba7a9a7743
Set-Up Ethernet port
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Rbinas | 0:31ba7a9a7743 | 1 | |
Rbinas | 0:31ba7a9a7743 | 2 | //-----------Program used to Set-up Ethernet Static IPconfig-------------- |
Rbinas | 0:31ba7a9a7743 | 3 | //----------Use HW Group Utility to monitor actvity----------------------- |
Rbinas | 0:31ba7a9a7743 | 4 | #include "mbed.h" |
Rbinas | 0:31ba7a9a7743 | 5 | #include "EthernetInterface.h" |
Rbinas | 0:31ba7a9a7743 | 6 | DigitalOut myled(LED1); |
Rbinas | 0:31ba7a9a7743 | 7 | DigitalOut myled2(LED2); |
Rbinas | 0:31ba7a9a7743 | 8 | Serial pc(USBTX, USBRX); |
Rbinas | 0:31ba7a9a7743 | 9 | //-------------Set Ethernet---------------------------- |
Rbinas | 0:31ba7a9a7743 | 10 | static const char* mbedIp = "192.168.168.105"; //IP |
Rbinas | 0:31ba7a9a7743 | 11 | static const char* mbedMask = "255.255.255.0"; // Mask |
Rbinas | 0:31ba7a9a7743 | 12 | static const char* mbedGateway = "192.168.1.1"; //Gateway |
Rbinas | 0:31ba7a9a7743 | 13 | const int ECHO_SERVER_PORT = 5000; |
Rbinas | 0:31ba7a9a7743 | 14 | char buffer[256]; |
Rbinas | 0:31ba7a9a7743 | 15 | EthernetInterface eth; |
Rbinas | 0:31ba7a9a7743 | 16 | TCPSocketServer server; |
Rbinas | 0:31ba7a9a7743 | 17 | TCPSocketConnection client; |
Rbinas | 0:31ba7a9a7743 | 18 | //--------------------------------------------------------------------- |
Rbinas | 0:31ba7a9a7743 | 19 | int main() |
Rbinas | 0:31ba7a9a7743 | 20 | { |
Rbinas | 0:31ba7a9a7743 | 21 | |
Rbinas | 0:31ba7a9a7743 | 22 | |
Rbinas | 0:31ba7a9a7743 | 23 | eth.init(mbedIp,mbedMask,mbedGateway); //Use these parameters for static IP |
Rbinas | 0:31ba7a9a7743 | 24 | eth.connect(); |
Rbinas | 0:31ba7a9a7743 | 25 | server.bind(ECHO_SERVER_PORT); |
Rbinas | 0:31ba7a9a7743 | 26 | server.listen(); |
Rbinas | 0:31ba7a9a7743 | 27 | |
Rbinas | 0:31ba7a9a7743 | 28 | while (true) |
Rbinas | 0:31ba7a9a7743 | 29 | { |
Rbinas | 0:31ba7a9a7743 | 30 | |
Rbinas | 0:31ba7a9a7743 | 31 | server.accept(client); |
Rbinas | 0:31ba7a9a7743 | 32 | //-------------Test sending from MCU to PC-------------------------- |
Rbinas | 0:31ba7a9a7743 | 33 | client.send("Hello",5); |
Rbinas | 0:31ba7a9a7743 | 34 | client.send("\n",1); |
Rbinas | 0:31ba7a9a7743 | 35 | client.send("World",5); |
Rbinas | 0:31ba7a9a7743 | 36 | client.send("\n",1); |
Rbinas | 0:31ba7a9a7743 | 37 | |
Rbinas | 0:31ba7a9a7743 | 38 | while (true) |
Rbinas | 0:31ba7a9a7743 | 39 | { |
Rbinas | 0:31ba7a9a7743 | 40 | |
Rbinas | 0:31ba7a9a7743 | 41 | char n = client.receive(buffer, sizeof(buffer)); |
Rbinas | 0:31ba7a9a7743 | 42 | //-------------Test sending from PC to MCU------------------- |
Rbinas | 0:31ba7a9a7743 | 43 | buffer[n] = '\0'; |
Rbinas | 0:31ba7a9a7743 | 44 | if (buffer[0] =='A') //send char A to turn on Led 1 |
Rbinas | 0:31ba7a9a7743 | 45 | {myled = 1;} |
Rbinas | 0:31ba7a9a7743 | 46 | if (buffer[0] =='B') //send char B to turnoff on Led 1 |
Rbinas | 0:31ba7a9a7743 | 47 | {myled = 0;} |
Rbinas | 0:31ba7a9a7743 | 48 | |
Rbinas | 0:31ba7a9a7743 | 49 | if (buffer[0] =='C')//send char C to turn on Led 2 |
Rbinas | 0:31ba7a9a7743 | 50 | {myled2 = 1;} |
Rbinas | 0:31ba7a9a7743 | 51 | if (buffer[0] =='D')//send char D to turn off Led 2 |
Rbinas | 0:31ba7a9a7743 | 52 | {myled2 = 0;} |
Rbinas | 0:31ba7a9a7743 | 53 | |
Rbinas | 0:31ba7a9a7743 | 54 | client.send("Test \n",4); |
Rbinas | 0:31ba7a9a7743 | 55 | |
Rbinas | 0:31ba7a9a7743 | 56 | } |
Rbinas | 0:31ba7a9a7743 | 57 | |
Rbinas | 0:31ba7a9a7743 | 58 | } |
Rbinas | 0:31ba7a9a7743 | 59 | } |