реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> STM32 - смена прошивки пользователем через USB
ArtDenis
сообщение Apr 26 2015, 16:17
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 10-11-12
Пользователь №: 74 318



Приветствую. Сейчас думаю над тем как пользователь будет обновлять прошивку у прибора. Пока что планируется просто воспользоваться встроенным загрузчиком, который умеет заливать прошивку через протокол USB DFU. Насколько это удачный подход? Что кроме этого используется для обновления прошивок у STM32?


--------------------
http://ufa-darts.ru/ - собираем дартс-лигу в Уфе
Go to the top of the page
 
+Quote Post
kovigor
сообщение Apr 26 2015, 20:09
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(ArtDenis @ Apr 26 2015, 19:17) *
Насколько это удачный подход? Что кроме этого используется для обновления прошивок у STM32?

Можно, например, реализовать Mass-Storage устройство и копировать в него новую прошивку в виде файла. Защита прошивки - посредством CRC32. Я так делал на ARM7.
Еще вариант - реализовать CDC и терминалкой по X-Modem'у передавать в МК новую прошивку. Этот вариант, ИМХО, наилучший. Если же у прибора есть COM - порт, то и USB CDC не нужен, просто используйте имеющийся порт ...
Go to the top of the page
 
+Quote Post
smalcom
сообщение Apr 27 2015, 03:40
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата
воспользоваться встроенным загрузчиком

инструкция с картинками и у пользователей не возникает сложностей по использованию как USB DFU так и обычного способа через FlashDemo
Go to the top of the page
 
+Quote Post
ArtDenis
сообщение Apr 27 2015, 08:32
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 10-11-12
Пользователь №: 74 318



kovigor, как-то это всё сложно для обычного пользователя. И com-порта у устройства нету. Как и у большинства современных компьютеров. Поэтому тема называется "смена прошивки пользователем через USB"

smalcom, инструкция с картинками? Я планирую высылать пользователю exe-шник, который будет устанавливать USB-драйвер для DFU-устройства, подключаться к устройству, переводить его в загрузчик и автоматически прошивать. Думаю, в противном случае пользователи просто взбунтуются ))


--------------------
http://ufa-darts.ru/ - собираем дартс-лигу в Уфе
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 27 2015, 08:38
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



По-моему, если устраивает встроенный загрузчик, то стоит его и использовать - он во всяком случае никуда не денется.
Go to the top of the page
 
+Quote Post
A. Fig Lee
сообщение Apr 27 2015, 10:46
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(ArtDenis @ Apr 27 2015, 04:32) *
kovigor, как-то это всё сложно для обычного пользователя. И com-порта у устройства нету. Как и у большинства современных компьютеров. Поэтому тема называется "смена прошивки пользователем через USB"

smalcom, инструкция с картинками? Я планирую высылать пользователю exe-шник, который будет устанавливать USB-драйвер для DFU-устройства, подключаться к устройству, переводить его в загрузчик и автоматически прошивать. Думаю, в противном случае пользователи просто взбунтуются ))


Что сложно? Скопировать присланный файл на диск?
2. Com-порта нет? Вы ничего про преобразователи/переходники FT232 например, не слышали?
Как по вашему, сейчас компьютеры подсоединяются к com портам?

Мне кажется, у вас ничего не получится.


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post
ArtDenis
сообщение Apr 27 2015, 11:44
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 10-11-12
Пользователь №: 74 318



A. Fig Lee, если пользователю, чтобы перепрошить устройство, нужно покупать переходник USB-COM, то что же в этом хорошего? И зачем это вообще нужно, есть уже есть USB. Да и тема называется "смена прошивки пользователем через USB". Мне интересно, что применяют именно для прошивки через USB максимально простым для пользователя способом.


--------------------
http://ufa-darts.ru/ - собираем дартс-лигу в Уфе
Go to the top of the page
 
+Quote Post
A. Fig Lee
сообщение Apr 27 2015, 12:45
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(ArtDenis @ Apr 27 2015, 07:44) *
A. Fig Lee, если пользователю, чтобы перепрошить устройство, нужно покупать переходник USB-COM, то что же в этом хорошего? И зачем это вообще нужно, есть уже есть USB. Да и тема называется "смена прошивки пользователем через USB". Мне интересно, что применяют именно для прошивки через USB максимально простым для пользователя способом.


