Урок 3. Установка программного обеспечения. Первый опыт в конфигурации микроконтроллера, создании проекта, компиляции, прошивке.

Уроки STM32

В уроке установим программное обеспечение, необходимое для дальнейшей работы. Проверим в комплексе его работу с отладочным модулем.

Предыдущий урок     Список уроков     Следующий урок

Один из самых важных вопросов при освоении сложных микроконтроллеров подобно STM32  – выбор среды разработки (IDE).

 

Существует большое количество интегрированных средств разработки для микроконтроллеров STM32.

Мы живем в реальном мире, поэтому, прежде всего, я разделил бы их на платные и бесплатные. Логично предположить, что платные обеспечивают больше функций, работают стабильнее, лучше поддерживаются, генерируют компактный код и т.п.

Но вряд ли кто-то из моих читателей согласится выложить 8000 евро за среду разработки. Хотя в платных IDE, как правило, есть бесплатные варианты с ограничением по размеру кода. Но не хочется подобно Дамоклу ждать, когда оборвется волос, на котором подвешен меч над твоей головой. Т.е. в самый неподходящий момент получить сообщение, о том, что остальная часть памяти недоступна.

Но есть приятное исключение. Платная интегрированная среда Atollic TrueStudio с прошлого года стала бесплатной. Производитель STM32 компания STMicroelectronics в 2018 году купила фирму Atollic и сделала эту IDE бесплатной.

От добра добра не ищут. Я выбрал в качестве среды разработки IDE Atollic TrueStudio. Она:

  • бесплатная;
  • нет ограничений;
  • разработчик поддерживает ее и обещает поддерживать в будущем;
  • устанавливается ”из коробки”;
  • прекрасно работает.

Итак. Нам необходимо установить следующее программное обеспечение:

  • Интегрированная среда разработки Atollic TrueStudio.
  • Пакет STM32CubeMX – программа создания проекта, визуальной конфигурации микроконтроллера.
  • Flash Loader Demonstrator - программа для прошивки микроконтроллеров через системный загрузчик.
  • Программа – терминал COM-порта компьютера, аналог Монитора последовательного порта Arduino IDE. Необходима для отладки программной и аппаратной частей системы. Я выбрал CoolTerm, но подобных программ очень много. Если не нравится мой выбор, используйте другую.

Давайте все это последовательно установим.

 

Atollic TrueStudio.

Переходим по ссылке https://atollic.com/resources/download/.

Установка Atollic TrueStudio

Выбираем ОС. Заполняем поля.

Установка Atollic TrueStudio

Загружаем последнюю версию по ссылке.

Установка Atollic TrueStudio

Запускаем полученный файл-инсталлятор:
Atollic_TrueSTUDIO_for_STM32_windows_x86_v9.2.0_20181203-0921.exe

Дальше следуем подсказкам инсталлятора.

Установка Atollic TrueStudio

 

STM32CubeMX

Идем по ссылке www.st.com/en/development-tools/stm32cubemx.html.

Регистрируемся, подтверждаем регистрацию по электронной почте.

В самом низу страницы загружаем архивный файл по ссылке Get Software.

STM32CubeMX

Разархивируем скачанный файл во временную папку. Запускаем файл SetupSTM32CubeMX-5.0.1.exe.

STM32CubeMX

Возможно, потребуется установка Java. Ссылка для установки откроется сама.

STM32CubeMX

После загрузки и установки Java надо опять запустить SetupSTM32CubeMX-5.0.1.exe и довести установку до конца.

 

Flash Loader Demonstrator

Ссылка на страницу загрузки www.st.com/en/development-tools/flasher-stm32.html.

Ссылка для самой загрузки (Get Software ) внизу страницы.

Flash Loader Demonstrator

Разархивируем во временную папку, запускаем flash_loader_demo_v2.8.0.exe.

Следуем подсказкам инсталлятора

Flash Loader Demonstrator

 

CoolTerm.

