Raven 8 7 июня, 2021 Опубликовано 7 июня, 2021 · Жалоба On 6/4/2021 at 11:28 AM, ovn said: https://istarik.ru/blog/stm32/159.htmlSTMCubeMX, настраиваю CAN по этой статье для STM32F103, открываю пример с Гита и пробовал сам всё проинициализировать, но программа вешается при инициализации CAN в отладчике, при этом после POR(выключения питания) нормально запускается из FLASH. Что может быть? Ну, раз из FLASH стартует нормально, значит, проект в целом рабочий. Почему при всем этом вешается в отладчике - надо разбираться. Тут вам и флаг в руки. Так и становятся настоящими embedded programmers. Кстати, на этом пути вам на этом форуме охотно помогут. Не любят только откровенных любителей халявы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 129 7 июня, 2021 Опубликовано 7 июня, 2021 · Жалоба При отладке еще, кстати, по-умолчанию, флаг 'DBG' в регистре MCR установлен. Это так, к слову. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 8 июня, 2021 Опубликовано 8 июня, 2021 · Жалоба Делюсь (переходник CAN-USB, правда, на STM32F0x2, т.к. F103 не умеет одновременно USB и CAN). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 9 июня, 2021 Опубликовано 9 июня, 2021 (изменено) · Жалоба 23 часа назад, Eddy_Em сказал: Делюсь (переходник CAN-USB, правда, на STM32F0x2, т.к. F103 не умеет одновременно USB и CAN). Спасибо, я этот проект нашёл ещё в первый час заморочек, вот и получается, что на git всего 3 простых проекта, при этом под другие чипы. А если кто-то что то и делает, в принципе простенькое, то это уже ноу-хау и на этом деньги можно срубить, никто исходниками делиться не будет. Простой пример, намотка пробега авто, просто замена пакетов от ABS: https://www.drive2.ru/b/558230025954920672/ Изменено 9 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 129 9 июня, 2021 Опубликовано 9 июня, 2021 · Жалоба Повторю, все-таки. Регистр MCR, бит 'DBF' по умолчанию в 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 9 июня, 2021 Опубликовано 9 июня, 2021 · Жалоба 19 минут назад, Arlleex сказал: Повторю, все-таки. Регистр MCR, бит 'DBF' по умолчанию в 1 Понял, спасибо Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 9 июня, 2021 Опубликовано 9 июня, 2021 (изменено) · Жалоба Подключил шильд приёмопередатчика(трансивер TJA1050), при этом один ранее купленный другой SN65HVD230 оказался дохлым, в режимах Loopback combined with Silent, Loopback и Silent работает, я могу передавать в шину и принимать из шины кадры, анализатором CAN вижу, что кадры правильные, а в режиме Normal выходит в void HAL_CAN_ErrorCallback(CAN_HandleTypeDef *hcan) { uint32_t er = HAL_CAN_GetError(hcan); sprintf(trans_str,"ER CAN %08lX", er); HAL_UART_Transmit(&huart1, (uint8_t*)trans_str, strlen(trans_str), 100); } ошибка 0x80 Изменено 9 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 129 10 июня, 2021 Опубликовано 10 июня, 2021 · Жалоба Сдается мне, что где-то у Вас разошлись скорости или настройки точек семплирования в девайсах. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 18 июня, 2021 Опубликовано 18 июня, 2021 (изменено) · Жалоба TJA1050 похоже в каком-то симплексном режиме работает, с ним в режиме Normal ошибки, поменял нерабочий SN65HVD230, подключил и заработало. 09.06.2021 в 08:47, Arlleex сказал: Повторю, все-таки. Регистр MCR, бит 'DBF' по умолчанию в 1 Если всё настроено нормально, то не требуется. Изменено 18 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Doka 1 18 июня, 2021 Опубликовано 18 июня, 2021 · Жалоба On 6/7/2021 at 12:17 PM, ovn said: их всего то штуки 3 на весь GIT, всё перелопачено за эти дни по нескольку раз а если копнуть? https://github.com/iDoka/awesome-canbus#arm On 6/10/2021 at 8:33 AM, Arlleex said: Сдается мне, что где-то у Вас разошлись скорости или настройки точек семплирования в девайсах. вроде бы точка семплирования выбирается не исходя из идентичности настроек, а исходя из длины/топологии шины Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 25 июня, 2021 Опубликовано 25 июня, 2021 · Жалоба основная проблема, что на STM32F446RE при инициализации CAN из HAL вылетает в ошибку, на STM32F103C8 всё нормально, хотя код инициализации CAN идентичный, не важно HSI или HSE, бит готовности опорника выставляется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 172 25 июня, 2021 Опубликовано 25 июня, 2021 · Жалоба 10.06.2021 в 08:33, Arlleex сказал: Сдается мне, что где-то у Вас разошлись скорости или настройки точек семплирования в девайсах. Посмотрите соседнюю тему: автор до сих пор не смог правильно настроить тактирование МК. О каком CAN в таком случае может идти речь? 41 минуту назад, ovn сказал: основная проблема, что на STM32F446RE при инициализации CAN из HAL вылетает в ошибку Когда строят дом, сперва делают фундамент, а уж только после этого - кладут стены и крышу. Так и у вас: о программировании какого CAN-а может идти речь, если вы до сих пор не сумели нормально запустить тактирование МК? Один из первых этапов с которых начинается создание проекта на МК: изучение и настройка тактирования (различных генераторов и доменов), питания, GPIO, мультиплексоров пинов, средств отладки, обработки исключений/прерываний и т.п. базовых вещей. Только после того, как это всё будет работать чётко и без вопросов, только после этого можно приступать к CAN, UART и прочим интерфейсам и периферийным блокам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 25 июня, 2021 Опубликовано 25 июня, 2021 (изменено) · Жалоба 3 часа назад, jcxz сказал: Посмотрите соседнюю тему: автор до сих пор не смог правильно настроить тактирование МК. О каком CAN в таком случае может идти речь? Когда строят дом, сперва делают фундамент, а уж только после этого - кладут стены и крышу. Так и у вас: о программировании какого CAN-а может идти речь, если вы до сих пор не сумели нормально запустить тактирование МК? Один из первых этапов с которых начинается создание проекта на МК: изучение и настройка тактирования (различных генераторов и доменов), питания, GPIO, мультиплексоров пинов, средств отладки, обработки исключений/прерываний и т.п. базовых вещей. Только после того, как это всё будет работать чётко и без вопросов, только после этого можно приступать к CAN, UART и прочим интерфейсам и периферийным блокам. Уже написано, что тактирование РАБОТАЕТ, и CAN на STM32F103C8 полностью работает во всех режимах, а на STM32F446RE нет. Изменено 25 июня, 2021 пользователем ovn Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 172 25 июня, 2021 Опубликовано 25 июня, 2021 · Жалоба 3 минуты назад, ovn сказал: Уже написано, что тактирование РАБОТАЕТ, и CAN на STM32F103C8 полностью работает во всех режимах, а на STM32F446RE нет. И при чём тут F103, если запускаете на F446? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ovn 0 25 июня, 2021 Опубликовано 25 июня, 2021 · Жалоба 47 минут назад, jcxz сказал: И при чём тут F103, если запускаете на F446? Сначала запускал на F103, потом на F446, а надо на F205, которого пока нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться