Уведомления
Очистить все

[Решено] Проблема с отправкой команд по CAN на STM32

R2T2
 R2T2
(@r2t2)
New Member

Доброго времени дня, коллеги!

Начал осваивать микроконтроллеры STM32, возникла необходимость взаимодействовать с контроллером сервопривода по интерфейсу CAN. Сделал тестовую прошивку с отправкой и приемом команд, но что-то пошло не так. То ли запрос не доходит до сервопривода, то ли не приходит обратный ответ.

Есть ли может у кого точно работающий пример с CAN? Надеюсь, разбор работающего кода даст ответы, где проблемы в моем коде. Могу также выложить свой проект если что.

Цитата
Topic starter Размещено : 06.06.2021 20:57
Тэги темы
Aveal
(@aveal)
Администратор Admin

Добрый вечер!

Вот статья с описанием примера работы с CAN - https://microtechnics.ru/stm32-i-protokol-can-nastrojka-v-stm32cubemx/

И также проект с отправкой, приемом и инициализацией - https://microtechnics.ru/mt_can_example/.

Если не получится разобраться, могу посмотреть Ваш проект на предмет проблем потенциальных.

ОтветитьЦитата
Размещено : 06.06.2021 21:24
R2T2
 R2T2
(@r2t2)
New Member

Огромное спасибо! Удалось по статье найти проблему в моем коде. Фильтр сообщений CAN был настроен неверно, поэтому ответ не проходил. Отключил фильтрацию и пошел трафик:

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(&hcan, &canFilterConfig);
ОтветитьЦитата
Topic starter Размещено : 11.06.2021 23:56
Поделиться:

Присоединяйтесь!

Profile Profile Profile Profile Profile
Vkontakte
Twitter

Язык сайта

Июнь 2021
Пн Вт Ср Чт Пт Сб Вс
 123456
78910111213
14151617181920
21222324252627
282930  

© 2013-2021 MicroTechnics.ru