Part One of my Project Course. Implementation of simple I/O and a custom defined protocol over UDP/IP.
Dependencies: C12832 LM75B mbed EthernetInterface mbed-rtos
master.h@1:b5c534165dfe, 2018-03-14 (annotated)
- Committer:
- bertgereels
- Date:
- Wed Mar 14 07:59:21 2018 +0000
- Revision:
- 1:b5c534165dfe
- Parent:
- 0:88d3b9015f7c
- Child:
- 2:6bfe732ba6bc
Added slave state machine.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bertgereels | 0:88d3b9015f7c | 1 | #pragma once |
bertgereels | 0:88d3b9015f7c | 2 | |
bertgereels | 0:88d3b9015f7c | 3 | #include "mbed.h" |
bertgereels | 0:88d3b9015f7c | 4 | |
bertgereels | 0:88d3b9015f7c | 5 | #define MAX_COMMAND_LENGTH 20 |
bertgereels | 0:88d3b9015f7c | 6 | |
bertgereels | 0:88d3b9015f7c | 7 | namespace ProjectOne{ |
bertgereels | 0:88d3b9015f7c | 8 | |
bertgereels | 0:88d3b9015f7c | 9 | class Master{ |
bertgereels | 0:88d3b9015f7c | 10 | public: |
bertgereels | 1:b5c534165dfe | 11 | Master(int master_id); |
bertgereels | 0:88d3b9015f7c | 12 | void sendMessageToPc(char *message_to_pc); |
bertgereels | 0:88d3b9015f7c | 13 | void handlePcData(void); |
bertgereels | 0:88d3b9015f7c | 14 | |
bertgereels | 0:88d3b9015f7c | 15 | private: |
bertgereels | 0:88d3b9015f7c | 16 | enum masterStates{ |
bertgereels | 0:88d3b9015f7c | 17 | STATE_INIT, |
bertgereels | 1:b5c534165dfe | 18 | STATE_RECEIVING_FROM_PC, |
bertgereels | 1:b5c534165dfe | 19 | STATE_HANDLE_ID, |
bertgereels | 1:b5c534165dfe | 20 | STATE_SEND_UDP_PACKET, |
bertgereels | 1:b5c534165dfe | 21 | STATE_HANDLE_RESPONSE, |
bertgereels | 1:b5c534165dfe | 22 | STATE_ERROR_STATE |
bertgereels | 0:88d3b9015f7c | 23 | }; |
bertgereels | 0:88d3b9015f7c | 24 | |
bertgereels | 0:88d3b9015f7c | 25 | masterStates CurrentMasterState; |
bertgereels | 1:b5c534165dfe | 26 | |
bertgereels | 1:b5c534165dfe | 27 | char inputCommandArray[20]; |
bertgereels | 1:b5c534165dfe | 28 | char client_id[3]; |
bertgereels | 1:b5c534165dfe | 29 | int char_counter_command, char_counter_id; |
bertgereels | 0:88d3b9015f7c | 30 | |
bertgereels | 1:b5c534165dfe | 31 | int masterId; |
bertgereels | 1:b5c534165dfe | 32 | |
bertgereels | 1:b5c534165dfe | 33 | const static char *MASK; |
bertgereels | 1:b5c534165dfe | 34 | const static char *GATEWAY; |
bertgereels | 0:88d3b9015f7c | 35 | |
bertgereels | 0:88d3b9015f7c | 36 | }; |
bertgereels | 0:88d3b9015f7c | 37 | |
bertgereels | 0:88d3b9015f7c | 38 | }; |