Да никто о покупать вообще речи не ведет. Как можно рассуждать о смене прошивки имея настолько мало знаний?
Причем в элементарнейшей области?
Даже тыкая вас в решение проблемы, вы его в упор не видите.


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post
ArtDenis
сообщение Apr 27 2015, 14:17
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 10-11-12
Пользователь №: 74 318



A. Fig Lee, т.е. прошивка пользователем приборе на STM32 через FT232 - это самый надёжный и проверенный метод, я так понимаю, с твоих слов? Или имеется ввиду другое решение проблемы?
Если я что-то не понимаю, ткни ещё раз носом biggrin.gif

Да, на всякий случай уточню. Имеется ввиду прошивка через встроенный в STM32 USB


--------------------
http://ufa-darts.ru/ - собираем дартс-лигу в Уфе
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Apr 27 2015, 15:08
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Цитата(ArtDenis @ Apr 27 2015, 20:17) *
Да, на всякий случай уточню. Имеется ввиду прошивка через встроенный в STM32 USB

Да, это самый удобный способ, но не самый надежный за счет большей сложности загрузчика, и следовательно повышенной вероятности ошибки в нём.
В порядке убывания надежности и увеличения удобности:
- самый надежный через JTAG/SWD, но требует программатор/отладчик
- менее надежный через RS232-порт, но требует наличия на компьютере RS323-порта(или преобразователь USB-RS232 )
- еще менее надежный через USB, требует на компьютере USB-порт
Go to the top of the page
 
+Quote Post
A. Fig Lee
сообщение Apr 28 2015, 10:14
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(ArtDenis @ Apr 27 2015, 10:17) *
A. Fig Lee, т.е. прошивка пользователем приборе на STM32 через FT232 - это самый надёжный и проверенный метод, я так понимаю, с твоих слов? Или имеется ввиду другое решение проблемы?
Если я что-то не понимаю, ткни ещё раз носом biggrin.gif

Да, на всякий случай уточню. Имеется ввиду прошивка через встроенный в STM32 USB


1. Да. просто потому, что загрузчик РОМ уже там и никуда не денется. Но так ты хочешь УСБ, то это к тебе не относится.
2. Ладно, вот тебе азы по УСБ. УСБ бывает разных классов и твой микроконтроллер, хотя и соединен по УСБ, может прикинутся портом
RS232. Для этого тебе не надо ничего покупать кроме шнурка УСБ для подключения. Но он видать и так есть.
В общем имплементируй CDC класс USB на своем микроконтроллере. И делай бутлоадер.

Или имплементируй другой класс, масс сторадж, тогда при втыкании твоего дивайса появится харддрайв в виндоус, скопируешь туда файл и все.


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post
ArtDenis
сообщение Apr 28 2015, 10:34
Сообщение #12


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 10-11-12
Пользователь №: 74 318



Цитата(A. Fig Lee @ Apr 28 2015, 15:14) *
1. Да. просто потому, что загрузчик РОМ уже там и никуда не денется. Но так ты хочешь УСБ, то это к тебе не относится.

А можно поподробнее про выделенное? Может я чего-то не понимаю?


--------------------
http://ufa-darts.ru/ - собираем дартс-лигу в Уфе
Go to the top of the page
 
+Quote Post
A. Fig Lee
сообщение Apr 28 2015, 10:41
Сообщение #13


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(ArtDenis @ Apr 28 2015, 06:34) *
А можно поподробнее про выделенное? Может я чего-то не понимаю?

Да, ошибся. Забыл за эти дни подробности о чем речь.
USB и собственный бутлоадер для пользователя удобней чем встроенный РОМ. Но встроенный надежней


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post
ArtDenis
сообщение Apr 28 2015, 10:52
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 10-11-12
Пользователь №: 74 318



A. Fig Lee, вообще-то встроенный в ROM загрузчик умеет прекрасно прошивать как через UART, так и через "родной" USB по протоколу DFU

Сообщение отредактировал ArtDenis - Apr 28 2015, 10:54


--------------------
http://ufa-darts.ru/ - собираем дартс-лигу в Уфе
Go to the top of the page
 
+Quote Post
A. Fig Lee
сообщение Apr 28 2015, 13:07
Сообщение #15


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(ArtDenis @ Apr 28 2015, 06:52) *
A. Fig Lee, вообще-то встроенный в ROM загрузчик умеет прекрасно прошивать как через UART, так и через "родной" USB по протоколу DFU


У всех STM32? И которые не connectivity line, STM32F103, например?

http://www.st.com/web/en/resource/technica.../CD00264379.pdf


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 06:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.0148 секунд с 7
ELECTRONIX ©2004-2016