Не могу на HAL завести CAN.
Не инициализируется.
При инициализации CAN выходит с ошибкой TIMEOUT из функции HAL_CAN_Init файла stm32f0xx_hal_can.c из этого цикла:
Код:
/* Check Sleep mode leave acknowledge */
while ((hcan->Instance->MSR & CAN_MSR_SLAK) != 0U)
{
if ((HAL_GetTick() - tickstart) > CAN_TIMEOUT_VALUE)
{
/* Update error code */
hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT;
/* Change CAN state */
hcan->State = HAL_CAN_STATE_ERROR;
return HAL_ERROR;
}
}
Как я понял модуль CAN не выходит из режима сна.
Подскажите, что делаю не так?
Весь проект прилагаю.
Вложение:
test_can.zip [508.36 KiB]
Скачиваний: 151