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_ROT_NOTAUS_ANLAGE BitPE5
|
||||||
#define LED_GRN_NOTAUS_SCHRANK BitPG5
|
#define LED_GRN_NOTAUS_SCHRANK BitPG5
|
||||||
#define LED_ROT_NOTAUS_SCHRANK BitPE3
|
#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_PLC_OK BitPH5
|
||||||
#define LED_BUS_OK BitPD4
|
#define LED_BUS_OK BitPD4
|
||||||
|
|
||||||
@@ -90,11 +93,23 @@ void ioHelperEdgeDetector(void);
|
|||||||
|
|
||||||
#define BitPinK0 8 //A8
|
#define BitPinK0 8 //A8
|
||||||
#define BitPinK1 9 //A9
|
#define BitPinK1 9 //A9
|
||||||
#define BitPinD3 10 //INO
|
#define BitPinK2 10 //A10
|
||||||
#define BitPinD2 11 //IN1
|
#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_ANLAGE_EIN_INV BitPinF5
|
||||||
#define IN_NOTAUS_ANLAGE BitPinF7
|
#define IN_NOTAUS_ANLAGE BitPinF7
|
||||||
|
#define IN_NOTAUS_ANLAGE_KALT BitPinK1
|
||||||
#define IN_NOTAUS_SCHRANK BitPinK0
|
#define IN_NOTAUS_SCHRANK BitPinK0
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
112
main.c
112
main.c
@@ -55,38 +55,92 @@ void IO_LIBRARY_Init(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void do_notaus(){
|
void do_notaus(){
|
||||||
if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL)){ // NOTAUS
|
if(read_Input(IN_NOTAUS_ANLAGE, LEVEL) || read_Input(IN_NOTAUS_SCHRANK, LEVEL) || read_Input(IN_NOTAUS_ANLAGE_KALT, LEVEL)){
|
||||||
set_Output(LED_GRN_NOTAUS_SCHRANK, OFF); // disable green lamps
|
/* at least one pressed */
|
||||||
set_Output(LED_GRN_NOTAUS_ANLAGE, OFF);
|
//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()
|
int main()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user