Top.Mail.Ru
Уведомления
Очистить все

Не работает прием данных через CAN2 (STM32F407).

 Bett
(@bett)
Level 1

Здравствуйте, столкнулся с непонятной проблемой: запустил CAN1 по вашей статье (STM32 и протокол CAN. Настройка в STM32CubeMx). Все работает стабильно и правильно.

Делаю один в один но не через CAN1, а через CAN2 - не срабатывает колбэк по приему данных:

HAL_CAN_RxFifo0MsgPendingCallback()

На плате все проверил, прозвонил - не нашел проблемы. На самом деле уже все перепроверил что только можно, даже идей больше нет, поэтому решил создать тему.

Заранее благодарю всех, кто откликнется 🙂 

Цитата
Создатель темы Размещено : 04.09.2024 00:39
Aveal
(@aveal)
Top level Admin

Доброго времени суток, а настройка фильтрации как выглядит?

ОтветитьЦитата
Размещено : 04.09.2024 10:33
 Bett
(@bett)
Level 1

@aveal Как в статье, только для CAN2:

CAN_FilterTypeDef canFilterConfig;
canFilterConfig.FilterBank = 0;
canFilterConfig.FilterMode = CAN_FILTERMODE_IDMASK;
canFilterConfig.FilterScale = CAN_FILTERSCALE_32BIT;
canFilterConfig.FilterIdHigh = 0x0000;
canFilterConfig.FilterIdLow = 0x0000;
canFilterConfig.FilterMaskIdHigh = 0x0000;
canFilterConfig.FilterMaskIdLow = 0x0000;
canFilterConfig.FilterFIFOAssignment = CAN_RX_FIFO0;
canFilterConfig.FilterActivation = ENABLE;
canFilterConfig.SlaveStartFilterBank = 14;
HAL_CAN_ConfigFilter(&hcan2, &canFilterConfig);
ОтветитьЦитата
Создатель темы Размещено : 04.09.2024 12:26
Aveal
(@aveal)
Top level Admin

@bett Понятно, для CAN2 должно быть:

canFilterConfig.FilterBank = 14;
ОтветитьЦитата
Размещено : 04.09.2024 15:36
 Bett
(@bett)
Level 1

Запись от: @aveal

@bett Понятно, для CAN2 должно быть:

canFilterConfig.FilterBank = 14;

@aveal понял... сейчас проверю, надеюсь все проблемы решатся.

 

ОтветитьЦитата
Создатель темы Размещено : 04.09.2024 16:07
 Bett
(@bett)
Level 1

Прием заработал, спасибо за быстрый ответ, можно дальше работать с проектом 🙂

ОтветитьЦитата
Создатель темы Размещено : 04.09.2024 17:00
Aveal
(@aveal)
Top level Admin

@bett 👍

ОтветитьЦитата
Размещено : 04.09.2024 18:42
Поделиться: