From 25dc1b479349bc5dc7a414d72cab1ea258602979 Mon Sep 17 00:00:00 2001 From: Eggert Jung Date: Sun, 13 Feb 2022 20:28:24 +0100 Subject: [PATCH] move notaus to seperate file --- main.c | 60 ------------------------------------------------------------ notaus.c | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ notaus.h | 6 ++++++ 3 files changed, 69 insertions(+), 60 deletions(-) create mode 100644 notaus.c create mode 100644 notaus.h diff --git a/main.c b/main.c index 330ba95..4bffa44 100644 --- a/main.c +++ b/main.c @@ -87,66 +87,6 @@ void send_abzug_speed(void){ mqtt_pub(&mqtt_client, "/Filamentanlage/05_Abzug/state/abzug/onoff", msg, strlen(msg)); } -void do_notaus(){ - if(!read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL) || read_Input(IN_NOTAUS_DISPLAY, LEVEL)){ - /* at least on pressed */ - ioHelperSetBit(outStates, AMPEL_ROT, 1); - ioHelperSetBit(outStates, AMPEL_GELB, 0); - ioHelperSetBit(outStates, AMPEL_GRUEN, 0); - - set_Output(LED_GRN_NOTAUS_SCHRANK, OFF); - set_Output(LED_GRN_NOTAUS_ANLAGE, OFF); - set_Output(LED_GRN_NOTAUS_DISPLAY, OFF); - - if(!read_Input(IN_NOTAUS_ANLAGE, LEVEL)){ - set_Output(LED_ROT_NOTAUS_ANLAGE, BLINK); - set_Output(LED_ROT_NOTAUS_SCHRANK, ON); - set_Output(LED_ROT_NOTAUS_DISPLAY, ON); - } - - if(read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ - set_Output(LED_ROT_NOTAUS_ANLAGE, ON); - set_Output(LED_ROT_NOTAUS_SCHRANK, BLINK); - set_Output(LED_ROT_NOTAUS_DISPLAY, ON); - } - - if(read_Input(IN_NOTAUS_DISPLAY, LEVEL)){ - set_Output(LED_ROT_NOTAUS_ANLAGE, ON); - set_Output(LED_ROT_NOTAUS_SCHRANK, ON); - set_Output(LED_ROT_NOTAUS_DISPLAY, BLINK); - } - - } - else if(!read_Input(IN_ANLAGE_EIN, LEVEL)){ - /* nothing pressed, but power not on */ - ioHelperSetBit(outStates, AMPEL_ROT, 0); - ioHelperSetBit(outStates, AMPEL_GELB, 1); - ioHelperSetBit(outStates, AMPEL_GRUEN, 0); - - set_Output(LED_ROT_NOTAUS_ANLAGE, ON); - set_Output(LED_ROT_NOTAUS_SCHRANK, ON); - set_Output(LED_ROT_NOTAUS_DISPLAY, ON); - - set_Output(LED_GRN_NOTAUS_SCHRANK, ON); - set_Output(LED_GRN_NOTAUS_ANLAGE, ON); - set_Output(LED_GRN_NOTAUS_DISPLAY, ON); - } - else{ - /* powered on */ - ioHelperSetBit(outStates, AMPEL_ROT, 0); - ioHelperSetBit(outStates, AMPEL_GELB, 0); - ioHelperSetBit(outStates, AMPEL_GRUEN, 1); - - set_Output(LED_GRN_NOTAUS_SCHRANK, ON); - set_Output(LED_GRN_NOTAUS_ANLAGE, ON); - set_Output(LED_GRN_NOTAUS_DISPLAY, ON); - - set_Output(LED_ROT_NOTAUS_ANLAGE, OFF); - set_Output(LED_ROT_NOTAUS_SCHRANK, OFF); - set_Output(LED_ROT_NOTAUS_DISPLAY, OFF); - } -} - int main() { // INIT MCU diff --git a/notaus.c b/notaus.c new file mode 100644 index 0000000..cccc8f6 --- /dev/null +++ b/notaus.c @@ -0,0 +1,63 @@ +#include + +void do_notaus(){ + if(!read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL) || read_Input(IN_NOTAUS_DISPLAY, LEVEL)){ + /* at least on pressed */ + ioHelperSetBit(outStates, AMPEL_ROT, 1); + ioHelperSetBit(outStates, AMPEL_GELB, 0); + ioHelperSetBit(outStates, AMPEL_GRUEN, 0); + + set_Output(LED_GRN_NOTAUS_SCHRANK, OFF); + set_Output(LED_GRN_NOTAUS_ANLAGE, OFF); + set_Output(LED_GRN_NOTAUS_DISPLAY, OFF); + + if(!read_Input(IN_NOTAUS_ANLAGE, LEVEL)){ + set_Output(LED_ROT_NOTAUS_ANLAGE, BLINK); + set_Output(LED_ROT_NOTAUS_SCHRANK, ON); + set_Output(LED_ROT_NOTAUS_DISPLAY, ON); + } + + if(read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ + set_Output(LED_ROT_NOTAUS_ANLAGE, ON); + set_Output(LED_ROT_NOTAUS_SCHRANK, BLINK); + set_Output(LED_ROT_NOTAUS_DISPLAY, ON); + } + + if(read_Input(IN_NOTAUS_DISPLAY, LEVEL)){ + set_Output(LED_ROT_NOTAUS_ANLAGE, ON); + set_Output(LED_ROT_NOTAUS_SCHRANK, ON); + set_Output(LED_ROT_NOTAUS_DISPLAY, BLINK); + } + + } + else if(!read_Input(IN_ANLAGE_EIN, LEVEL)){ + /* nothing pressed, but power not on */ + ioHelperSetBit(outStates, AMPEL_ROT, 0); + ioHelperSetBit(outStates, AMPEL_GELB, 1); + ioHelperSetBit(outStates, AMPEL_GRUEN, 0); + + set_Output(LED_ROT_NOTAUS_ANLAGE, ON); + set_Output(LED_ROT_NOTAUS_SCHRANK, ON); + set_Output(LED_ROT_NOTAUS_DISPLAY, ON); + + set_Output(LED_GRN_NOTAUS_SCHRANK, ON); + set_Output(LED_GRN_NOTAUS_ANLAGE, ON); + set_Output(LED_GRN_NOTAUS_DISPLAY, ON); + } + else{ + /* powered on */ + ioHelperSetBit(outStates, AMPEL_ROT, 0); + ioHelperSetBit(outStates, AMPEL_GELB, 0); + ioHelperSetBit(outStates, AMPEL_GRUEN, 1); + + set_Output(LED_GRN_NOTAUS_SCHRANK, ON); + set_Output(LED_GRN_NOTAUS_ANLAGE, ON); + set_Output(LED_GRN_NOTAUS_DISPLAY, ON); + + set_Output(LED_ROT_NOTAUS_ANLAGE, OFF); + set_Output(LED_ROT_NOTAUS_SCHRANK, OFF); + set_Output(LED_ROT_NOTAUS_DISPLAY, OFF); + } +} + + diff --git a/notaus.h b/notaus.h new file mode 100644 index 0000000..f17c7e4 --- /dev/null +++ b/notaus.h @@ -0,0 +1,6 @@ +#ifndef _NOTAUS_H_ +#define _NOTAUS_H_ + +void do_notaus(void); + +#endif