Arduino в качестве USB-UART
- Войдите на сайт для отправки комментариев
Здравствуйте уважаемые форумчане!
Прошу помощи в таком вопросе:
Хочу запрограммировать плату stm32f103c8t6 с помощью ардуины, которая работает в режиме USB-UART переходника (источник).
Для программирования использую Flash Loader Demo. При подключении ардуины с прицепленной stm32 через USB-hub удалось десяток раз залить прошивку в плату stm32. Делее при подключении хаба (даже без подключенной ардуины) виндовс выдает "устройство не опознано" (видимо спалил хаб).
При подключении ардуины с прицепленной stm32 на прямую к USB компьютера Flash Loader не видит плату stm32 (ардуина при этом определяется).
Как залить прошивку в плату stm32? В чем "волшебная сила" юсб хаба через который все работает, а на прямую нет?
Как залить прошивку в плату stm32?
Я бы не мучал Ардуину и воспользовался хардварным USB-UART переходником. STM32 в режим бутлоадера (BOOT0 - 3V3, BOOT1 - GND) не забыли переключить? Flash Loader Demonstrator видит COM-порт? Настройки COM-порта не меняли?
Jeka_M, хардварного переходника под рукой нет, а ждать неохота. BOOT0 выставлен в 1, программа порт видит, но: при работе через юсб хаб все проходит отлично (прошивка заливается без проблем), а при работе на прямую от юсб порта Flash Loader выдает ошибку что не может запустить бутлоадер.
Хаб вот такой:
Подключал бы через него и дальше, но видимо он сгорел.
Странно всё это. Ну ладно хаб вышел из строя, но напрямую то должно работать. Х/з что у вас там с USB портами происходит... Может хаб и USB-порт попалил? В другой пробовали втыкать?
Jeka_M, в компе все порты рабочие (флешкой проверял), так же пробовал на нетбуке. Может хаб что то с сигналом делал?
есть хорошая шутка - "электроника - наука о контактах". в данном случае, по большому счету возможны варианты
1) где-то не контачило
2) где-то была слишком малая напруга
3) где-то была слишком большая напруга
в хабе особо гореть то нечему, спалить его непросто. если бы еще хаб был с поддержкой дополнительного питания, логично было бы предположить, что юсб-порт не выдает достаточного тока а хаб усиливает. но у этого хаба нет доп.питания. тогда возможен обратный вариант - юсб-порт выдавал слишком большой ток или напругу, а на хабе оно съедалось. и крайний вариант - где-то был плохой контакт, который окончательно пропал. мораль - пробуем всё то же самое на другом компе с другим юсб-шнурком.
Maverik, Jeka_M, , спасибо за советы! После долгих испытаний так и не удалось подключить на прямую... где-то точно что-то не то(
Пока что удалось подключить хаб, все работает... когда из цепочки его удаляю опять не работает(
Можно и так, но зачем? Купи у китайцев Jtag программатор и будет тебе счастье. У него куча дополнительных возможностей.
ЗЫ: если с дуней не справился и простейшую пересылку не смог сделать, то рано тебе stm32 юзать
Купи у китайцев Jtag программатор и будет тебе счастье. У него куча дополнительных возможностей.
Ему и st-link'а за 2-3$ достаточно будет.
MacSim, Jeka_M мне и USB-to-Serial за 1$ достаточно будет, но, во-первых от китайцев ждать месяц, во-вторых свободная ардуина нано уже есть. Вопрос же был не в этом. И с ардуиной все нормально прошивается, но почему-то только через хаб!
почитай статью http://www.count-zero.ru/2017/bluepill/ там сказано что в соответствии с даташитом нужно на stm поменять резистор R10 с 10кОм на 1.5кОм и будет тебе счастье :)
почитай статью http://www.count-zero.ru/2017/bluepill/ там сказано что в соответствии с даташитом нужно на stm поменять резистор R10 с 10кОм на 1.5кОм и будет тебе счастье :)
Во первых - смотрим на даты. А во-вторых, этот резистор здесь абсолютно не при чем.
Если б Вы немного больше шарили в вопросе, в который лезете советовать - знали бы, что USB на плате СТМ в процессе не участвует и менять резистор в нем бестолку.
есть хорошая шутка - "электроника - наука о контактах". в данном случае, по большому счету возможны варианты
1) где-то не контачило
2) где-то была слишком малая напруга
3) где-то была слишком большая напруга
4) Контачило, но не там где нужно
почитай статью http://www.count-zero.ru/2017/bluepill/ там сказано что в соответствии с даташитом нужно на stm поменять резистор R10 с 10кОм на 1.5кОм и будет тебе счастье :)
Спасибо огромное! Благодаря вам решил проблему.
Раз уже тема ожила, спасибо всем огромное за помощь!
Сейчас прошиваю из arduinoIDE без каких-либо дополнительных плат ардуин, ст-линков или замен резистора напрямую через USB порт на плате. Руководство в стаье https://habr.com/post/395577/
Раз уже тема ожила, спасибо всем огромное за помощь!
Сейчас прошиваю из arduinoIDE без каких-либо дополнительных плат ардуин, ст-линков или замен резистора напрямую через USB порт на плате. Руководство в стаье https://habr.com/post/395577/
прошиваете и слава богу. Хотя такое чувство. что вы либо уже забыли, в чем было дело, либо за 3 года не особо продвинулись в освоении СТМ32 :)... ибо ваше замечание совершенно не соответсвет заглавном у посту темы .