Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

STM32F4 discovery DFU mode проблем
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=13803
Страница 1 от 1

Автор:  NikB [ Пон Май 25, 2015 10:42 am ]
Заглавие:  STM32F4 discovery DFU mode проблем

STM32F4 discovery DFU mode проблем:
Не мога да подкарам бутлодера през USB.
ТУКА цитират STM32 AN2606
и твърдят, че през микро USB не може да тръгне бутлодера.

Някой срещал ли е тоя проблем? Има ли решение?

Автор:  miro_atc [ Пон Май 25, 2015 11:05 am ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

дали е микро или друг конектор не е толкова важно.

Чипът има 2 usb-та. Буутлоадера ползва само едното... виж кое се ползва и дали е изведено и как на въпросната платка.

Автор:  NikB [ Пон Май 25, 2015 12:43 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

никое от усб не се появява като dfu устройство в win, а през uart си работят dfu командите

Автор:  miro_atc [ Пон Май 25, 2015 12:51 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

очевадно, иначе нямаше да пуснеш тема ;-)

Въпросът беше ще търсим ли проблема и аз ли да погледна чаршафите...

Автор:  NikB [ Пон Май 25, 2015 2:40 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

А, разбрах - да има две USB :
- мини, от където се захранва и през който се програмира (ползвам CooCox)
- микро (user), което е описано (май най-кратко ТУК-RU) - това е някакво OTG и пише, че се ползва за DFU.

Автор:  miro_atc [ Пон Май 25, 2015 3:48 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

бр...

чипът може да има два USB контролера (две периферии). Единият в чаршава се водеше май OTG_HS другия OTG_FS. Описани са в референс мануала.
А може да има и само една. Точно колко и какво има е описано в дейташийта.

Бутстрапа, който е набит в ROM-a, обаче програмира и бачка само с едната периферия. Коя точно и кои пинове ползва е описано в оня APP note.

Накрая имаш схема на дискавъри платката.

Отваряш гореизброените документи гледаш какво имаш, какво ти трябва за буутстрапа и дали ти е възано по схема.
Дали ползваш кокос и дали конекторите са otg дали са мини, микро или std - няма абсолютно никакво значение. Важно е това OTG дето се ползва от буутстрапа да го има физически вътре в чипа и да е изведено на някакъв usb конектор на платката.

Автор:  miro_atc [ Пон Май 25, 2015 7:29 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

тъй... STM32F4 има различни discovery платки, нямаше да е зле да знаем за коя от всичките става дума....
Аз проверих с 407 - има изведено правилното usb. На 429 е изведено бъзото, т.е. DFU-то няма да работи (поне не и директно).

Автор:  NikB [ Вто Май 26, 2015 8:32 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

Благодаря ти много и извинявай, че не съм бил конкретен в питането :)!

Да, stm32ф429 - има ли шанс?
Поне UART командите за програмиране са ок и бързо може да се спретне нещо.
Но ако има шанс, ще е добре да пусна и DFU то.
http://www.dx.com/p/stm32f4-discovery-k ... WStfEYXU3M
Изображение

Автор:  miro_atc [ Вто Май 26, 2015 8:53 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

NikB написа:
Да, stm32ф429 - има ли шанс?


тц..
вече обясних - на конектор е изведен OTG HS, а DFU работи с OTG FS контролера...

Или трябва да пренабиеш ROM-a (няма шанс)... или да изкараш още един usb конектор, но вероятно пиновете се ползват, а като гледам няма да се оправиш с преправяне на схема...

Автор:  gicho [ Сря Май 27, 2015 2:49 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

Не знам какво гониш, но като спасителен вариант можеш да сложиш твой бутлоадер който да клати през другото USB. Това значи при теб да наливаш еднократно бутлоадера (SWD, сериен) и после при клиента ще работи през другото усб.

Автор:  NikB [ Сря Май 27, 2015 8:31 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

gicho написа:
Не знам какво гониш, но като спасителен вариант можеш да сложиш твой бутлоадер който да клати през другото USB. Това значи при теб да наливаш еднократно бутлоадера (SWD, сериен) и после при клиента ще работи през другото усб.

На въпроса "какво гоня" - в началото разгледах DFU и ми хареса, реших да се задълбоча, но с тая платка ударих на камък.
Мисля, че ще се спра на решението да ползвам USART флашването, дори започнах малък тестов тул за проба на технологията (за сега на C#).
(И без това за тоя проект тази платка е след един гейтуей, който можем да го научим и да я програмира).
Но като по-универсално решение - нещо ми се губи идеята.

То така и така съм ви ангажирал в тая тема, моля, поясни ми варианта, който предлагаш за "моя" бутлодер:
а) да сменя бутлодера с някой къстъм, който да е през другото USB - това вероятно е много сложно;
или
б) в програмната памет да сложа нещо, което да прихваща управлението и да флашва останалата част (вкл, и да ползва външен чип с флаш памет).
впрочем, в) предложението (miro_atc) - да изведа бавното FS usb и да го ползвам с оригиналното DFU също е вариант.

Преди време, по други проекти, когато друг колега се занимаваше с флашванията, обсъждажме идеята да сложим малка процесорна система, специално да програмира основните процесори. Напоследък това изглежда все по-популярно.

Автор:  miro_atc [ Сря Май 27, 2015 9:40 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

Изобщо не става ясно какво гониш...

Вградените буутлодери са удобни за първоначално програмиране при производство, защото няма нужда от jtag емулатори, кабели, конектори и т.н. В общия случай се ползва някой от интерфейсите, който така или иначе е изведен в устройството.
Недостатъкът обаче е, че няма никаква защита. Не става да дадеш на клиент да ползва тоя подход. Решението е да сложиш твой буутлодер в първите 16К и той да зарежда/флашва приложението. Така устройството ще може да се ъпдейтва и на полето.

Автор:  NikB [ Сря Май 27, 2015 10:16 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

miro_atc написа:
Изобщо не става ясно какво гониш....

Вярно :)
Добре, задачата е обща: да създам възможност за флашване, дори и на полето.
Важното е, че ми помогнахте, благодаря много!
Спестихте ми маса четене, а и ми изяснихте добрите практики.

Автор:  sukhoi [ Чет Май 28, 2015 8:41 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

С DFU-то имах следните проблеми за F3
- тръгна с по-старата версия, не с новата която е на сайта. Новата версия има бъг и не генерира от hex файла.
Също дори и със старата версия, след като му дам да валидира записа, спира по средата с грешка.
А бе бъгава история...
- виж дали са ти вкарани в установени състояния пиновете за RS 232 буутлоадър.

Общо взето голяма/но приятна/ главоблъсканица са микроконтролерчетата.

Само, че с едно CPU315, една разпределена периферия ET200 и един комфорт панел(тях ги зоря с всякакви шаренийки и менюта с 20-30 екрани) за една седмица можеш да навържеш и подкараш няколко инвертора и десетки сензори, дето за половин година не можеш да направиш със ситния хардуер.
Е разбира се цените са солени.
Едно време като бях в Олимекс се радвахме на шаренийките върху малък тъчскрийн и с екзампъл на PIC32. Ехх хубави времена бяха :)

Автор:  NikB [ Сря Юни 10, 2015 11:48 pm ]
Заглавие:  Re: STM32F4 discovery DFU mode проблем

Сигурно от десетина дни не остава време да се забавлявам с UART FLASH програмера си за STM32F4 (C#).
Ще постна сорса тук, ако на някой му се забавлява - да си играе с нея.
Направих му командите за GetId, другите Get на описания, ReadMem, Go.
Във WriteMem имам някакъв малък бъг (като (ако) го оправя, пак ще пиша).
Някои неща може да изглеждат странни, защото има 1-2 функции от приложна библиотека.
Други могат да изглеждат странно, заради предкомпютърните устройства.

Има конзолно приложение и windows form application, които ползват едни и същи класове.
Основният клас е UART_Flash_Prot_STM32.

ПП
За пълнота слагам линка към описанието на хватките:
готова примерна програмка: http://stm32f4-discovery.com/2014/09/pr ... with-uart/
описание на командите: http://www.st.com/web/en/resource/techn ... 264342.pdf

Прикачени файлове:
Коментар на файл: Солюшън:
UART_Flash_002noLib.rar [89.67 KiB]
190 пъти

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/