diff options
Diffstat (limited to 'Software/Embedded_SW/Embedded')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c index 360eb3351..e72895d9b 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA_GPIO/FPGA_GPIO.c @@ -1060,6 +1060,7 @@ uint8_t Cartridges_LEDS(CARTREGE Cartridge, OPERATION_MODE LED_Mode) // CART1_LA return Status; } */ +uint8_t Last_Mode[7] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};//Leds uint8_t Pannel_Leds(PANEL_BUTTON_OR_CRAT_ID Pannel_Led_Id, OPERATION_MODE LED_Mode) { uint8_t Status = OK; @@ -1092,29 +1093,53 @@ uint8_t Pannel_Leds(PANEL_BUTTON_OR_CRAT_ID Pannel_Led_Id, OPERATION_MODE LED_Mo switch(Pannel_Led_Id) { case POWER_ON_OFF: + if(Last_Mode[POWER_ON_OFF] != LED_Mode) + { F3_low_var_LED1 = Low_Reg; F3_high_var_LED1 = High_Reg; Machine_Idle_Mode = false; + Last_Mode[POWER_ON_OFF] = LED_Mode; + } break; case THREAD_JOGGING: + if(Last_Mode[THREAD_JOGGING] != LED_Mode) + { F3_low_var_LED3 = Low_Reg; F3_high_var_LED3 = High_Reg; + Last_Mode[THREAD_JOGGING] = LED_Mode; + } break; case THREAD_LOAD: + if(Last_Mode[THREAD_LOAD] != LED_Mode) + { F3_low_var_LED2 = Low_Reg; F3_high_var_LED2 = High_Reg; + Last_Mode[THREAD_LOAD] = LED_Mode; + } break; case CART_1: + if(Last_Mode[CART_1] != LED_Mode) + { F3_LOw_Cart_Led1 = Low_Reg; F3_High_Cart_Led1 = High_Reg; + Last_Mode[CART_1] = LED_Mode; + } break; case CART_2: + if(Last_Mode[CART_2] != LED_Mode) + { F3_LOw_Cart_Led2 = Low_Reg; F3_High_Cart_Led2 = High_Reg; + Last_Mode[CART_2] = LED_Mode; + } break; case CART_3: + if(Last_Mode[CART_3] != LED_Mode) + { F3_LOw_Cart_Led3 = Low_Reg; F3_High_Cart_Led3 = High_Reg; + Last_Mode[CART_3] = LED_Mode; + } break; default: Status = ERROR; |
