diff options
| author | Mirta <mirta@twine-s.com> | 2020-12-30 14:27:05 +0200 |
|---|---|---|
| committer | Mirta <mirta@twine-s.com> | 2020-12-30 14:27:05 +0200 |
| commit | 1344a54c37f7cbba7a294674b4b733d72ee257ea (patch) | |
| tree | 4b24c6fa78d7648f4bb7cefafa464bb0b063fec4 /Software/Embedded_SW/Embedded/Modules/Control | |
| parent | 124ad4150f80c6846fdee41dbbda9848c105f6e5 (diff) | |
| parent | 281610ac56799f6870c587a942495d91cd55b227 (diff) | |
| download | Tango-1344a54c.tar.gz Tango-1344a54c.zip | |
Hope it is fine
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Control')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c | 42 |
1 files changed, 33 insertions, 9 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c index ad5a1d5ca..c5fffff60 100644 --- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c +++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c @@ -22,6 +22,10 @@ #include "MillisecTask.h" #include <driverlib/timer.h> +#include <time.h> +#include "Common/Utilities/Utils.h" +#include "driverlib/hibernate.h" + #include <Drivers/SSI_Comm/SSI_Comm.h> #include <Drivers/SSI_Comm/Speed_Sensor/Speed_Sensor.h> #include <Drivers/SSI_Comm/Dancer/Dancer.h> @@ -72,6 +76,7 @@ #include <Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h> #include <Drivers/I2C_Communication/RFID_NFC/I2C_IFS_Mux.h> #include <Drivers/I2C_Communication/RFID_NFC/NFC.h> +#include "Drivers/Uart_Comm/BTSR/BTSR.h" Task_Handle Millisecond_Task_Handle; /******************** Definitions ********************************************/ @@ -610,18 +615,22 @@ void setRapidPressureRead(bool value) } uint16_t PumpCounter = 0; uint16_t realtimetest[101]; +uint16_t dbgflag[50]; +uint32_t dbttime[50]; +bool Ten_msTick, Fifty_msTick, Hundred_msTick , m20msecTick,m90msecTick, Onesecond_Tick,Tensecond_Tick,OneMinute_Tick,TenMinutes_Tick,OneHourTick,Gradient_Tick; +bool O700Millisecond_Tick,O200Millisecond_Tick,O400Millisecond_Tick,O500Millisecond_Tick,O600Millisecond_Tick,O800Millisecond_Tick; + uint32_t MillisecLowLoop(uint32_t tick) { uint8_t Motor_i,Disp_i,temp; TEMPERATURE_SENSOR_ID_ENUM Sensor_i; +#ifdef USE_RFID_LOGIC RFID_READER_ID readerID; - +#endif //static int temp=0; //call all modules Millisec functions //test dancers and speed encoders //check all callback units (state machine waiting for completion of a change) - bool Ten_msTick, Fifty_msTick, Hundred_msTick , m20msecTick,m90msecTick, Onesecond_Tick,Tensecond_Tick,OneMinute_Tick,TenMinutes_Tick,OneHourTick,Gradient_Tick; - bool O700Millisecond_Tick,O200Millisecond_Tick,O400Millisecond_Tick,O500Millisecond_Tick,O600Millisecond_Tick,O800Millisecond_Tick; //bool O100Millisecond_Tick,O200Millisecond_Tick,O400Millisecond_Tick,O500Millisecond_Tick,O600Millisecond_Tick,O800Millisecond_Tick,O900Millisecond_Tick; Ten_msTick = (tick%eTenMillisecond == 0) ?true:false; Fifty_msTick = (tick%eHundredMillisecond == 40) ?true:false; //eFiftyMillisecond @@ -643,6 +652,7 @@ uint32_t MillisecLowLoop(uint32_t tick) TenMinutes_Tick = (tick%eTenMinutes == 0) ?true:false; OneHourTick = (tick%eOneHour == 0) ?true:false; realtimetest[(tick%1000)/10]++; + dbttime[0] = msec_millisecondCounter; //gather Motor data from FPGA //ROM_IntMasterDisable(); int StartPT100 = 0; @@ -656,7 +666,11 @@ uint32_t MillisecLowLoop(uint32_t tick) //if (Sensor_Read++ >= MAX_MAIN_CARD_TEMPERATURE_SENSOR_ID) Sensor_Read = 0; if(Machine_Idle_Mode == true) Machine_Idle_Breathing_Led(); + dbgflag[1]++; + dbttime[1] = msec_millisecondCounter; Trigger_HeaterWriting(); + dbgflag[2]++; + dbttime[2] = msec_millisecondCounter; Read_Dryer_ENC_Position(); } if (m20msecTick) @@ -668,11 +682,12 @@ uint32_t MillisecLowLoop(uint32_t tick) WHS_Read_GPI_Registers(); Trigger_PT100_Read();//call every 50mSec (minimum delay 30mSec) //Set_HeadCard_PT100();//call every 50mSec (minimum delay 30mSec) + + #ifdef USE_UART4_FOR_BTSR + //call every 50mSec + BTSR_State_Machine(RUFeeder1); + #endif } - /*if(m70msecTick) - { - AlarmHandling_ControlTrigger(0,0); - }*/ if (m90msecTick) { for (Sensor_i = StartPT100;Sensor_i < MAX_HEAD_CARD_TEMP_SENS_ID;Sensor_i++) @@ -701,6 +716,8 @@ uint32_t MillisecLowLoop(uint32_t tick) //LOG_ERROR (1111, "Control_WD"); } } + dbgflag[3]++; + dbttime[3] = msec_millisecondCounter; if (RapidPressureRead == true) { for (Disp_i = 0;Disp_i < MAX_SYSTEM_DISPENSERS;Disp_i++) @@ -728,6 +745,11 @@ uint32_t MillisecLowLoop(uint32_t tick) DispensersCollectionCall(); if (O200Millisecond_Tick) { + + ulocaltime(umktime(&LocalTime)+1,&LocalTime); + HibernateCalendarSet(&LocalTime); + //ReportWithPackageFilter(ThreadFilter,"Time: ",__FILE__,LocalTime.tm_min,LocalTime.tm_sec,RpWarning,(int) msec_millisecondCounter,0); + Trigger_WHS_MAX11614_Read_allADC(); FPGA_GetAllDispensersValveBusyOCD(); Read_Dryer_Fan_Tacho(); @@ -777,6 +799,8 @@ uint32_t MillisecLowLoop(uint32_t tick) KeepAliveOneSecondCall(); //TemperatureListString(Lenstr); //ReportWithPackageFilter(ThreadFilter,Lenstr,__FILE__,__LINE__,(int)Counter++,RpWarning,(int) msec_millisecondCounter,0); + dbgflag[4]++; + dbttime[4] = msec_millisecondCounter; for (Sensor_i = StartPT100;Sensor_i < MAX_HEAD_CARD_TEMP_SENS_ID;Sensor_i++) { TemperatureCalc[Sensor_i] = MillisecCalculateTemperatures ( Sensor_i); @@ -834,8 +858,8 @@ uint32_t MillisecLowLoop(uint32_t tick) //call IFS state machine midTankStateMachine(); - - + dbgflag[5]++; + dbttime[5] = msec_millisecondCounter; } if (Tensecond_Tick) { |