Можно загрузить по ссылке http://freeware.the-meiers.org.

Устанавливать не надо. Разархивировать в рабочую папку.  Запускается исполняемый файл CoolTerm.exe.

Терминал CoolTerm

В итоге у нас 4 программы – 4 ярлыка на рабочем столе.

Программы для работы с STM32

 

 

Проверка работы программного обеспечения в комплексе с отладочной платой.

Программное обеспечение мы установили. В прошлом уроке к отладочной плате STM32103C8T6 добавили компоненты, позволяющие загружать программу во FLASH микроконтроллера.

Прошивка STM32

Давайте проверим, как это все работает. Не будем особенно вдумываться, разбираться, что делаем. Просто формально выполним определенные действия.

Хотя работа с конфигуратором  STM32CubeMX настолько проста и интуитивно понятна, что мы сразу научимся работать с его интерфейсом, а в регистрах и схемах микроконтроллера будем разбираться потом.

Цель – проверить, что:

  • STM32CubeMX создает проект и задает правильную конфигурацию ресурсов микроконтроллера.
  • IDE Atollic TrueStudio открывает проект, позволяет его редактировать и создает загрузочный файл.
  • Flash Loader Demonstrator – загружает программу в микроконтроллер.
  • Мы правильно припаяли к отладочной плате преобразователь интерфейсов и кнопки.
  • Работает сама отладочная плата.

Разработаем и проверим программу, которая мигает светодиодом платы на 13 выводе с частотой 2 раза в секунду.

 

Конфигурация и создание проекта.

Создаем папку для наших проектов. У меня это d:\STM32\Projects\Lessons\Lesson3.

Запускаем STM32CubeMX.

Работа с STM32CubeMX

Ниже надписи New Project выбираем ACCESS TO MCU SELECTOR, что означает выбор типа контроллера.

При первом запуске программа загрузит необходимые файлы из Интернета и откроется окно выбора микроконтроллера.

Выберем STM32F103C8.

Работа с STM32CubeMX

В верхней части страницы появится информация о выбранном микроконтроллере, можно будет загрузить техническую документацию.

Нажимаем кнопку Start Project в правом верхнем углу.

Появляется окно конфигуратора.

Работа с STM32CubeMX

Все интуитивно понятно. Справа изображение микроконтроллера с интерактивными выводами. Слева – регистры микроконтроллера, состояние которых мы собственно и хотим установить.

Желтым цветом показаны выводы питания, остальные пока серые. Зеленеть они будут по мере конфигурации портов.

Настраиваем систему тактирования микроконтроллера.

Открываем закладку System Core. Выбираем RCC.

Работа с STM32CubeMX

Источником тактирования задаем высокоскоростной генератор на кварцевом резонаторе High Speed  Clock (HSE) -> Crystal/Ceramic Resonator .

Работа с STM32CubeMX

Два вывода на микросхеме стали зелеными. Мы их заняли под выводы для кварцевого резонатора.

Выбираем в верхнем горизонтальном меню Clock Configuration (Конфигурация тактирования).

Работа с STM32CubeMX

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

Коммутаторы PLL Source Mux и System Clock Mux устанавливаем на нижние входы.

Умножитель *PLL Mul задаем равным 9.

Работа с STM32CubeMX

В результате на схеме видно, что основная частота тактирования 72 мГц (окошко  HCLK).

С такой же частотой работает ядро микроконтроллера (окно FCLK).

Красным цветом отмечено, что какое-то устройство (APB1 Prescaler) работает на недопустимо высокой частоте. Есть предупреждение, что максимальная частота 36 мГц.

Давайте выберем для него делитель равный 2, и предупреждение исчезнет.

Работа с STM32CubeMX

Остается настроить режим порта для вывода 13. К нему подключен светодиод, которым мы собираемся мигать.

Возвращаемся в Pinout & Configuration. Справа появляется изображение микроконтроллера.

Правой кнопкой мыши нажимаем на вывод 13, назначаем его на выход (GPIO_Output).

