aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2020-01-13 09:15:00 +0200
committerAvi Levkovich <avi@twine-s.com>2020-01-13 09:15:00 +0200
commit78d001b5ba7f6fac4fe44a266692addbdc19d6ac (patch)
treebe790f13eda3d055f25f02d94122cfb1140074f6 /Software/Embedded_SW/Embedded/Modules
parent2323fb8dd806d91e35339d6e7e464a5ac97b6d7b (diff)
downloadTango-78d001b5ba7f6fac4fe44a266692addbdc19d6ac.tar.gz
Tango-78d001b5ba7f6fac4fe44a266692addbdc19d6ac.zip
advanced work on new head
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c11
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/process.c84
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IFS/ifs.c3
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c8
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_FPGARWReg.c2
7 files changed, 72 insertions, 44 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
index 5cccc5b45..cd40afd9c 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
@@ -648,7 +648,7 @@ uint32_t MillisecLowLoop(uint32_t tick)
for (Sensor_i = 0;Sensor_i < MAX_MAIN_CARD_TEMP_SENS_ID;Sensor_i++)
#endif
{
- MillisecReadFromTempSensor(Sensor_i, NULL);
+ // MillisecReadFromTempSensor(Sensor_i, NULL);
}
}
if (Hundred_msTick)
@@ -691,7 +691,7 @@ uint32_t MillisecLowLoop(uint32_t tick)
DispensersCollectionCall();
#ifdef Use_Head_Card
- Head_Read_IO_Reg(0x46, HIGH);//READ HEAD CARD LS
+ //Head_Read_IO_Reg(0x46, HIGH);//READ HEAD CARD LS
#endif
}
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index 598c5df8a..960cbaa42 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -369,7 +369,7 @@ uint32_t GenHWInitCallBackFunction(uint32_t IfIndex, uint32_t BusyFlag)
uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
{
uint32_t status = 0;
- int Dancer_i, Dispenser_i,PID_i;
+ int Dancer_i, Dispenser_i,PID_i,tempheaterId;
if (UploadRequest == NULL)
{
@@ -428,7 +428,16 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
for (PID_i = 0; PID_i < request->n_pidcontrols ; PID_i++)
{
if (isHeater(request->pidcontrols[PID_i]->hardwarepidcontroltype))
+ {
status += HeaterConfigRequestMessage(request->pidcontrols[PID_i]);
+ if ((request->pidcontrols[PID_i]->hardwarepidcontroltype>=HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1)&&
+ (request->pidcontrols[PID_i]->hardwarepidcontroltype<=HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6))
+ {
+ tempheaterId = (request->pidcontrols[PID_i]->hardwarepidcontroltype-HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1+HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ7);
+ request->pidcontrols[PID_i]->hardwarepidcontroltype = tempheaterId;
+ status += HeaterConfigRequestMessage(request->pidcontrols[PID_i]);
+ }
+ }
else if ((request->pidcontrols[PID_i]->hardwarepidcontroltype >= HARDWARE_PID_CONTROL_TYPE__MotorDryer)&&
(request->pidcontrols[PID_i]->hardwarepidcontroltype < HARDWARE_PID_CONTROL_TYPE__Dispenser1))
status += MotorPidRequestMessage(request->pidcontrols[PID_i]);
diff --git a/Software/Embedded_SW/Embedded/Modules/General/process.c b/Software/Embedded_SW/Embedded/Modules/General/process.c
index 4305fac0e..e376a99fe 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/process.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/process.c
@@ -109,53 +109,65 @@ uint32_t HandleProcessParameters(ProcessParameters* ProcessParams,bool saveData)
HARDWARE_PID_CONTROL_TYPE__MixerHeater, false,
ProcessParams->mixertemp);
if (ProcessParams->headzone1temp>1)
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1, true,
- ProcessParams->headzone1temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1, true,ProcessParams->headzone1temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ7, true,ProcessParams->headzone1temp);
+ }
else
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1, false,
- ProcessParams->headzone1temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1, false,ProcessParams->headzone1temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ7, false,ProcessParams->headzone1temp);
+ }
if (ProcessParams->headzone2temp>1)
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2, true,
- ProcessParams->headzone2temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2, true,ProcessParams->headzone2temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ8, true,ProcessParams->headzone2temp);
+ }
else
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2, false,
- ProcessParams->headzone2temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2, false,ProcessParams->headzone2temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ8, false,ProcessParams->headzone2temp);
+ }
if (ProcessParams->headzone3temp>1)
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3, true,
- ProcessParams->headzone3temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3, true,ProcessParams->headzone3temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ9, true,ProcessParams->headzone3temp);
+ }
else
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3, false,
- ProcessParams->headzone3temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3, false,ProcessParams->headzone3temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ9, false,ProcessParams->headzone3temp);
+ }
if (ProcessParams->headzone4temp>1)
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4, true,
- ProcessParams->headzone4temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4, true,ProcessParams->headzone4temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ10, true,ProcessParams->headzone4temp);
+ }
else
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4, false,
- ProcessParams->headzone4temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4, false,ProcessParams->headzone4temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ10, false,ProcessParams->headzone4temp);
+ }
if (ProcessParams->headzone5temp>1)
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5, true,
- ProcessParams->headzone5temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5, true,ProcessParams->headzone5temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ11, true,ProcessParams->headzone5temp);
+ }
else
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5, false,
- ProcessParams->headzone5temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5, false,ProcessParams->headzone5temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ11, false,ProcessParams->headzone5temp);
+ }
if (ProcessParams->headzone6temp>1)
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6, true,
- ProcessParams->headzone6temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6, true,ProcessParams->headzone6temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ12, true,ProcessParams->headzone6temp);
+ }
else
- status |= HeaterCommandRequestMessage(
- HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6, false,
- ProcessParams->headzone6temp);
+ {
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6, false,ProcessParams->headzone6temp);
+ status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ12, false,ProcessParams->headzone6temp);
+ }
if (ProcessParams->dryerzone1temp>1)
status |= HeaterCommandRequestMessage(
HARDWARE_PID_CONTROL_TYPE__DryerAirTemperature, true,
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index 50796d3c9..f748c9e51 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -459,10 +459,12 @@ int GetFilteredHeaterRead(int HeaterId)
* initialized all global data
*************************************************************************************/
bool HeaterRestarted[HEATER_TYPE_MAX_HEATERS] = {false,false,false,false,false,false,false,false,false,false};
-uint32_t HeaterCommandRequestMessage(int HeaterId, bool OnOff, int Temperature)
+uint32_t HeaterCommandRequestMessage(int HeaterNum, bool OnOff, int Temperature)
{
//uint32_t status = NOT_SUPPORTED;
//MessageContainer responseContainer;
+ int HeaterId = getHeaterId(HeaterNum);
+
if (HeaterControl[HeaterId].configured == false)
{
ReportWithPackageFilter(HeatersFilter,"HeaterControl not configured",__FILE__,__LINE__,HeaterId,RpError, 0,0);
diff --git a/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c b/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c
index 15117e616..aaa5978bb 100644
--- a/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c
+++ b/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c
@@ -402,8 +402,7 @@ uint32_t MidTankReading(void)
MidTankCounter = 0;
if (IFS_info.Ink.time_out > 0)
return ERROR;
- MidTankReadControlId = AddControlCallback( MidTankCallBackFunction, 300/*eHundredMillisecond*/, TemplateDataReadCBFunction,0,0, 0 );
-
+ MidTankReadControlId = AddControlCallback( "MidTankRead", MidTankCallBackFunction, 300/*eHundredMillisecond*/, TemplateDataReadCBFunction,0,0, 0 );
return OK;
}
diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c
index 013d22968..ea2ad594a 100644
--- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c
+++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c
@@ -30,6 +30,8 @@
#include <Drivers/I2C_Communication/Head_Card/IO_Ports/Head_IO.h>
#include "drivers/adc_sampling/adc.h"
+extern double NumberOfRotationPerPassage; // how many rotations per spool passage
+
//#include "graphics_adapter.h"
extern uint8_t Input_Voltage;
extern uint8_t Test_Read_Buf[4];
@@ -124,10 +126,14 @@ void Stub_ProgressRequest(MessageContainer* requestContainer)
{
Disconnect_Mixer_and_12_Heaters_Latch();
HeadCard_Control_Heaters((request -> delay & 0xFF00)>>8, TRUE);
+ //Write_Head_Card_Heaters_Commands();
Connect_Mixer_and_12_Heaters_Latch();
}
else
+ {
HeadCard_Control_Heaters((request -> delay & 0xFF00)>>8, FALSE);
+ //Write_Head_Card_Heaters_Commands();
+ }
}
}
@@ -293,7 +299,7 @@ void Stub_ProgressRequest(MessageContainer* requestContainer)
if(request->amount == 0xF1)
{
LOG_ERROR(request->delay,"NumberOfRotationPerPassage");
- NumberOfRotationPerPassage = (float)(request->delay)/1000;
+ //NumberOfRotationPerPassage = (float)(request->delay)/1000;
}
else
{
diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_FPGARWReg.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_FPGARWReg.c
index a058d54f9..de385a32f 100644
--- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_FPGARWReg.c
+++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_FPGARWReg.c
@@ -97,7 +97,7 @@ void Stub_FpgaWriteRegRequest(MessageContainer* requestContainer)
ptr = (volatile short *) (request->address);
if (request->address == (FPGA3_BASE | 0x3D0))
{
- ctlId = AddControlCallback( ResetCallBackFunction, 2* eOneSecond, TemplateDataReadCBFunction,ptr,ptr, 0 );
+ ctlId = AddControlCallback( "Reset_MCU", ResetCallBackFunction, 2* eOneSecond, TemplateDataReadCBFunction,ptr,ptr, 0 );
}
else
*ptr = (request->value & 0xFFFF);