Спасибо, сделал так чтобы на мою F411 загружался код из Arduino IDE
@NRelectronics9 ай бұрын
Отлично, молодцы.
@LukasAleks4 жыл бұрын
Большое спасибо Вам за данный видеоматериал. Всё доступно объяснили.
@NRelectronics4 жыл бұрын
Пожалуйста. Главное, что материал в строгом соответствии с документацией на микроконтроллер, а не как у других.
@valera_kardan3 жыл бұрын
@@NRelectronics Что будет если подключить плату без нажатия BOOT0?
@СергийСергос4 жыл бұрын
Спасибо, очень интересная тема для новичка, жду новых видео как праздник!!!)))
@СергийСергос4 жыл бұрын
Ссылка не работает на гитхаб((
@NRelectronics4 жыл бұрын
она верная, но ютуб её сокращает и она не работает почему-то... Материал видео: github.com/nr-electronics/DiY/tree/master/Program%20STM32%20without%20a%20programmer%20via%20UART%20and%20DFU%20(USB)
@backslash52614 жыл бұрын
Спасибо за видео! Делайте еще! Про дисплеи обещали, я жду _)
@NRelectronics4 жыл бұрын
Будут конечно!
@Sergey_Evdokimenko4 жыл бұрын
очень полезно особенно про DFU спасибо
@NRelectronics4 жыл бұрын
пожалуйста. По DFU нужен один джампер/кнопка/переключатель и рабочий usb плавно превращается в шорты))) ... в разъем для программирования...
@lite_go_95654 жыл бұрын
Отличное видео, Спасибо
@NRelectronics4 жыл бұрын
Спасибо.
@sergeypoltarakov14322 жыл бұрын
Спасибо большое!!! Очень пригодилось !!!
@NRelectronics2 жыл бұрын
Пожалуйста) Смотрите дальше))
@hammerman125rus2 жыл бұрын
Спасибо за видео! Функционал DFU встроен в загрузчик? В CubeMX при настройке пинов не нужно задавать этот режим? У меня black pill F401
@NRelectronics2 жыл бұрын
Аппаратно встроен. Наличие только в даташите надо уточнять. В блэкпиле есть вроде.
@kubenet4 жыл бұрын
Спасибо за видео) Тема использования DFU на микроконтроллерах STM32 очень интересная
@NRelectronics4 жыл бұрын
Пожалуйста Артем. Эта тема почему-то не освещается, по старинке все шьем по swd и uart, а там возможностей гораздо больше)
@Voha4 жыл бұрын
Недавно у одного дедушки выходило подобное видео, но там как то не очень, а на этом канале всегда попадается годная инфа, так что сейчас гляну)
@NRelectronics4 жыл бұрын
Ага, сейчас он прочитает как вы его обозвали и обидется)))) Кстати, его видео, название, не соответствует его содержанию. Облажался конкретно. Я просто снял как правильно эти технологии работают.
@Voha4 жыл бұрын
@@NRelectronics спасибо Вам за поясняющий ответ, а то меня грызла совесть, что я его видос в перемотке отрывками смотрел, но успел наехать)) У Вас же как всегда правильный подход и чёткая структурированная подача материала, которая расширяет кругозор. Смотрю Ваш канал редко, т.к. знаю, что тут надо внимательно слушать/смотреть "от и до", чтоб ничего не пропустить
@Dmitriy_KIPiA4 жыл бұрын
@@NRelectronics я так понимаю имя этого дедушки начинается на букву "В"??)
@NRelectronics4 жыл бұрын
желательно внимательно конечно смотреть. Так как все кроется в деталях...
@Voha4 жыл бұрын
@@Dmitriy_KIPiA есть такая буква. Вращайте барабан!
@Галичанскийсифилис Жыл бұрын
Привет.А ты не пробовал подключать внешнюю NAND флеш к stm32 контроллеру ?
@NRelectronics Жыл бұрын
Привет. Ещё пока нет. Всё правда лежит...
@verwolf18893 ай бұрын
А почему 128кб памяти пишет если у нее 64 ? Если в опции таргет выбрать не 128 а 64 --- это повлияет на загрузку или выгрузку прошивки из или в мк ?
@NRelectronics3 ай бұрын
У меня плата значит с индексом CB
@TimofeiM-f2q8 ай бұрын
Добрый день, подскажите пожалуйста, можно ли STLinkом залить прошивку в STM32F103VET6 просто подпаявшись к соодтветствующим выводам ( 5V VDD(49),VSS(50 GND), CLK (76), DIO (72). Или обязательно её распаивать на плату с обвязкой?
@NRelectronics8 ай бұрын
Добрый день. О какой именно обвязке вы говорите? Там напрямую от стлинка подключаются к микроконтроллеру на выводы swd.
@AndySm19734 жыл бұрын
Спасибо! А в каком документе указана конфигурация BOOT0/BOOT1 для перевода в DFU mode
@NRelectronics4 жыл бұрын
В любом Reference Manual. Например для контроллеров STM32G0x1 это RM0444 Reference Manual.pdf. На странице 60 подробно описано. По аналогии и в других даташитах на МК.
@AndySm19734 жыл бұрын
@@NRelectronics да, нашел, спасибо!
@RoonBoh3 жыл бұрын
Здравствуйте, на текущий момент если следовать вашей информации по BlackPill, то драйвер от ST-CubeProg не работает "код ошибки 28", а когда мы со свежей версии устанавливаем драйвер то он не работает в StCubeProg. Вы не могли бы выложить свой драйвер?
@NRelectronics3 жыл бұрын
Здравствуйте. Попробуйте платку поменять, возможно дело в ней.
@Shinsei754 жыл бұрын
Когда из 103 делаешь Black Magic Probe, на него программа заливается по dfu и залилась нормом. Это загрузчик нельзя, а программу можно таким образом заливать
@NRelectronics4 жыл бұрын
разъясните пожалуйста по подробней что там по Black Magic Probe как там делается? интересно тоже.
@Shinsei754 жыл бұрын
NR.electronics я свой делал по этой рекомендации xelin.ru/content/1246. Лоадер прошивал через конвертер, а саму программу как ДФУ через юсб шил.
@NRelectronics4 жыл бұрын
Ваша ссылка к сожалению не работает...
@Shinsei754 жыл бұрын
NR.electronics странно, на днях ещё работала, может с сервером у них сбой? Попробуйте вот эту, itnan.ru/post.php?c=2&p=292459
@NRelectronics4 жыл бұрын
Спасибо! Почитал. Интересная тоже реализация. Расстраивает только что МК в нем меньше чем в J-Link`е. А так классно.
@dr.emmettbrown84664 жыл бұрын
Для отладочных плат вопросов нет, а вот как организовать обновление прошивки в конечном изделии силами пользователя не поднимая сильно стоимость изделия, вот это вопрос. Мне только приходит на ум доп. МК типа STM32F0xx за ~35 руб. + microSD. STM32F0 читает прошивку с microSD по SPI, прижимает ногу BOOT0 основного МК и заливает прошивку по любому удобному протоколу. Кмк, способы из видео слишком сложны для конечного не подготовленного пользователя
@sozdatelEd4 жыл бұрын
FLASH контроллера разделяем на 2 части. Таким образом будет своя программа-загрузчик, которая начнёт работать при включении питания по адресу 0x08000000 и основная программа по адресу например 0x08002000. При включении начинает работать наш собственно написанный загрузчик, который проверяет наличие новой прошивки (например на подключенной SD-карте памяти). Если есть новая прошивка, то наш загрузчик затирает область памяти, отведённую для основной программы и записывает туда новую прошивку. После записи прошивки или если новой прошивки с момента включения не обнаружено мы прыгаем по адресу исполнения основной программы и переносим вектора прерываний. Всё. Даже если будет неисправна основная программа устройство не станет кирпичом. В таком случае после изготовления устройства необходимо записать наш загрузчик. Для клиента пишем свою инструкцию по обновлению ПО. "как организовать обновление прошивки в конечном изделии силами пользователя не поднимая сильно стоимость изделия" - я делил FLASH stm32f103c8t6 на 3 блока и в первом организовывал загрузчик, во втором блоке основная программа и третий блок был отведён для файловой системы. Загрузчик при включении определял подключено ли устройство к USB и если подключено, то оно обнаруживалось как обычная флешка. Клиент записывал на неё криптованную прошивку. Далее при включении устройства от основного питания загрузчик определял, что устройство не подключено к USB и есть новая прошивка, проверял её целостность и стирал часть FLASH отведённую для основной программы, декодировал прошивку и записывал её в нужную область, затирал файл прошивки. Далее запускалась основная программа. На все манипуляции по смене прошивки уходило менее 2 секунд при старте устройства. Удорожания конструкции минимальны - USB-разъём и обвязка по мелочи.
@NRelectronics4 жыл бұрын
по UART конечно посложнее чем через DFU. А эту простую прошивку или способ заливки Вы как предлагаете организовать по простому?
@dr.emmettbrown84664 жыл бұрын
@@NRelectronics Схематично так: 1. 1-й МК управляет не только загрузкой но и питанием основного МК, например через мосфет (принцип как на материнках мультиконтроллер) 2. При старте проверка SD, если нет новой прошивки, то просто подает питание на основной МК (да, потеря в скорости загрузки, но и хрен с ней) 3. Если есть, то работаем с ножкой BOOT0 основного МК, подаем питание и работаем как бы буфером, читаем по SPI с карты и передаем по UART (в принципе, судя по даташит, UART можно заменить на SPI или I2C) Повторюсь, DFU классная тема, но ИМХО абсолютно не приемлема для конечного и неподготовленного КОНЕЧНОГО пользователя.
@Sergey_Evdokimenko4 жыл бұрын
ссылка "Материал видео:" уже не работает, к сожалению
@NRelectronics4 жыл бұрын
Спасибо за фидбэк. Поправил, проверяйте.
@Serg-9783 жыл бұрын
А как определить в каком режиме прошивается STM32F103C8T6, если контакты мини-USB подключены к PA11/PA12 и само устройство (KW600) как при штатной прошивке, так и при работе определяется в ПК всегда как Virtual COM. Значит прошивка идет через USART1_CTS/USART1_RTS? У Вас есть про это видео?
@NRelectronics3 жыл бұрын
У меня нет видео про конкретно ваше устройство, kw600. CTS и RTS не нужны выводы для прошивки, эти выводы другой функционал в порту RS-232 выполняют.
@Serg-9783 жыл бұрын
@@NRelectronics Вопрос был в том, как можно выгрузить прошивку из STM32F103C8T6 через PA11/PA12 через USB (Virtual COM). Какой программой?
@NRelectronics3 жыл бұрын
таким образом никак. На просторах интернет такой способ даже не встречал.
@ЭльМеф10 ай бұрын
А как включить терминал USART в Cubeide
@NRelectronics10 ай бұрын
Изначально он включенный, нужно только перейти в соответствующее окно и выбрать номер com-порт и его открыть.
@ЭльМеф10 ай бұрын
@@NRelectronics А в какое окно.Где настройка терминала находится в какой опции?
@NRelectronics10 ай бұрын
Посмотрите моё видео на канале: "STM32CubeIDE. Установка, настройка и отладка. Часть 1" на метке 22:05
@hieverybody3593 жыл бұрын
Можно ли прошить сразу несколько мк стм32 одновременно, при том что id нужно присвоить каждому уникальный? Если да то как это реализовать на практике?
@NRelectronics3 жыл бұрын
Наверное можно, такой непрерывной оригинальной серийкой не занимался.
@ДимБеседин Жыл бұрын
Простите если вопрос глуп сидел на мегах прошивал ЛПТ порт используя с преобразователем уровней ...можно ли такой же финт ушами с 32 сделать
@NRelectronics Жыл бұрын
Не глупый вопрос. Параллельной шиной нельзя прошить STM32. Можно преобразователем COM-uart если что.
@ДимБеседин Жыл бұрын
@@NRelectronics спасибо ...
@NRelectronics Жыл бұрын
Пожалуйста. Не стесняйтесь задавать вопросы.
@sergeygrechishnikov2823 жыл бұрын
Спасибо за видео. Вопрос возник, как лучьше организовать связь с ПК(Windows, Linux), для получения команд от ПК и для отправки данных на ПК (USART, UART, I2C?); Если я где-то пропустил ваш урок по этой теме, прошу пардону)))
@NRelectronics3 жыл бұрын
Спасибо Обычно делают связь терминальной программой, их море, на вкус и цвет как говориться через преобразователь UART-USB. Тоже любой, в роликах они у меня были. Могу посоветовать самый дешёвый за 100₽ и вполне приличный...
@sergeygrechishnikov2823 жыл бұрын
@@NRelectronics Спасибо было бы неплохо если посоветуете хороший вариант преобразователя. Моя идея такая, для обмена данными использовать Cmsis или LL, со стороны ПК это будет QserialPort.
@NRelectronics3 жыл бұрын
116,20 руб. 22%СКИДКА | Преобразователь MICRO USB/UART TTL, 1 шт., 6Pin, для Arduino a.aliexpress.com/_AFdCxK
@sergeygrechishnikov2823 жыл бұрын
@@NRelectronics Спасибо!
@NRelectronics3 жыл бұрын
Пожалуйста, обращайтесь 😉✌
@uvatenkovdmitrii18473 жыл бұрын
Уважаемый автор! Пытаюсь прошить предложенным Вами способом полетный контроллер Holibro Kakute F7 mini V3 на базе STM32 F722RET6 через СP2102, но ПК определяет только CP2102 а полетник никак не отсвечивает и на кнопку DFU не реагирует. Может подскажете куда копать?
@NRelectronics3 жыл бұрын
Проверьте в документации на ваш контроллер, он позволяет прошивать через uart способом DFU?
@uvatenkovdmitrii18473 жыл бұрын
@@NRelectronics Boot modes At startup, the boot memory space is selected by the BOOT pin and BOOT_ADDx option bytes, allowing to program any boot memory address from 0x0000 0000 to 0x3FFF FFFF which includes: • All Flash address space mapped on ITCM or AXIM interface • All RAM address space: ITCM, DTCM RAMs and SRAMs mapped on AXIM interface • The System memory bootloader The boot loader is located in system memory. It is used to reprogram the Flash memory through a serial interface. Я, если честно не настолько понимаю в програмировании поэтому и спрашиваю((
@NRelectronics3 жыл бұрын
Не то вы смотрите. Как сяду за комп, если не забуду, посмотрю.
@uvatenkovdmitrii18473 жыл бұрын
@@NRelectronics Спасибо Вам большое что протягиваете руку помощи.
@NRelectronics3 жыл бұрын
Ваш микроконтроллер можно прошивать через USART1 и USART3. Смотрите куда подключен ваш СР2102. Стр. 193 документ AN2606.
@GoldCordon3 жыл бұрын
пять раз провернул эту последовательность и все равно в диспетчере устройств не находит плату, пишет "Неизвестное USB-устройство...."
@NRelectronics3 жыл бұрын
Что за плата? Драйвера установили?
@АлексейСлесаревич2 жыл бұрын
Здравствуйте, возможно у вас та же ситуация что и у меня. Моя BlackPill грузится в DFU только если зажать не только BOOT0, но и KEY. Возможно у вас так же. Я зажал KEY + BOOT0, и потом поставил дрова из директории где лежит CubeProgrammer. Пока работает исправно
@microsoft87922 жыл бұрын
Очень полезное видео. Спасибо! Но у меня что-то не работает. Windows 7 64 бит. Драйвер установил. Нажимаю Boot0, втыкаю штекер. В диспетчере устройств появляется "STM device in DFU mode". Но в CubeProgrammer - No DFU Detected. А в тестере при нажатии на GetStatus пишет: Success. Status=STATUS_errFIRMWARE PollTime=0 State=STATE_DFU_ERROR iString=0. Это лечится?
@microsoft87922 жыл бұрын
У меня черная таблетка STM32F411CEUb
@NRelectronics2 жыл бұрын
С виндой 7-ой сейчас всё плохо. На десятке у меня работает. Проверить у меня вам даже не на чем...
@microsoft87922 жыл бұрын
@@NRelectronics Спасибо. Буду ставить 10ку. По результатам отпишусь.
@NRelectronics2 жыл бұрын
Пожалуйста. Обязательно отпишитесь. Ещё обязательно проверерьте, именно ваш контроллер поддерживает DFU через USB.
@microsoft87922 жыл бұрын
@@NRelectronics В общем борьба бобра с ослом продолжается: поставил 10ку поверх 7ки. В диспетчере устройств 10ка стала ругаться на неверный дескриптор устройства. Переустановка дров не помогла. Загрузился с другого диска с windows 7 32 бит, поставил дрова - в диспетчере устройств появился STM device in DFU mode. Програмка DfuSeDemo его видит и показывает сектора. Куб программер пишет no DFU detected.
@lvanovlvan4 жыл бұрын
У меня при подключении к black pill пишет "неизвестное USB устройство" пичаль-бида прямо. Может быть кто-то что-то подскажет. Драйвер установил. Reset + boot, затем отпускаю reset и через 0.5 сек boot. Выскакивает сообщение "USB устройство не опознано". Уже не знаю что и делать.
@NRelectronics4 жыл бұрын
Есть глюк винды. Установите драйвера из папки где я показывал в видео. Куда установилась программа DfuSE.exe. Через диспетчер как у вас бывает не работает, это норма для винды.
@NRelectronics4 жыл бұрын
Кстати не так. Нажимайте Boot и только после подключаете штекер type-C. Когда установите из папки дрова и будет у вас праздник.
@lvanovlvan4 жыл бұрын
@@NRelectronics делал и так и по-Вашему, драйвер установлен - результат прежний, выспорил у чинанайца 200 рублей.
@NRelectronics4 жыл бұрын
погуглите, попадалось, что у людей на плате блюпил от некоторых чинанайцев, как Вы говорите))), не работал юсб просто, дело кажется было в резисторе R10, и у меня он был на 10кОм и все было норм. Поищите на просторах, эту проблемку освещали...
@lvanovlvan4 жыл бұрын
@@NRelectronics лол, самое смешное, что плата начала иногда загружаться через УСБ. Причем загружается и Вашим способом и ресет + буут.))) Но "не только лишь всегда"...))) Снова возникла проблема с GDB сервером, но была решена кардинальным способом через настройки дебаггера. Поморгал светиком и покнопал баттоном на блекпилке. Пока дальше этого не заходил, но через пару дней появится много времени, постараюсь начать работу с микроконтроллерами именно с стм32, ну и Ардуинка тоже будет для освоения С и С++. Чистые Атмелы не понравились. Пы.Сы. Чинанайцы от слова Чина, но как-то так совпало прикольно.)))) Надеюсь приживётся)))) Пы. Пы. Сы. Резик проверю. Кстати на блекпилке кнопка притягивает ноль к ноге А0 через резик примерно 330 Ом, прикольно, что можно просто пальцем по ноге стучать и будет переключаться. Надо будет наделать преобразователей уровня с 5 на 3.3 В
@Wingtiger74 жыл бұрын
как заливать код в озу?
@NRelectronics4 жыл бұрын
Boot 0 и Boot 1 установить в единицу.
@Wingtiger74 жыл бұрын
@@NRelectronics а дальше? Залилось на флеш
@NRelectronics4 жыл бұрын
а дальше все зависит от того как вы сами реализовали то.