Jump to content

    
Sign in to follow this  
wellcom

Bootloader STM32 + CAN

Recommended Posts

О, немного опоздал.

Но вот к концу года бывает делаю какую-нибудь праздничную иллюминацию.

Здесь прект (использовался KEIL) модуля светодиодной иллюминации на шине CAN.

Отдельно загрузчик, отдельно приложение.

По JTAG прошивается загрузчик, а уж приложение потом программируется по CAN-у.

 

 

А вот здесь собственно проект под центральную плату на STM32F103ZE которая сама прошивается через RS232, а остальные узлы прошивает по CAN.

Используется протокол Y-modem и Y-modem поверх CAN с криптозащитой шифром AES 256 бит и проверкой по MD5 или CRC по выбору.

(Осторожно! Использовалась RTOS :biggrin: ) :santa2:

 

Большое спасибо! :cheers: :rolleyes: ...буду разбираться! :smile3046:

Share this post


Link to post
Share on other sites
А вот здесь собственно проект под центральную плату на STM32F103ZE которая сама прошивается через RS232, а остальные узлы прошивает по CAN.

Используется протокол Y-modem и Y-modem поверх CAN с криптозащитой шифром AES 256 бит и проверкой по MD5 или CRC по выбору.

(Осторожно! Использовалась RTOS :biggrin: ) :santa2:

 

Александр, вы не могли бы перевыложить второй файл (). Не могу его скачать...

Share this post


Link to post
Share on other sites

x893

Не могли бы поделиться протоколом для прошивки через CAN для OpenBLT?

Снял бы сам, но под рукой нет платки PCAN-USB что они рекомендуют.

Очень нужно для нашего проекта УД

https://sites.google.com/site/cansmarthouse/

Share this post


Link to post
Share on other sites
У меня есть проект загрузчика по CAN для STM32.

Могу поделиться, но обсуждать не имею возможности.

 

Система такая.

Загрузчик всегда сидит в контроллере и запускается первым.

В течении некоторого времени он ждет прихода сигнала по CAN от том, что кто-то хочет его перепрограммировать.

Если сигнала нет он проверяет целостность основной программы по CRC или MD5(в варианте с толстым микроконтроллером) и передает ей управление.

Если сигнал есть, то начинается прием и программирование пакетов во Flash.

Потом отдельная команда на переход к основному приложению.

 

Если это еще возможно, не могли бы вы поделиться проектом,пожалуйста?

Share this post


Link to post
Share on other sites

Кому-нибудь удалось скачать файлы, или это фейк был? ;)

Автор файлов сообщения читает, вопросы игнорирует, файлы удалил, типа...

Share this post


Link to post
Share on other sites
Кому-нибудь удалось скачать файлы, или это фейк был? ;)

Автор файлов сообщения читает, вопросы игнорирует, файлы удалил, типа...

Ребят вы себе представляете хоть каково это поддерживать проекты всех статей которые я написал? И еще со всеми переписываться.

У меня с тех пор компьютеры несколько раз сгорали. Менял хостеров и домены.

Ну потерян тот проект. И с STM я больше не вожусь. :laughing:

Share this post


Link to post
Share on other sites

А почему на форуме вложение улетело?

 

P.S. Ладно хоть тут ответили, а то я сижу жду ответа из лички... не ищу ничего.. надеялся..

 

Ребят, мож кто успел скачать в свое время, поделится? )))

Share this post


Link to post
Share on other sites
Вот вычитал, что в STM32F412xxx штатный загрузчик может грузить по CAN2 , PB5, PB13. Для всех типов корпусов. ( п. 3.16 Boot modes ).

 

Да, но это когда к ней подключен только один контроллер.

 

Иными словами, если у меня 100 девайсов на шине CAN и потребуется одному из них сказать "а перейди-ка в режим обновления прошивки, сейчас буду тебе данные новой прошивки слать" - не выйдет.

 

Видимо прийдется свое заново корячить.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this