aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-07-09 17:14:59 +0300
committerShlomo Hecht <shlomo@twine-s.com>2019-07-09 17:14:59 +0300
commit1dfd14ae3fbf868e8992420127a9cf3e6318e5ff (patch)
tree361fd92aa85a41f13d4d4e832b0ed712ccf50e82 /Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
parent8f947838ae3802043ba60223431b9603dffd34fb (diff)
downloadTango-1dfd14ae3fbf868e8992420127a9cf3e6318e5ff.tar.gz
Tango-1dfd14ae3fbf868e8992420127a9cf3e6318e5ff.zip
Version 1.4.2.0 - infrastructure for IFS, improved flash handling, thread unloading
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c31
1 files changed, 24 insertions, 7 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
index 529e4d260..78203b236 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
@@ -40,11 +40,20 @@ int32_t BreakSensordebouncetimemilli = BREAK_SENSOR_LIMIT;
HardwarePidControlType ThreadMotorIdToControlId[MAX_THREAD_MOTORS_NUM] = {HARDWARE_PID_CONTROL_TYPE__MotorFeeder,HARDWARE_PID_CONTROL_TYPE__MotorDryer,HARDWARE_PID_CONTROL_TYPE__MotorPooler,HARDWARE_PID_CONTROL_TYPE__MotorWinder,0};
//********************************************************************************************************************
-uint32_t MotorsConfigMessage(HardwareMotor * request)
+uint32_t MotorsConfigMessage(HardwareConfiguration * HWrequest)
{
uint32_t status = PASSED;
- TimerMotors_t Motor_i;
- Motor_i = request->hardwaremotortype;
+ TimerMotors_t Motor_i,MotorId;
+ MOTDRIVER_TYPE DriverType;
+ HardwareMotor *request;
+ if (HWrequest == NULL)
+ return ERROR;
+ for (MotorId = 0; MotorId < HWrequest->n_motors ; MotorId++)
+ {
+ request = HWrequest->motors[MotorId];
+ if (request == NULL)
+ return ERROR;
+ Motor_i = request->hardwaremotortype;
MotorsCfg[Motor_i].configword = request->configword;
MotorsCfg[Motor_i].hardwaremotortype = request->hardwaremotortype;
MotorsCfg[Motor_i].minfrequency = request->minfrequency;
@@ -80,13 +89,21 @@ uint32_t MotorsConfigMessage(HardwareMotor * request)
MotorsCfg[Motor_i].fnslpdec = request->fnslpdec;
MotorsCfg[Motor_i].fsspd = request->fsspd;
- status = MotorConfig( Motor_i, &MotorsCfg[Motor_i]);
+ MotorsCfg[Motor_i].gatecfg1 = request->gatecfg1;
+ MotorsCfg[Motor_i].gatecfg2 = request->gatecfg2;
+ MotorsCfg[Motor_i].tvalhold = request->tvalhold;
+ MotorsCfg[Motor_i].tvalrun = request->tvalrun ;
+ MotorsCfg[Motor_i].tvalacc = request->tvalacc ;
+ MotorsCfg[Motor_i].tvaldec = request->tvaldec ;
+ MotorsCfg[Motor_i].tfast = request->tfast ;
+ MotorsCfg[Motor_i].tonmin = request->tonmin ;
+ MotorsCfg[Motor_i].toffmin = request->toffmin ;
+
+ status = MotorConfig( Motor_i, &MotorsCfg[Motor_i]);
// if (Motor_i == MOTOR_RDRIVING)
// ThreadInitialTestStub(request);
-
+ }
return status;
-// }
-// else return Motor_i;
}
uint32_t MotorPidRequestMessage(HardwarePidControl* request)