add code for external notaus
This commit is contained in:
@@ -73,6 +73,9 @@ void ioHelperEdgeDetector(void);
|
||||
#define LED_ROT_NOTAUS_ANLAGE BitPE5
|
||||
#define LED_GRN_NOTAUS_SCHRANK BitPG5
|
||||
#define LED_ROT_NOTAUS_SCHRANK BitPE3
|
||||
#define LED_GRN_NOTAUS_ANLAGE_KALT BitPH3
|
||||
#define LED_ROT_NOTAUS_ANLAGE_KALT BitPH4
|
||||
|
||||
#define LED_PLC_OK BitPH5
|
||||
#define LED_BUS_OK BitPD4
|
||||
|
||||
@@ -90,11 +93,23 @@ void ioHelperEdgeDetector(void);
|
||||
|
||||
#define BitPinK0 8 //A8
|
||||
#define BitPinK1 9 //A9
|
||||
#define BitPinD3 10 //INO
|
||||
#define BitPinD2 11 //IN1
|
||||
#define BitPinK2 10 //A10
|
||||
#define BitPinK3 11 //A11
|
||||
#define BitPinK4 12 //A12
|
||||
#define BitPinK5 13 //A13
|
||||
#define BitPinK6 14 //A14
|
||||
#define BitPinK7 15 //A15
|
||||
|
||||
#define BitPinD7 16 //I16
|
||||
#define BitPinG2 17 //I17
|
||||
#define BitPinG1 18 //I18
|
||||
#define BitPinD3 19 //INO
|
||||
#define BitPinD2 20 //IN1
|
||||
|
||||
|
||||
#define IN_ANLAGE_EIN_INV BitPinF5
|
||||
#define IN_NOTAUS_ANLAGE BitPinF7
|
||||
#define IN_NOTAUS_ANLAGE_KALT BitPinK1
|
||||
#define IN_NOTAUS_SCHRANK BitPinK0
|
||||
|
||||
#endif
|
||||
|
||||
112
main.c
112
main.c
@@ -55,38 +55,92 @@ void IO_LIBRARY_Init(void) {
|
||||
}
|
||||
|
||||
void do_notaus(){
|
||||
if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // NOTAUS
|
||||
set_Output(LED_GRN_NOTAUS_SCHRANK, OFF); // disable green lamps
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE, OFF);
|
||||
if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL) || read_Input(IN_NOTAUS_ANLAGE_KALT, LEVEL)){
|
||||
/* at least one pressed */
|
||||
//notaus_state = POWER_OFF;
|
||||
|
||||
set_Output(LED_GRN_NOTAUS_SCHRANK, OFF);
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE, OFF);
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE_KALT, 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_ANLAGE_KALT, 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_ANLAGE_KALT, ON);
|
||||
}
|
||||
|
||||
if(read_Input(IN_NOTAUS_ANLAGE_KALT, LEVEL)){
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, ON);
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE_KALT, BLINK);
|
||||
}
|
||||
|
||||
}
|
||||
else if(read_Input(IN_ANLAGE_EIN_INV, LEVEL)){
|
||||
/* nothing pressed, but power not on */
|
||||
//notaus_state = ARMED;
|
||||
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, ON);
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE_KALT, ON);
|
||||
|
||||
set_Output(LED_GRN_NOTAUS_SCHRANK, ON);
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE_KALT, ON);
|
||||
}
|
||||
else{
|
||||
/* powered on */
|
||||
//notaus_state = POWER_ON;
|
||||
|
||||
set_Output(LED_GRN_NOTAUS_SCHRANK, ON);
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE_KALT, ON);
|
||||
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, OFF);
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, OFF);
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE_KALT, OFF);
|
||||
}
|
||||
|
||||
if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) && read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // both activated
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, BLINK);
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, BLINK);
|
||||
}
|
||||
else if(read_Input(IN_NOTAUS_ANLAGE, LEVEL)){ // top one activated
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, BLINK);
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, ON);
|
||||
}
|
||||
else if(read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // bottom one activated
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, BLINK);
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, ON);
|
||||
}
|
||||
else{ // none activated
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, OFF);
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, OFF);
|
||||
if(!read_Input(IN_ANLAGE_EIN_INV, LEVEL)){
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_GRN_NOTAUS_SCHRANK, ON);
|
||||
}
|
||||
else{
|
||||
set_Output(LED_GRN_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_GRN_NOTAUS_SCHRANK, ON);
|
||||
set_Output(LED_ROT_NOTAUS_ANLAGE, ON);
|
||||
set_Output(LED_ROT_NOTAUS_SCHRANK, ON);
|
||||
}
|
||||
}
|
||||
}
|
||||
//void do_notaus(){
|
||||
// if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // NOTAUS
|
||||
// set_Output(LED_GRN_NOTAUS_SCHRANK, OFF); // disable green lamps
|
||||
// set_Output(LED_GRN_NOTAUS_ANLAGE, OFF);
|
||||
// }
|
||||
//
|
||||
// if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) && read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // both activated
|
||||
// set_Output(LED_ROT_NOTAUS_ANLAGE, BLINK);
|
||||
// set_Output(LED_ROT_NOTAUS_SCHRANK, BLINK);
|
||||
// }
|
||||
// else if(read_Input(IN_NOTAUS_ANLAGE, LEVEL)){ // top one activated
|
||||
// set_Output(LED_ROT_NOTAUS_ANLAGE, BLINK);
|
||||
// set_Output(LED_ROT_NOTAUS_SCHRANK, ON);
|
||||
// }
|
||||
// else if(read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // bottom one activated
|
||||
// set_Output(LED_ROT_NOTAUS_SCHRANK, BLINK);
|
||||
// set_Output(LED_ROT_NOTAUS_ANLAGE, ON);
|
||||
// }
|
||||
// else{ // none activated
|
||||
// set_Output(LED_ROT_NOTAUS_SCHRANK, OFF);
|
||||
// set_Output(LED_ROT_NOTAUS_ANLAGE, OFF);
|
||||
// if(!read_Input(IN_ANLAGE_EIN_INV, LEVEL)){
|
||||
// set_Output(LED_GRN_NOTAUS_ANLAGE, ON);
|
||||
// set_Output(LED_GRN_NOTAUS_SCHRANK, ON);
|
||||
// }
|
||||
// else{
|
||||
// set_Output(LED_GRN_NOTAUS_ANLAGE, ON);
|
||||
// set_Output(LED_GRN_NOTAUS_SCHRANK, ON);
|
||||
// set_Output(LED_ROT_NOTAUS_ANLAGE, ON);
|
||||
// set_Output(LED_ROT_NOTAUS_SCHRANK, ON);
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
int main()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user