From 4bab87b6955497013a781ef758852a3e2c4a1723 Mon Sep 17 00:00:00 2001 From: Shai Frieder Date: Sun, 8 Sep 2019 17:09:04 +0300 Subject: read current only when we can (return = OK) --- .../Embedded/Modules/AlarmHandling/AlarmHandling.c | 47 ++++++++++++---------- .../Embedded/Modules/General/GeneralHardware.c | 1 + 2 files changed, 26 insertions(+), 22 deletions(-) (limited to 'Software/Embedded_SW/Embedded/Modules') diff --git a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c index a6075ac09..d0807b20e 100644 --- a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c +++ b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c @@ -958,28 +958,31 @@ uint32_t AlarmHandlingLoop(uint32_t tick) break; case ALARM_SOURCE_TYPE__CurrentAlarm: if (CheckCurrentAlarms) - { - value = Get_Heaters_Current_Integer(AlarmItem[Alarm_i].DeviceId); - if (AlarmItem[Alarm_i].AlarmDirection == true) - { - if ((value >= (AlarmItem[Alarm_i].AlarmValue*1.07))||(value <= (AlarmItem[Alarm_i].AlarmValue*0.80))) - { - Status = true; - } - } - else - { - if (value == 0) - { - Status = true; - } - } - } - else - { - value = false; - } - break; + { + if (Get_Heaters_Current_Integer(AlarmItem[Alarm_i].DeviceId, &value) == OK) + { + if (AlarmItem[Alarm_i].AlarmDirection == true) + { + if ((value >= (AlarmItem[Alarm_i].AlarmValue*1.07)) || (value <= (AlarmItem[Alarm_i].AlarmValue*0.80))) + { + Status = true; + } + } + else + { + if (value == 0) + { + Status = true; + } + } + + } + } + else + { + value = false; + } + break; case ALARM_SOURCE_TYPE__MotorAlarm: if (CheckMotorAlarms) { diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c index 88dc96997..8bece8b61 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c +++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c @@ -310,6 +310,7 @@ uint32_t EmbeddedParametersInit(void) checkTamperAlarms = (EmbeddedParameters->generalparameters[2] < 0.5)?false:true; checkMotorAlarms = (EmbeddedParameters->generalparameters[3] < 0.5)?false:true; AlarmHandlingSetFlags(checkHardLimitAlarms,checkCurrentAlarms,checkTamperAlarms,checkMotorAlarms); +// AlarmHandlingSetCurrentLimits(EmbeddedParameters->currentalarmhighlimit,EmbeddedParameters->currentalarmlowlimit); } if (EmbeddedParameters->n_generalparameters >= 5) SetWinderBackToBaseTime((uint32_t) EmbeddedParameters->generalparameters[4]); -- cgit v1.3.1