aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2018-12-03 09:54:52 +0200
committerShlomo Hecht <shlomo@twine-s.com>2018-12-03 09:54:52 +0200
commit7665c5bd2de71fa724809cede3bcb408a78250bf (patch)
tree5a92d5d9c9b95ccf27607eb720c5e8820e978657 /Software/Embedded_SW/Embedded
parent23856e0409fc62155fc1dec934101a507517c2b5 (diff)
downloadTango-7665c5bd2de71fa724809cede3bcb408a78250bf.tar.gz
Tango-7665c5bd2de71fa724809cede3bcb408a78250bf.zip
improve alarm handling reporting
Diffstat (limited to 'Software/Embedded_SW/Embedded')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c25
1 files changed, 11 insertions, 14 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c
index d1a7b0145..2d0e5a4c7 100644
--- a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c
+++ b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c
@@ -261,6 +261,8 @@ JobEndReasonEnum getEndReason(uint32_t AlarmId)
return JOB_OTHER_ALARM;
}
}
+char Alarmstr[150];
+
uint32_t AlarmHandlingConsequentActions(uint32_t AlarmId, DebugLogCategory Severity)
{
switch (Severity)
@@ -269,25 +271,20 @@ uint32_t AlarmHandlingConsequentActions(uint32_t AlarmId, DebugLogCategory Sever
//raise flag fr next job
break;
+ case DEBUG_LOG_CATEGORY__Critical:
+ watchdogCriticalAlarm = true;
+ //intentional fall through
case DEBUG_LOG_CATEGORY__Error:
if (JobIsActive())
{
+ memset(Alarmstr,0,sizeof(Alarmstr));
+ usnprintf(Alarmstr, 100, "Alarm set on Alarm Id, Value",(int)AlarmId,(int)AlarmItem[AlarmId].AlarmValue);
+ strcat (Alarmstr, AlarmItem[AlarmId].EventName );
JobEndReason = getEndReason(AlarmId);
- AbortJob(AlarmItem[AlarmId].EventName);
- Report(AlarmItem[AlarmId].EventName, __FILE__,__LINE__,AlarmId, RpMessage, DEBUG_LOG_CATEGORY__Error, 0);
+ AbortJob(Alarmstr);
+ Report("Alarm set on - stop job", __FILE__,__LINE__,AlarmItem[AlarmId].AlarmValue, RpMessage, AlarmItem[AlarmId].DebounceCounter, 0);
+ Report(AlarmItem[AlarmId].EventName, __FILE__,__LINE__,AlarmId, RpMessage, Severity, 0);
}
-//Stop Job
- break;
- case DEBUG_LOG_CATEGORY__Critical:
- if (JobIsActive())
- {
- JobEndReason = JOB_OTHER_ALARM;
- AbortJob(AlarmItem[AlarmId].EventName);
- Report(AlarmItem[AlarmId].EventName, __FILE__,__LINE__,AlarmId, RpMessage, DEBUG_LOG_CATEGORY__Critical, 0);
- }
- watchdogCriticalAlarm = true;
- //stop job
- //turn machine off
break;
case DEBUG_LOG_CATEGORY__Debug:
case DEBUG_LOG_CATEGORY__Info: