Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
4 / 4 / 3
Регистрация: 13.10.2014
Сообщений: 251

Загрузка файла в Blue Pill

09.07.2025, 13:48. Показов 9258. Ответов 156
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Сделал проект Keil для Blue Pill с использованием CubeMX. На микросхеме указано F103C8T6. Плата видится в Programmer:



При попытке записать программу в Keil получаю сообщение в выводе
C
1
2
3
4
5
6
"stmCubeMX_F103C8\stmCubeMX_F103C8.axf" - 0 Error(s), 0 Warning(s).
Build Time Elapsed:  00:00:01
Load "stmCubeMX_F103C8\\stmCubeMX_F103C8.axf" 
Error: Not a genuine ST Device! Abort connection. 
Error: Flash Download failed  -  Target DLL has been cancelled
Flash Load finished at 13:24:23
. Подскажите, пожалуйста, как исправить ошибку.

Проект: stmCubeMX_F103C8.7z
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.07.2025, 13:48
Ответы с готовыми решениями:

Отладка платы STM32F103C8T6 (Blue Pill) через st-link/v2
Здравствуйте! Подскажите как отлаживать STM32F103C8T6 используя оригинальный программатор...

Запустить экран на ILI9341 с платой Blue Pill
Всем здравствуйте и с наступающим. Приобрел дисплей на Али, пробовал его запустить разными...

STM32 Blue Pill, не могу заставить таймер заткнуться, пока нажата кнопка
Здравствуйте, уважаемые форумчане! Помогите пожалуйста разобраться с проблемой, не пойму, что не...

156
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
15.07.2025, 18:21
Студворк — интернет-сервис помощи студентам
tuchin, не забудьте вернуть джамперы обратно:
0
4 / 4 / 3
Регистрация: 13.10.2014
Сообщений: 251
15.07.2025, 22:55  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
не забудьте вернуть джамперы обратно:
Спасибо за напоминание, вернул.

Добавлено через 4 часа 24 минуты
Хотел бы уточнить информацию относительно положения джамперов на плате:
1. Boot0=0 Boot1=0 - при включении или сбросе запускается программа из внутренней флэш-памяти платы, Boot0=1 Boot1=0 - запись программы в внутреннюю флэш-память платы. Правильно?
2. Boot0=1 Boot1=1:
а) это запись программы в ОЗУ платы?
б) после записи расположение джамперов для работы программы не изменяется? Т.е. проверить работоспособность и отлаживать программу можно без изменения положения джамперов?
в) какие достоинства и недостатки этого режима?
0
Эксперт по электронике
7208 / 3387 / 346
Регистрация: 28.10.2011
Сообщений: 13,327
Записей в блоге: 7
16.07.2025, 00:08
Цитата Сообщение от tuchin Посмотреть сообщение
Boot0=1 Boot1=0 - запись программы в внутреннюю флэш-память платы. Правильно?
Это запуск загрузчика из системной памяти.
Цитата Сообщение от tuchin Посмотреть сообщение
а) это запись программы в ОЗУ платы?
Не запись, а запуск выполнения кода по адресу 0x20000000 (ОЗУ) после сброса.
0
4 / 4 / 3
Регистрация: 13.10.2014
Сообщений: 251
16.07.2025, 11:29  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Не запись, а запуск выполнения кода по адресу 0x20000000 (ОЗУ) после сброса
Наверное, для того, чтобы программа загружалась из ОЗУ, нужно изменить настройки проекта или добавить в него какие-то файлы. Подскажите, пожалуйста, как настроить проект Keil, чтобы программа работала из ОЗУ.
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
16.07.2025, 11:41
Цитата Сообщение от tuchin Посмотреть сообщение
чтобы программа работала из ОЗУ.
А с какой целью? Оно вам действительно надо?
0
4 / 4 / 3
Регистрация: 13.10.2014
Сообщений: 251
16.07.2025, 12:20  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
А с какой целью? Оно вам действительно надо?
Мне это интересно. Кроме того, в https://mypractic.ru/urok-2-pl... oader.html указано, что "Используется на этапе отладки для сохранения ресурса программирования FLASH-памяти".
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
16.07.2025, 12:35
Мануал от ST: How to place and execute STM32 code in SRAM memory with STM32CubeIDE.
Для другого МК, но проявите фантазию

Цитата Сообщение от tuchin Посмотреть сообщение
"Используется на этапе отладки для сохранения ресурса программирования FLASH-памяти".
Да, но никогда не видел такого использования.
Ваш МК очень дешёвый, чтобы затерететь его до дыр и не суметь купить другой на замену, это что-то из ряда вон.
А постоянно заливать прошивку с разными захардкожеными параметрами, как может делать технологическая оснастка какого-нибудь серийного производства, вы врядли будете.

Техника эта редкая и применяется в основном при необходимости выполнения кода без доступа к Flash. например, когда Flash затирается (bootloader), или когда нужна максимальная скорость выполнения (Flash медленнее, чем RAM).
0
Эксперт по электронике
7208 / 3387 / 346
Регистрация: 28.10.2011
Сообщений: 13,327
Записей в блоге: 7
16.07.2025, 12:38
Цитата Сообщение от tuchin Посмотреть сообщение
Наверное, для того, чтобы программа загружалась из ОЗУ, нужно изменить настройки проекта или добавить в него какие-то файлы.
Здесь гифка показывающая запуск отладки из оперативки при которой прошивка загружается в ОЗУ вместо флеша (загрузка быстрее и не расходуется ресурс флеша и не затирается прошивка в нем). Как это будет реализовано зависит от IDE.
0
1518 / 533 / 78
Регистрация: 22.09.2023
Сообщений: 1,697
16.07.2025, 20:39
Цитата Сообщение от Rius Посмотреть сообщение
или когда нужна максимальная скорость выполнения (Flash медленнее, чем RAM).
Не всегда: Is it faster for STM32 code to run in RAM or Flash?
0
 Аватар для COKPOWEHEU
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
17.07.2025, 11:50
Цитата Сообщение от tuchin Посмотреть сообщение
Мне это интересно. Кроме того, в https://mypractic.ru/urok-2-pl... oader.html указано, что "Используется на этапе отладки для сохранения ресурса программирования FLASH-памяти".
Теоретически, да. Количество циклов перезаписи флеш ограничено, ОЗУ - нет, поэтому заливать программу в RAM пока не надоест. Вот только количество циклов перезаписи флеша составляет 10000. Вы быстрее уьбете контроллер любым другим способом.
Плюс не забывайте, что объем оперативки ограничен, и ваша программа вместе с переменными туда может просто не поместиться. Особенно если вы зачем-то решите использовать ST-HAL.
А вот где это может быть оправдано - если при разработке хоть как-то применяются методы тестирования. То есть вот вы внесли изменение в код и хотите убедиться, что оно не поломало что-нибудь в другом месте. Для этого собираете прошивку с тестовой вставкой, прошиваете и убеждаетесь, что работает. Меняете вставку, снова прошиваетесь и так далее, пока все тесты не покажут работоспособность. Разумеется, это все делается не руками, а каким-нибудь тестирующим окружением. Правда, этим и под ПК занимаются далеко не все, а уж под МК... хорошо если хоть кто-то озадачивается промежуточным тестированием.
0
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
21.07.2025, 12:32
Цитата Сообщение от wizard41 Посмотреть сообщение
tumanovalex, не пожалей денег, купи нормальный линк.
Вчера получил. Над 4-контактным разъемом указано STM8, а разъем, над которым указано STM32, 20-контактный. На лицевой стороне указано "ST-LINK/V2 RoHS". В интернете много информации по подключению урезанной версии, а схему подключения этого программатора к Blue Pill я не нашел. Подскажите, пожалуйста, как правильно подключить Blue Pill к этому программатору.
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
21.07.2025, 12:38
Аналогично Загрузка файла в Blue Pill
0
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
21.07.2025, 15:38
Rius, спасибо большое. Те же сообщения о неподключении устройства, что и у tuchin. Прикрепил фото с соединением программатора с Blue pill. Видимо, опять не повезло.
Миниатюры
Загрузка файла в Blue Pill  
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
21.07.2025, 16:53
Error: Not a genuine ST Device!
Это сообщение не о неподключении.
0
95 / 15 / 3
Регистрация: 09.07.2009
Сообщений: 886
21.07.2025, 17:14
Прошу прощения, был невнимателен. Сообщения при попытке прошить флэш в Keil такие:
C
1
2
No target connected
Error: Flash Download failed - Target DLL has been cancelled
а в CubeProgrammer - такие
C
1
Error: No STM32 target found! If your product embeds Debug Authentication, please perform a discovery using Debug Authentication
Сообщения появляются, когда Boot0=0 и Boot1=0, а индикатор на плате мигает. После Boot0=1 и нажатия сброса мигание прекращается и флэш прошивается. В третьем сообщении темы EmBitz и Blue Pill я прочел, что при использовании ST-Link Boot0 можно не переставлять. Почему же тогда у меня не получается прошить флэш без перестановки Boot0? Что нужно сделать, чтобы без перестановки Boot0 флэш прошивалась?
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
21.07.2025, 17:21
Цитата Сообщение от tumanovalex Посмотреть сообщение
После Boot0=1 и нажатия сброса мигание прекращается и флэш прошивается.
Значит, всё нормально работает.

Цитата Сообщение от tumanovalex Посмотреть сообщение
Почему же тогда у меня не получается прошить флэш без перестановки Boot0?
Потому что пины SWD должны быть подключены к нему.
0
 Аватар для COKPOWEHEU
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
21.07.2025, 17:25
Цитата Сообщение от Rius Посмотреть сообщение
Почему же тогда у меня не получается прошить флэш без перестановки Boot0?
Потому что пины SWD должны быть подключены к нему.
Полная чушь. SWD и Boot нигде не пересекаются.
Цитата Сообщение от tumanovalex Посмотреть сообщение
Почему же тогда у меня не получается прошить флэш без перестановки Boot0? Что нужно сделать, чтобы без перестановки Boot0 флэш прошивалась?
Скорее всего, в коде блокируется отладка. Отключены ноги JTAG/SWD. А когда вы грузитесь вместо своего кода с бутлоадера, он отладку не трогает, поэтому вы и можете подключиться.
Чтобы такой проблемы не было, просто не отключайте отладку. Если вы ССЗБ и используете автогенераторы говнокода вроде Куба, смотрите еще и там, они любят лезть куда не просят.
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
21.07.2025, 17:31
Полная чушь. SWD и Boot нигде не пересекаются.
А я говорил о BOOT? Пины SWD PA13/PA14 должны быть подключены к нему - модулю SWD.
Прежде чем врываться в тему, может стоит почитать?

Ещё раньше упоминалось уже:
Загрузка файла в Blue Pill
Загрузка файла в Blue Pill
Загрузка файла в Blue Pill

Там же говорилось о режиме загрузчика, как способе возврата функции SWD к этим пинам независимо от прошивки.
Поэтому тут джамперы и переставляют, а не по велению какой-то непонятной магии.
0
Эксперт по электронике
7208 / 3387 / 346
Регистрация: 28.10.2011
Сообщений: 13,327
Записей в блоге: 7
21.07.2025, 17:56
С фотки не очевидно есть ли питание у платы с МК. Светодиод светится?
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
используете автогенераторы говнокода вроде Куба
В кубе можно включить отладку. По умолчанию отключена и это хорошие грабли для новичков.
0
Эксперт .NET
 Аватар для Rius
13848 / 7890 / 1707
Регистрация: 25.05.2015
Сообщений: 23,958
Записей в блоге: 14
21.07.2025, 17:56
Новички в любом случае найдут грабли и наступят, даже на кажущемся старичкам совершенно ровном асфальте
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.07.2025, 17:56

Адаптер USB-Serial с 3 UART портами на STM32 Blue Pill
Всем доброго времени суток, хотел поделиться своим проектом 3-x портового USB-Serial адаптера...

[STM32F103C8T6, он-же Blue Pill] - SPI1, CMSIS - пример
Доброго времени суток, уважаемые участники форума! Подскажите пожалуйста, есть ли где готовый...

Настройка IAR Embedded Workbench for ARM для работы с симулятором и blue pill
Здравствуйте! Установил триальную версию IAR Embedded Workbench for ARM. Создал проект с файлом...

BLUE PILL не могу запустить в ПРОТЕУСЕ
Пытаюсь освоить STM32, в частности Blue Pill. Привык сначала что либо делать в Протеусе. Скачал...

Программирование Blue Pill с помощью CMSIS (начинающий)
Хотелось бы самому научиться правильно работать с регистрами без использования готового кода в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
120
Ответ Создать тему
Новые блоги и статьи
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки Правым кликом по серверу -> отладочная информация -> edit Заменить "net": "raw", на "net": "tcp", Нажать кнопку reload.
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru