diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2019-04-22 09:35:29 +0300 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2019-04-22 09:35:29 +0300 |
| commit | c834a8a5f3d39809d633337e46d823fec71ca8dc (patch) | |
| tree | 885779c200630905e9c36484e7b08cc22c6b881c /Software/Embedded_SW/Embedded/Modules | |
| parent | 13887d7b53fec7e2d357fd377a6a1fbd0e875e65 (diff) | |
| parent | 8e2bd137671dfb6532648ec259c66091379d1240 (diff) | |
| download | Tango-c834a8a5f3d39809d633337e46d823fec71ca8dc.tar.gz Tango-c834a8a5f3d39809d633337e46d823fec71ca8dc.zip | |
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c index 13f0515f9..6acdf5d67 100644 --- a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c +++ b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c @@ -674,21 +674,25 @@ void AlarmHandlingInternalSetAlarm(uint32_t AlarmId, bool value) AlarmState[Alarm_i].EventPtr = my_malloc (sizeof(Event)); if (AlarmState[Alarm_i].EventPtr) { + //ROM_IntMasterDisable(); event__init(AlarmState[Alarm_i].EventPtr); AlarmState[Alarm_i].EventPtr->has_type = true; AlarmState[Alarm_i].EventPtr->type = AlarmItem[Alarm_i].EventType; AlarmState[Alarm_i].EventPtr->message = AlarmItem[Alarm_i].EventName; - AlarmState[Alarm_i].Status = value; - Report("Alarm ON ", __FILE__,__LINE__,AlarmItem[Alarm_i].EventType, RpMessage, value, Alarm_i); + AlarmState[Alarm_i].Status = value; } + //ROM_IntMasterEnable(); + Report("Alarm ON ", __FILE__,__LINE__,AlarmItem[Alarm_i].EventType, RpMessage, value, Alarm_i); } else { Report("Alarm OFF ", __FILE__,__LINE__,AlarmItem[Alarm_i].EventType, RpMessage, value, Alarm_i); if (AlarmState[Alarm_i].EventPtr) { + //ROM_IntMasterDisable(); my_free(AlarmState[Alarm_i].EventPtr); AlarmState[Alarm_i].EventPtr = NULL; + //ROM_IntMasterEnable(); } AlarmState[Alarm_i].Status = value; } @@ -923,8 +927,6 @@ uint32_t AlarmHandlingLoop(uint32_t tick) { if (Status == true) // alarm on { - AlarmState[Alarm_i].Status = true; - AlarmHandlingConsequentActions(Alarm_i, AlarmItem[Alarm_i].Severity); // report the alarm! AlarmState[Alarm_i].EventPtr = my_malloc (sizeof(Event)); if (AlarmState[Alarm_i].EventPtr) @@ -934,15 +936,21 @@ uint32_t AlarmHandlingLoop(uint32_t tick) AlarmState[Alarm_i].EventPtr->type = AlarmItem[Alarm_i].EventType; AlarmState[Alarm_i].EventPtr->message = AlarmItem[Alarm_i].EventName; } + AlarmState[Alarm_i].Status = true; + AlarmHandlingConsequentActions(Alarm_i, AlarmItem[Alarm_i].Severity); Report("Alarm ON ", __FILE__,__LINE__,AlarmItem[Alarm_i].EventType, RpMessage, value, Alarm_i); } else // alarm off { - AlarmState[Alarm_i].Status = false; - AlarmHandlingConsequentActions(Alarm_i, DEBUG_LOG_CATEGORY__Info); - // report the alarm! if (AlarmState[Alarm_i].EventPtr) + { + //ROM_IntMasterDisable(); my_free(AlarmState[Alarm_i].EventPtr); + AlarmState[Alarm_i].EventPtr = NULL; + //ROM_IntMasterEnable(); + } + AlarmState[Alarm_i].Status = false; + AlarmHandlingConsequentActions(Alarm_i, DEBUG_LOG_CATEGORY__Info); Report("Alarm OFF ", __FILE__,__LINE__,AlarmItem[Alarm_i].EventType, RpMessage, 0, Alarm_i); } } |