Работа с STM32CubeMX

Вывод стал зеленым.

В закладках слева выбираем GPIO (порты общего назначения).

Правее появляется строчка с режимом вывода 13.

Работа с STM32CubeMX

Выбираем ее правой кнопкой мыши. В нижней строчке режимов вывода User Label пишем LED13. Это мы задали имя переменной для вывода. Через него в программе будет происходить обращение к выводу 13.

Работа с STM32CubeMX

На этом конфигурация закончена. Не заглядывая в техническую документацию, мы за минуту выставили нужные нам режимы тактирования и вывода порта.

Заполняем данные для сохранения проекта. В верхнем меню выбираем Project Manager.

Указываем:

  • Имя проекта.
  • Папку сохранения проекта.
  • Обязательно выбираем TrueSTUDIO в поле Toolchain IDE.

Проект STM32

Нажимаем GENERATE CODE.

При первом запуске STM32CubeMX загружает из Интернета необходимые файлы. Разрешаем загрузку.

Проект STM32

Закрываем программу.

Создание проекта STM32

В указанной папке появился проект Lesson3_1.

Проект STM32

 

Разработка программы, компиляция.

Запускаем Atollic TrueStudio. Везде пустые поля.

Открываем наш проект File -> Open Projects from File System…

Указываем путь к проекту.

Atollic TrueStudio

Нажимаем Finish.

В поле Project Explorer появился наш проект.

 Atollic TrueStudio

Разворачиваем.

Atollic TrueStudio

Файлы с которыми мы будем сейчас работать в папке Scr.

Два раза кликаем правой кнопкой мыши по main.c и наш основной файл с исходным текстом появляется в среднем окне IDE.

Atollic TrueStudio

 

Попробуем компилировать проект.

Нажимаем Project -> Build Project или молоточек в панели инструментов.

Панель инструментов Atollic TrueStudio

Смотрим на поле Problems (Проблемы) внизу экрана.

Проблемы Atollic TrueStudio

У меня сообщений об ошибках нет, значит, проект компилировался нормально.

 

 

Исходный текст программы.

В отличие от Ардуино структура программы STM32 типичная для языка C. Всегда есть функция main() – функция, которая вызывается при запуске программы. Часто внутри этой функции расположена вся программа, за исключением тел других функций.

Просматриваем программу.

#include "main.h" – заголовочный файл.

void SystemClock_Config(void);
static void MX_GPIO_Init(void);

Прототипы функций. В отличие от Ардуино в классическом я зыке C каждая функция, в том числе, которую объявляет программист, должна иметь прототип. Т.е. должна быть объявлена, как переменная. Прототип содержит имя функции, возвращаемое значение и аргументы. Должен быть объявлен до первого вызова функции.

