FMW_InitInfo fmw_info = {\r
.motors = motors.values,\r
.motors_count = ARRLENGTH(motors.values),\r
FMW_InitInfo fmw_info = {\r
.motors = motors.values,\r
.motors_count = ARRLENGTH(motors.values),\r
case FMW_Mode_Config: {\r
switch (msg->header.type) {\r
case FMW_MessageType_ModeChange_Run: {\r
case FMW_Mode_Config: {\r
switch (msg->header.type) {\r
case FMW_MessageType_ModeChange_Run: {\r
HAL_StatusTypeDef timer_status = HAL_TIM_Base_Start_IT(&htim6);\r
FMW_ASSERT(timer_status == HAL_OK);\r
\r
HAL_StatusTypeDef timer_status = HAL_TIM_Base_Start_IT(&htim6);\r
FMW_ASSERT(timer_status == HAL_OK);\r
\r
- fmw_encoder_count_get(&encoders.left, &ticks_measured_left);\r
- fmw_encoder_count_get(&encoders.right, &ticks_measured_right);\r
+ result = fmw_encoder_count_get(&encoders.left, &ticks_measured_left); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
+ result = fmw_encoder_count_get(&encoders.right, &ticks_measured_right); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
\r
int32_t current_ticks_left = ticks_left + ticks_measured_left;\r
int32_t current_ticks_right = ticks_right + ticks_measured_right;\r
\r
int32_t current_ticks_left = ticks_left + ticks_measured_left;\r
int32_t current_ticks_right = ticks_right + ticks_measured_right;\r
- fmw_encoder_count_reset(&encoders.left);\r
- fmw_encoder_count_reset(&encoders.right);\r
+ result = fmw_encoder_count_reset(&encoders.left); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
+ result = fmw_encoder_count_reset(&encoders.right); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
- fmw_encoders_deinit();\r
- fmw_motors_deinit();\r
- fmw_led_deinit(&pled);\r
+ result = fmw_encoders_deinit(); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
+ result = fmw_motors_deinit(); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
+ result = fmw_led_deinit(&pled); if (result != FMW_Result_Ok) { goto msg_contains_error; }\r
\r
HAL_StatusTypeDef timer_status = HAL_TIM_Base_Stop_IT(&htim6);\r
FMW_ASSERT(timer_status == HAL_OK);\r
\r
\r
HAL_StatusTypeDef timer_status = HAL_TIM_Base_Stop_IT(&htim6);\r
FMW_ASSERT(timer_status == HAL_OK);\r
\r