aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Control
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2018-08-13 15:22:25 +0300
committerAvi Levkovich <avi@twine-s.com>2018-08-13 15:22:25 +0300
commitfe8111ccce920b73b47b6af657f1ee4bcac11120 (patch)
tree1f7226ee6bae6572e498ad4ec704cad0e45efa1c /Software/Embedded_SW/Embedded/Modules/Control
parent7073aec25282e6a5a7f1171c3f56d0c57f440fb5 (diff)
parent67b80be819c29407dc07f80a7f61e5da2995ba93 (diff)
downloadTango-fe8111ccce920b73b47b6af657f1ee4bcac11120.tar.gz
Tango-fe8111ccce920b73b47b6af657f1ee4bcac11120.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Control')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c12
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.h2
2 files changed, 10 insertions, 4 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
index 559db0e79..75462bd7c 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
@@ -74,6 +74,8 @@ typedef struct MillisecMessage{
uint32_t Dancer_Data[NUM_OF_DANCERS] = {0};
uint32_t Speed_Data = 0;
+bool watchdogCriticalAlarm = false;
+
MillisecMotorDataStruc MotorData[NUM_OF_MOTORS] = {0};
MillisecMotorDataStruc SpeedSetPending[NUM_OF_MOTORS] = {0};
MillisecMotorDataStruc PT100Data[MAX_TEMPERATURE_SENSOR_ID] = {0};
@@ -100,7 +102,7 @@ void MillisecInit(void)
Error_init(&eb);
- MillisecMsgQ = Mailbox_create(sizeof(MillisecMessageStruc), 20, NULL,&eb);
+ MillisecMsgQ = Mailbox_create(sizeof(MillisecMessageStruc), 2, NULL,&eb);
for (i=0;i<NUM_OF_MOTORS;i++)
{
MotorsMsgQ[i] = Mailbox_create(sizeof(MillisecMotorDataStruc), 5, NULL,&eb);
@@ -179,6 +181,7 @@ int32_t MillisecReadFromTempSensor(uint32_t TempSensorId, MSecFptr Callback)
PT100Activity++; //get response
PT100Activity++; //read request
PT100Data[TempSensorId].Callback = Callback;
+ PT100Data[TempSensorId].WaitForData = true;
PT100Data[TempSensorId].DataRequired = true;
PT100Data[TempSensorId].Active = true;
@@ -343,7 +346,7 @@ uint32_t MillisecLoop(uint32_t tick)
{
TemperatureSendSensorDummyClk((TEMPERATURE_SENSOR_ID_ENUM)Sensor_i);
PT100Data[Sensor_i].SyncRequired = false;
- if (PT100Data[Sensor_i].DataRequired == true)
+ /*if (PT100Data[Sensor_i].DataRequired == true)
{
PT100Data[Sensor_i].WaitForData = true; // mark the motor for data request next round
}
@@ -351,7 +354,7 @@ uint32_t MillisecLoop(uint32_t tick)
{
if (PT100Data[Sensor_i].Callback)
PT100Data[Sensor_i].Callback(Sensor_i,0); // call the callback to report execution
- }
+ }*/
PT100Activity--;
}
@@ -417,7 +420,8 @@ uint32_t MillisecLoop(uint32_t tick)
for (Sensor_i = 0;Sensor_i < MAX_SYSTEM_DISPENSERS;Sensor_i++)
CalculateDispenserPressure(Sensor_i);
FPGA_GetAllDispensersValveBusyOCD();
- Control_WD(ENABLE,50); //activate heaters/dispenser watchdog, 5 seconds
+ if (watchdogCriticalAlarm == false)
+ Control_WD(ENABLE,50); //activate heaters/dispenser watchdog, 5 seconds
}
//ROM_IntMasterEnable();
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.h b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.h
index ef9a9d21b..77c3a5ef8 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.h
+++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.h
@@ -32,5 +32,7 @@ void MillisecInit(void);
void MillisecStop(void);
void MillisecStart(void);
+extern bool watchdogCriticalAlarm;
+
extern Task_Handle Millisecond_Task_Handle;
#endif /* MODULES_CONTROL_MILLISECTASK_H_ */