aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index 580648842..97bb2e245 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -60,7 +60,9 @@ uint32_t HWConfigurationInit(void)
uint32_t status = OK;
UploadHardwareConfigurationRequest* UploadRequest;
+ GeneralHwReady = false;
Control_WD(ENABLE,250);
+
Fresult = f_mkdir(SW_INFO_DIR);
if ((Fresult == FR_OK)||(Fresult == FR_EXIST))
{
@@ -85,6 +87,7 @@ uint32_t HWConfigurationInit(void)
if (status ==OK)
{
upload_hardware_configuration_request__free_unpacked(UploadRequest,NULL);
+ EraseFlashSection(GENHWCFG_MAP_IN_FLASH,Bytes);
ReadAppAndProgram(GENHWCFG_MAP_IN_FLASH, Bytes, buffer);
}
else
@@ -232,9 +235,11 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
if (request->n_winders == 1)
status += InternalWinderConfigMessage(request->winders);
status += MotorsInit();
-
+
if (request->n_motors < NUM_OF_MOTORS)
{
+ //EraseFlashSection(GENHWCFG_MAP_IN_FLASH + 0x2000,sizeof(HardwareMotor)*request->n_motors);
+
for (Motor_i = 0; Motor_i < request->n_motors ; Motor_i++)
status += MotorsConfigMessage(request->motors[Motor_i]);
}
@@ -259,6 +264,8 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
//StoreDancerConfigMessage();
if (request->n_pidcontrols <= HARDWARE_PID_CONTROL_TYPE__Dispenser8)
{
+ IDS_DispenserControlInit();
+
for (PID_i = 0; PID_i < request->n_pidcontrols ; PID_i++)
{
if (request->pidcontrols[PID_i]->hardwarepidcontroltype <= HARDWARE_PID_CONTROL_TYPE__MixerHeater)
@@ -338,6 +345,9 @@ uint32_t HWConfigurationFunc(MessageContainer* requestContainer)
UploadHardwareConfigurationRequest* UploadRequest = upload_hardware_configuration_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
+ GeneralHwReady = false;
+ Control_WD(ENABLE,250);
+
status = HWConfiguration(UploadRequest);
responseContainer = createContainer(MESSAGE_TYPE__UploadHardwareConfigurationResponse, requestContainer->token, true, &response, &upload_hardware_configuration_response__pack, &upload_hardware_configuration_response__get_packed_size);