ovn 0 28 июня, 2021 Опубликовано 28 июня, 2021 (изменено) · Жалоба На плате NUCLEO-F446RE( STM32F446RE) CAN2 работает, а CAN1 ошибка инициализации при одинаковом коде, хоть в Кубике, хоть ручками. Есть идеи почему не работает CAN1? Изменено 28 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 34 28 июня, 2021 Опубликовано 28 июня, 2021 · Жалоба Конечно есть ! Потому что 1 != 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 29 июня, 2021 Опубликовано 29 июня, 2021 · Жалоба 16 часов назад, x893 сказал: Конечно есть ! Потому что 1 != 2 А без шуток? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 29 июня, 2021 Опубликовано 29 июня, 2021 · Жалоба 20 минут назад, ovn сказал: А без шуток? А какие тут могут быть шутки, когда Цитата ...ошибка инициализации при одинаковом коде... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 29 июня, 2021 Опубликовано 29 июня, 2021 · Жалоба 4 минуты назад, Arlleex сказал: А какие тут могут быть шутки, когда Полистайте топик вверх: Для ТС нет разницы не то что между 1 и 2, но даже между разными МК. Поэтому не удивительно что у него не работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 29 июня, 2021 Опубликовано 29 июня, 2021 (изменено) · Жалоба У STM32F103С8 один контроллер CAN, ещё и общее с USB прерывание, у STM32F446RE два контроллера CAN, CAN2 работает принимает-посылает, CAN1 ошибка инициализации такая же как в самом начале темы, т. е. причины проблемы не понятны, тактовый генератор стартует, флаг выставляется, код инициализации контроллеров идентичен(1 != 2 млять, естественно дескрипторы контроллеров и структуры разные). Похоже никто не может ответить почему, никто с этим не сталкивался. Ясно, что Кубик сам по себе глючный, хотя SPI флешка с использованием стандартных настроек Кубика и API функций HAL(см. соседнюю тему) заработала сразу. Изменено 29 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 29 июня, 2021 Опубликовано 29 июня, 2021 · Жалоба Да конечно не сталкивался, потому что только Вам и никому более не известно, что Вы там ковыряете и что там у Вас в коде нагенерировалось. У меня что на F429 оба CAN-а работают, что на F446. Код накатан без экосистемы куба, поэтому чем он отличается от Вашего я без понятия, как и Вы (это должно быть очевидно). Проверяйте схемы синхронизации периферии, везде ли правильные делители, везде ли правильно настроены GPIO; в конце концов, нет ли соплей между Rx/Tx, да и вообще есть ли контакт с нужных GPIO на Rx/Tx приемопередатчика. А то на отладочных платах любят 0-резисторами (отсутствующими по дефолту) подключаться к штырям. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 30 июня, 2021 Опубликовано 30 июня, 2021 (изменено) · Жалоба 15 часов назад, Arlleex сказал: Да конечно не сталкивался, потому что только Вам и никому более не известно, что Вы там ковыряете и что там у Вас в коде нагенерировалось. У меня что на F429 оба CAN-а работают, что на F446. Код накатан без экосистемы куба, поэтому чем он отличается от Вашего я без понятия, как и Вы (это должно быть очевидно). Проверяйте схемы синхронизации периферии, везде ли правильные делители, везде ли правильно настроены GPIO; в конце концов, нет ли соплей между Rx/Tx, да и вообще есть ли контакт с нужных GPIO на Rx/Tx приемопередатчика. А то на отладочных платах любят 0-резисторами (отсутствующими по дефолту) подключаться к штырям. Проблема вроде не в PHY(физическом уровне). https://stackoverflow.com/questions/64840408/cannot-exit-sleep-mode-of-bxcan-on-stm32f429igt-in-loopback-mode ан...нет https://www.cyberforum.ru/arm/thread2011314-page2.html Решение: "Если нет трансивера и хочется погонять Сайлент лупбек то подтяните софтово ножку тх (или Rx) не помню к 3.3 и все будет ок. Иначе Кан не стартанёт" Подтянул RX CAN1 GPIO Pull-up, и инициализация прошла, а на CAN2 работает без подтяжки. Чудны дела твои, Господи. Изменено 30 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 30 июня, 2021 Опубликовано 30 июня, 2021 · Жалоба У Вас что, Loopback-mode? Вы на реальной сети проверяете или как? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 30 июня, 2021 Опубликовано 30 июня, 2021 (изменено) · Жалоба 34 минуты назад, Arlleex сказал: У Вас что, Loopback-mode? Вы на реальной сети проверяете или как? Изначально, на STM32F103C8, вопрос был про Loopback-mode, не проходит инициализация, уже потом, когда заработало, в этом режиме, подключал физику. В общем, контроллер CAN тут сделан так, что он не работает без PHY(физики), хоть в Normal, хоть в Loopback, ему нужен приёмопередатчик, который RX подтянет к логической единице, если его нет, надо софтово подтягивать. Интересно, в RM про это написано? Изменено 30 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 30 июня, 2021 Опубликовано 30 июня, 2021 · Жалоба Сейчас то в чем проблема? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться