From fb2d080fbbcea3a91e598b4ea8837a230de6a319 Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Tue, 6 Mar 2018 12:09:02 +0200 Subject: A new forlder for embedded software in our common structure --- .../Embedded_SW/Embedded/Modules/Thread/Thread.h | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Software/Embedded_SW/Embedded/Modules/Thread/Thread.h (limited to 'Software/Embedded_SW/Embedded/Modules/Thread/Thread.h') diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h b/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h new file mode 100644 index 000000000..475f63795 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h @@ -0,0 +1,55 @@ +#include "PMR/common/MessageContainer.pb-c.h" +#include "PMR/Hardware/HardwareMotor.pb-c.h" +#include "PMR/Hardware/HardwareMotorType.pb-c.h" +#include "PMR/Hardware/HardwareDancer.pb-c.h" +#include "PMR/Hardware/HardwareDancerType.pb-c.h" +#include "PMR/Hardware/HardwareWinder.pb-c.h" +#include "PMR/Printing/JobSpool.pb-c.h" +#include "PMR/Printing/JobSpoolType.pb-c.h" + + +typedef struct +{ + HardwareMotorType id; + uint32_t minfreq; + uint32_t maxfreq; + uint32_t minmicrostep; + uint32_t maxmicrostep; + double linearratio; + uint32_t medianposition; + double correctiongain; + double ratio2dryerspeed; + double kp; + double ki; + double kd; + double changeslope; + double hightimeoutusec; +}MotorConfigStruc; +typedef struct +{ + uint32_t startoffsetpulses; + uint32_t spoolbackingrate; + uint32_t segmentoffsetpulses; + uint32_t milimetersperrotation; +}InternalWinderConfigStruc; + +typedef struct +{ + bool fixorgradual; + double k; + double x; + int32_t pulsepermmspring; + int id; //HardwareDancerType +}DancerConfigStruc; +#define MAX_THREAD_MOTORS_NUM HARDWARE_MOTOR_TYPE__WinderMotor +1 + + +extern MotorConfigStruc MotorsCfg[MAX_THREAD_MOTORS_NUM]; +extern InternalWinderConfigStruc InternalWinderCfg; + + +uint32_t InternalWinderConfigMessage(HardwareWinder* request); +uint32_t MotorsConfigMessage(HardwareMotor * request); +uint32_t InternalWindingConfigMessage(JobSpool* request); + +uint32_t DancerConfigMessage(HardwareDancer * request); -- cgit v1.3.1