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
Diff: slave.h
- Revision:
- 1:b5c534165dfe
- Parent:
- 0:88d3b9015f7c
- Child:
- 2:6bfe732ba6bc
--- a/slave.h Mon Feb 26 11:25:59 2018 +0000 +++ b/slave.h Wed Mar 14 07:59:21 2018 +0000 @@ -1,22 +1,45 @@ #pragma once #include "mbed.h" +#include "temperature.h" +#include "buzzer_music.h" +#include "lcd.h" +#include "rgb.h" +#include "potentiometer.h" namespace ProjectOne{ class Slave{ public: - Slave(void); + Slave(int slave_id, Temperature *temperature, Potentiometer *potentiometer, LCD *lcd, RGB *rgb, BuzzerMusic *buzzerMusic); void handleIncomingFrame(void); + private: enum slaveStates{ + STATE_INIT, STATE_WAIT_FOR_FRAME, STATE_HANDLE_FRAME, - STATE_HANDLE_REQUEST + STATE_HANDLE_REQUEST, + STATE_SEND_ACKNOWLEDGEMENT }; slaveStates CurrentSlaveState; + + const static char *MASK; + const static char *GATEWAY; + + int slaveId; + + Temperature *slaveTemp; + Potentiometer *slavePot; + LCD *slaveLcd; + RGB *slaveRgb; + BuzzerMusic *slaveBuzzerMusic; + + float temperatureValue; + float potentiometerValue; + string response; };