int main(void) {

Функция main - начало выполнения программы.

HAL_Init();
SystemClock_Config();
MX_GPIO_Init();

Функции инициализации регистров микроконтроллера. В них трансформировались наши действия по заданию конфигурации в программе STM32CubeMX.

И дальше нам в проекте конфигуратор подставил бесконечный цикл - аналог функции loop() в системе Ардуино.

while (1)
{

}

В него мы и вставим команды управления светодиодом.

Текст программы изобилует блоками комментариев подобно этому.

/* USER CODE BEGIN WHILE */

/* USER CODE END WHILE */

Дело в том, что исходный текст создала программа STM32CubeMX. Если захочется что-либо изменить в конфигурации микроконтроллера с помощью STM32CubeMX, то конфигуратор может испортить текст, внесенный программистом на этапе разработки. Поэтому STM32CubeMX выделяет блоки, которые он не будет изменять при повторных конфигурациях. Эти блоки он отмечает строками комментариев:

/* USER CODE … */

/* USER CODE … */

Свой текст надо размещать только в таких блоках.

Сейчас нас интересует блок:

/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{

/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */

Перед

/* USER CODE END WHILE */

Вставляем инверсию светодиода с задержкой четверть секунды. Добавляем вызовы двух функций: инверсии состояния вывода и временной задержки.

/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
  HAL_GPIO_TogglePin(LED13_GPIO_Port,LED13_Pin);
  HAL_Delay(250);

/* USER CODE END WHILE */

Заметьте, что мы указали при конфигурации название вывода для светодиода LED13. Теперь в программе мы обращаемся к нему через имена LED13_GPIO_Port, LED13_Pin.

Компилируем проект.

Ошибок нет.

Компиляция проекта Atollic TrueStudio

Можно закрыть проект.

Скачать архив проекта можно по ссылке:

  Зарегистрируйтесь и оплатите. Всего 40 руб. в месяц за доступ ко всем ресурсам сайта!  

Теперь надо загрузить исполняемый код во FLASH микроконтроллера.

 

Прошивка FLASH микроконтроллера.

Результат компиляции оказался в HEX-файле в папке Debug. В моем случае:

d:\STM32\Projects\Lessons\Lesson3\Lesson3_1\Debug\Lesson3_1.hex

Загрузочный HEX-файл STM32

Именно этот файл будем прошивать в микроконтроллер.

Подключаем к компьютеру мост USB-UART. Перед этим должен быть установлен драйвер моста. Как это сделать, можно посмотреть по ссылкам PL2303 и CH340.

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

Запускаем Flash loader demonstrator.

Программатор Flash loader demonstrator

Устанавливаем номер порта.

Нажимаем и удерживаем кнопку ПРОШИВКА.

Кратковременно нажимаем кнопку СБРОС.

Давим Next.

Программатор для STM32 Flash loader demonstrator

Если на светофоре горит зеленый - еще раз Next.

Flash loader demonstrator

Можно посмотреть информацию о микроконтроллере и размере его FLASH.

Опять давим Next.

Выбираем Download to device.

Задаем путь к нашему HEX-файлу.

Flash loader demonstrator

Опять Next.

Происходит загрузка FLASH микроконтроллера. Выводится сообщение о результате.

Программатор Flash loader demonstrator

У меня успешно.

Теперь можно отпустить кнопку ПРОШИВКА,  и закрыть программу.

Остается нажать кнопку СБРОС и светодиод на отладочной плате начинает мигать с частотой 2 раза в секунду.

Если так, то все было сделано правильно.

 

В следующем уроке научимся работать с регистрами микроконтроллера, узнаем о библиотеках CMSIS  и HAL.

Предыдущий урок     Список уроков     Следующий урок

0

Автор публикации

не в сети 4 часа

Эдуард

63
Комментарии: 1354Публикации: 152Регистрация: 13-12-2015

43 комментария на «Урок 3. Установка программного обеспечения. Первый опыт в конфигурации микроконтроллера, создании проекта, компиляции, прошивке.»

  1. Эдуард спасибо.
    Но по сравнению с Ардуино — это день и ночь. Все слишком сложно и геморно.
    Для себя открыл Teensy контроллеры от PJRC.com
    Такие же удобные и простые как Ардиуновские.
    Есть 8 ми битные и 32 битные.

    0
    • Дело не в контроллерах а в среде программирования. STM32 тоже можно ардуинить особенно легко это делать в Platformio. Там же есть и фреймворк STM32 CUBE и MBED. Можно пользоваться каким душе угодно.

      0
    • Teensy — обычные контроллеры по конским ценам.
      8-битные на атмел можно взять гораздо дешевле. stm32f103 — есть поддержка в ардуино. А уж если на крутизну тянет — возьмите плату на STM32F407VGT6, стоит в пределах 700р.
      https://www.ebay.com/itm/STM32F407VGT6-STM32F103C8T6-F407VET6-STM32-ARM-Minisystem-Development-CoreBoard/112987363710?hash=item1a4e92597e:m:meoMyQF8fiJYDIDnPMYBVcA

      0
  2. Спасибо большое! Жду с нетерпением новых уроков, хороший курс, не бросайте его, очень понятный, современный. Хотелось бы урок по загрузки прошивки через st-link.

    0
  3. А если я прошил контроллер ст-линком
    а потом попробовал аналогично прошить в него хекс из урока
    и теперь ст-линк отказывается коннектиться к контроллеру
    (может всвязи с настройками кварца?)
    его можно как-нибудь оживить?

    0
    • Это бывает, например, если прошивка использует ножки, которые нужны для swd. Тогда можно прошить через st-link утилиту, если установить режим «коннектиться при перезагрузке». Потом нажимаем кнопочку коннект в утилите и быстро делаем ресет кнопкой на плате. Плата перезагрузится (прошивка в этот момент не работает и swd свободен) и должно подключиться. Если не вышло с первого раза, пробуйте ещё

      0
    • Во-первых, когда генерите код в CUBE, то надо установить в PINOUT CONFIGURATION —> System Core —> SYS —> Debug —> Serial Wire. Иначе по инструкции как в этом уроке сгенеренная прошивка не дает доступ к дальнейшим перепрошиваниям через ST-LINK V2 («китайский свисток»). Во-вторых, если удалось заблокировать микроконтроллер, то действуйте через прогу от производителя ST Link Utility, зажимаете RESET и жмёте законнесктиться в утилите и отпускаете RESET. Утилита получает доступ к памяти МК и теперь можете делать, что хотите. Я бы стёр эту неудачную прошивку 🙂
      Проверено на опыте, ибо сам заблокировал таким образом свой CSK32F103C8T6. Автору просьба добавить этот пункт про SWD, а то люди могут забросить играться в микроконтроллером ибо он больше «не работает».

      0
  4. спасибо, но
    проблема в том что это самое не так
    абсолютно тоже самое что ранее работало

    контроллер работает, даже мигает, как и договаривались
    вот только ст-линк к нему не коннектится

    это не может быть связано с тем что мы там частоты настраивали(множители?)

    вот лог ст-линк утилити

    20:18:24 : ST-LINK SN : 57FF67064884525035382387
    20:18:24 : V2J17S4
    20:18:24 : Connected via SWD.
    20:18:24 : Connection mode : Normal.
    20:18:24 : Debug in Low Power mode enabled.
    20:18:24 : Device ID:0x410
    20:18:24 : Device flash Size : 64KBytes
    20:18:24 : Device family :STM32F10xx Medium-density
    20:19:22 : Flash memory erased.
    20:20:45 : [Example_GPIO.bin] opened successfully.
    20:20:45 : [Example_GPIO.bin] checksum : 0x00010870
    20:21:21 : Memory programmed in 0s and 936ms.
    20:21:21 : Verification…OK
    20:21:21 : Programmed memory Checksum: 0x00010870
    21:43:33 : [Lesson3_1.hex] opened successfully.
    21:43:33 : [Lesson3_1.hex] checksum : 0x00046B51
    21:43:55 : Memory programmed in 1s and 264ms.
    21:43:55 : Verification…OK
    21:43:55 : Programmed memory Checksum: 0x00046B51
    21:43:56 : Disconnected from device.
    21:43:56 : Connection to device is lost: check power supply and debug connection.
    21:43:56 : If the target is in low power mode, please enable «Debug in Low Power mode» option from Target->settings menu.
    21:44:45 : [Example_GPIO.bin] opened successfully.
    21:44:45 : [Example_GPIO.bin] checksum : 0x00010870
    21:44:50 : Can not connect to target!
    Please select «Connect Under Reset» mode from Target->Settings menu and try again.
    If you’re trying to connect to a low frequency application , please select a lower SWD Frequency mode from Target->Settings menu.
    21:44:53 : No target connected

    0
    • Посмотрите на форумах. Кто-то пишет, что надо укоротить кабель USB, исключить все потенциальные наводки. Пишут, что необходимо соединить выводы 1 и 19 разъема STLink.

      0
    • По умолчанию в Cube SWD отключен
      https://bravikov.wordpress.com/2016/11/13/stm32cubemx-%D0%BF%D0%BE-%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E-%D0%BE%D1%82%D0%BA%D0%BB%D1%8E%D1%87%D0%B0%D0%B5%D1%82-swd-%D0%B4%D0%BB%D1%8F-f1/

      0
  5. помогла попытка перепрошить меняя BOOT1 и сбрасывая как полагается для usb-uart
    простите если замусорил комментарии
    могу за собой убрать)

    0
  6. Расскажите пожалуйста, как сделать, чтоб проект заливался через ST-link? Как описал sergpu, прошивка Вашего проекта (через ST-link) делает так, что для последующих прошивок надо переставлять перемычку Boot0, а отладка через ST-link вообще не работает. Т.к. плата ST-link стоит копейки и дает возможность прошивать без шаманств — это упростит вход для начинающих. А потратить на стартовый комплект 170 или 300 рублей — думаю, не большая разница…

    0
    • Здравствуйте!
      По St-link полно информации в интернете.
      Тот вариант, который использую я удобен тем, что связь с компьютером необходима еще для отладки, работы программы в системе и т.п.

      0
      • Нашел самостоятельно. Тут: https://istarik.ru/blog/stm32/107.html инструкция, как сделать себе бесплатный ST-link, и как настроить STM32CubeMX, чтобы TrueStudio отлаживал сгенеренный код. Прошивку можно обновлять и отлаживать, не дергая никакие перемычки и не соединяя провода на соплях.
        Всем советую.
        Здешние уроки вполне себе совместимы с ST-link, с учетом изменения одной настройки, описанной в статье по ссылке выше. Надеюсь, автор снизойдет до холопов и включит в описание вариант с ST-Link…

        0
  7. Приветствую Эдуард.

    Новый интерфейс STM32CubeMX 5 ой версии взрывает мозг.

    Какие Ваши ощущения при переходе с 4 на 5?

    0
  8. Во — первых, спасибо за прекрасные уроки. Я много чего читал в жизни, но такой хорошей подачи материала редко где встретишь. Очень здорово, продолжайте в том же духе.
    По делу. По поводу поддержки Atollic. Скачал обновления для CubeMX (поставил версию 5.1, firmware 1.9 для stm32f0). После этого вдруг перестали генериться проекты. Файлы библиотек копируются в папку проекта, а файл проекта не создаётся (. Покопался и что вижу?

    STM32CubeF0 Firmware Package V1.9.0 / 25-August-2017 Main Changes
    Maintenance release.
    Fix known defects and several enhancements implementation.
    Remove support of Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain.
    General updates to be compliant with Linux platforms.

    Т.е. поддержка Atollic для stm32f0 удалена! Во дела… Зачем это сделано, непонятно. И где гарантия, что она не будет удалена для других МК? Пришлось откатить всё назад. А интерфейс куба 5 мне лично совсем не понравился (. Так что, осторожно с обновлениями

    0
  9. Всем привет. Скажите пожалуйста возможно вопрос не по теме. Как можно увеличить шрифт в atollic truestudio. Когда пишешь код хочется видеть его гораздо крупнее как например в arduino там можно увеличивать шрифт кода. Подскажите пожалуйста как в atollic truestudio можно увеличить шрифт?

    0
  10. Кто нибудь знает как в atollic truestudio отслеживать переменные в реал тайме. Скиньте пожалуйста ссылку, где это хорошо описывают.

    0
  11. Здравствуй,в папке Debug HEX файл не появляется,с чем может быть связано?

    0
    • Здравствуйте!
      То же нет ни elf hex map файлов, одни .su
      Решили проблему?
      Ставил разнве версии и всё без толку….

      0
  12. Здравствуйте!
    Застрял на стадии генерации проекта в КубМХ. Приложение спрашивает про скачивание пакета, соглашаюсь и потом выскакивает ошибка. Вручную скачиваю этот файл — не помогает. Какие есть варианты выхода из этой ситуации? До этого при первом включении программа скачивала файлы, значит со связью все в порядке.

    0
  13. Я на эти грабли тоже влетел пока запихивал бинарники с git habov . Пытался сделать отладочный программатор из blue pill .
    Да , у меня и com port получился из пилюли и с другой bin определяло пилюлю как st-link dungle.
    Потом , сложилось впечатление , что бинарник прошил и пилюлю и программатор . Чтой тось там вроде докачало автоматом на win 7 .
    Keil and st-link util взбунтовались .
    Потом как то реанимировал . Сносил виртуал алкоголя ,тыркал кнопки и читал молитвы.
    Заказал ещё 2 на амазоне и тут мой ST-link v 2 ожил .
    Но он стал другим . Без подключенной turget ( целевое устройство ) программатор не принимает.

    0
  14. Добрый день. Столкнулся с проблемой. При нажатии кнопки GENERATE CODE и начале загрузки архива выбивает ошибку.

    Error downloading the following files:
    stm32cube_fw_f1_v170.zip (Not available)

    For unavailable files, you can load them manually with the ‘From Local’ button

    Я так понимаю, что доступа к указанному архиву у программы нет и на форуме ST она частенько всплывает. Возможно у кого-то есть необходимый архив? Буду благодарен

    0
    • Сам отвечу на свой-же вопрос. Похоже что, старую версию убрали, а в программе забыли прописать.

      Скачал архив с версией 180
      https://my.st.com/content/ccc/resource/technical/software/firmware/40/db/b8/d5/bd/a7/41/b1/stm32cubef1.zip/files/stm32cubef1.zip/jcr:content/translations/en.stm32cubef1.zip

      0
      • привет, сам вот столкнулся с такой же проблемой. не подскажете куда нужно распаковать архив?

        0
  15. Добрый день!
    Столкнулся с непреодолимой проблемой, помогите, пожалуста!
    У меня есть F401RE NUCLEO со встроенным программатором и, собственно, F103C8T6. Насколько мне известно uart в программаторе уже «из коробки»
    Но, используя программатор от NUCLEO никак не получается подключить по COM F103 к компу

    0
    • Проблему решил путем подключения F103 через SWD и прошивки ее через ST-LINK utility и то, F103 определяется, если правильно подобрать момент между нажатием кнопки Reset на F103 и нажатием Connect в утилите

      0
  16. у меня вопрос.cmsis чем лучше хал или ЛЛ?.И как в Atollic TrueStudio программировать в данной библиотеке?Ведь на стм32 столько регистров что можно голову потерять.Как включить cmsis?

    0
    • Здравствуйте!
      Это решает разработчик программы в каждом конкретном случае. Если программа критична по времени выполнения, то CMSIS. В последующих уроках вы сможете сравнить эти способы.

      0
  17. я имею виду как лучше включить CMSIS в проект масса вариантов с чистого листа.Какой способ лучше.При изначальном настройке проекта cmsis в Atollic TrueStudio есть эта библиотека.Какие инклуды включать?.

    0
  18. Здравствуйте. После генерации проекта в CubeMX и при открытии его в True Studio, TrueStudio не видит некоторые заголовочные файлы, хотя в файловой системе они присутствуют.
    Подозреваю, что структура проекта, генерируемая CubeMX не совпадает со структурой проекта TrueStudio.
    Как это можно исправить? Где прописать зависимости?

    0
      • Я так и сделал. Может быть в новой версии или CubeMX или TrueStudio изменены структуры каталогов? Может быть можно прописать путь к папке проектов в системной переменной PATH? Поможет ли это? Я не совсем понимаю, как компилятор встроенный в TRUEstudio ищет файлы/ То ли он обращается к системным средствам поиска каталогов, то ли использует свои средства…

        0

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *