Как настроить среду разработки CooCox IDE для программирования микроконтроллеров STM32. Какое оборудование и программное обеспечение необходимо. Как создать и скомпилировать первый проект в CooCox IDE для STM32. Какие основные возможности предоставляет CooCox IDE для разработки под STM32.
Необходимое оборудование и программное обеспечение
Для начала работы с микроконтроллерами STM32 в среде CooCox IDE потребуется следующее:
- Отладочная плата на базе STM32 (например, STM32F103C8T6 или STM32F4Discovery)
- Программатор-отладчик ST-Link V2
- USB-кабель для подключения отладочной платы к компьютеру
- Компьютер с операционной системой Windows
- Среда разработки CooCox CoIDE
- Компилятор GNU Tools for ARM Embedded Processors
- Драйвер ST-Link
Все необходимое программное обеспечение является бесплатным и его можно скачать с официальных сайтов.
Установка и настройка CooCox IDE
Процесс установки и настройки CooCox IDE включает следующие шаги:
- Скачайте и установите компилятор GNU Tools for ARM.
- Скачайте и установите CooCox CoIDE.
- При первом запуске CoIDE укажите путь к папке с установленным компилятором GNU Tools.
- Установите драйвер ST-Link.
- Подключите отладочную плату к компьютеру через USB-кабель.
После выполнения этих шагов среда разработки будет готова к созданию проектов для STM32.
Создание первого проекта в CooCox IDE
Чтобы создать новый проект для STM32 в CooCox IDE, выполните следующие действия:
- Запустите CooCox CoIDE и выберите пункт меню «Project» -> «New Project».
- В открывшемся окне выберите производителя микроконтроллера (ST) и конкретную модель используемого МК.
- Задайте имя проекта и выберите папку для его сохранения.
- На вкладке выбора компонентов отметьте необходимые библиотеки (например, GPIO).
- Нажмите «Finish» для создания проекта.
После этого в редакторе откроется файл main.c, в котором можно начинать писать код программы.
Компиляция и загрузка программы в микроконтроллер
Для компиляции проекта нажмите кнопку Build на панели инструментов или выберите пункт меню «Project» -> «Build Project». После успешной компиляции откроется окно с информацией о размере скомпилированной программы.
Чтобы загрузить программу в микроконтроллер:
- Подключите отладочную плату к компьютеру через ST-Link.
- В настройках проекта на вкладке «Debug» выберите ST-Link в качестве отладчика.
- Нажмите кнопку Download на панели инструментов.
Если все настроено правильно, программа будет загружена в память микроконтроллера и начнет выполняться.
Основные возможности CooCox IDE для разработки под STM32
CooCox IDE предоставляет следующие ключевые возможности для программирования STM32:
- Встроенный редактор кода с подсветкой синтаксиса
- Средства автодополнения кода
- Встроенный отладчик с поддержкой точек останова
- Менеджер библиотек периферии STM32
- Встроенный терминал для вывода отладочной информации
- Интеграция с системой контроля версий Git
- Поддержка проектов на языках C и C++
Благодаря этому функционалу CooCox IDE является удобной и мощной средой для разработки программного обеспечения микроконтроллеров STM32.
Преимущества использования CooCox IDE для STM32
CooCox IDE имеет ряд преимуществ по сравнению с другими средами разработки для STM32:
- Бесплатность и отсутствие ограничений функциональности
- Простота установки и настройки
- Интуитивно понятный интерфейс
- Хорошая производительность даже на слабых компьютерах
- Регулярные обновления и поддержка новых микроконтроллеров
- Большое сообщество разработчиков
Это делает CooCox IDE отличным выбором как для начинающих, так и для опытных разработчиков встраиваемых систем на базе STM32.
Создание проекта с использованием FreeRTOS в CooCox IDE
CooCox IDE позволяет легко интегрировать операционную систему реального времени FreeRTOS в проекты для STM32. Для этого нужно выполнить следующие шаги:
- При создании нового проекта на вкладке выбора компонентов отметьте пункт FreeRTOS.
- В настройках проекта укажите используемую версию FreeRTOS.
- Добавьте необходимые файлы FreeRTOS в проект.
- Подключите заголовочные файлы FreeRTOS в коде программы.
- Используйте API-функции FreeRTOS для создания задач, семафоров, очередей и т.д.
CooCox IDE автоматически добавит нужные пути включения и параметры компиляции для корректной работы с FreeRTOS.
Отладка программ для STM32 в CooCox IDE
Отладка является важным этапом разработки программ для микроконтроллеров. CooCox IDE предоставляет следующие возможности отладки STM32:
- Пошаговое выполнение программы
- Установка точек останова
- Просмотр и изменение значений переменных
- Просмотр содержимого регистров процессора
- Просмотр содержимого памяти
- Трассировка выполнения программы
Для начала отладки нужно собрать проект в режиме отладки и запустить отладчик кнопкой Debug на панели инструментов. После этого станут доступны все инструменты отладки.
STM32 простой и быстрый старт с CooCox CoIDE « схемопедия
В данной статье я хотел бы рассказать о начале работы с микроконтроллерами STM32 в бесплатной среде CoIDE, которая основана на Eclipse. В отличии от IAR и других сред разработки, CooCox CoIDE бесплатна и проста в освоении, а также содержит встроенный отладчик ST-Link, что позволяет начинающим изучать STM32 уже через 10 минут заставить вашу плату помигать светодиодом. Если вы еще незнакомы с серией STM32, то рекомендую почитать трилогию об архитектуре STM32, особенностях программирования и прочую полезную информацию.
В качестве STM32 использовалась отладочная плата STM32VLDiscovery доставшаяся нахаляву от фирмы STMicroelectronics с процессором STM32F100RBT6B на борту:
Итак приступим. Идем на официальный сайт CooCox и качаем последнюю версию CoCenter. Для скачивания необходимо зарегистрироваться, регистрация простая и бесплатная. Затем инсталлируем скачанный файл и запускаем:
CoCenter представляет собой менеджер ПО, который будет оповещать об обновлениях ПО, а также через который можно будет загружать новые версии. Здесь нас интересует первая строчка CooCox CoIDE – среда разработки, на базе Eclipse, которая помимо STM32 поддерживает кучу других семейств микроконтроллеров: Freescale, Holtek, NXP, Nuvoton, TI, Atmel SAM, Energy Micro и др. С каждой новой версией CoIDE список МК постоянно пополняется. Нажимаем кнопку Download, указываем папку для скачивания и CoCenter начнет скачивание CoIDE. После скачивание появится кнопка «Install», нажимаем ее и устанавливаем CoIDE. После успешной установки запускаем CoIDE:
Появится стартовое окно Step 1, в котором необходимо выбрать производителя нашего микроконтроллера. Нажимаем ST и переходим к Step 2 (выбор микроконтроллера), в котором необходимо выбрать конкретную модель. У нас STM32F100RBT6B, поэтому нажимаем на соответствующую модель:
Справа, в окне Help отображаются краткие характеристики каждого чипа. После выбора нужного нам микроконтроллера переходим к третьему шагу Step 3 – к выбору необходимых библиотек для работы:
Давайте создадим простейший проект для мигания светодиодом, как это принято для изучения микроконтроллеров.
Для этого нам понадобится библиотека GPIO, при включении которой, CoIDE попросит создать новый проект. На это предложение нажимаем Yes, указываем папку где будет храниться наш проект и его название. При этом, CoIDE подключит к проекту 3 другие, необходимые для работы библиотеки, а также создаст всю необходимую структуру проекта:
Чем еще хорош CoIDE, это тем, что в нем есть возможность загружать примеры прямо в среду разработки. В вкладке Components вы можете видеть, что почти к каждой библиотеке есть примеры, нажимаем на GPIO (with 4 examples) и видим их:
Туда можно добавлять и свои примеры. Как видно на скриншоте выше, в примерах уже присутствует код для мигания светодиодом GPIO_Blink. Можно нажать кнопку add и он добавиться в проект, но как подключаемый файл, поэтому мы сделаем по другому просто скопируем весь код примера в файл main.c. Единственное, строку void GPIO_Blink(void) замените на int main(void). Итак, нажимаем F7 (или в меню выбираем Project->Build), чтобы скомпилировать проект и… не тут то было!
Среде нужен компилятор GCC, а у нас его нет. Поэтому идем на сайт GNU Tools for ARM Embedded Processors и справа качаем последнюю версию тулчайна. Затем запускаем файл и инсталируем gcc toolchain. Далее, в настройках CoIDE укажем правильный путь к тулчайну:
Опять нажимаем F7 (Project->Build) и видим, что компиляция прошла успешно:
Осталось прошить микроконтроллер. Для этого при помощи USB подключаем нашу плату к компьютеру. Затем, в настройках дебаггера необходимо поставить ST-Link, для этого в меню выбираем Project->Configuration и открываем вкладку Debugger. В выпадающем списке выбираем ST-Link и закрываем окно:
Попробуем прошить МК. В меню выбираем Flash->Program Download (или на панели инструментов щелкаем по соответствующей иконке) и видим, что МК успешно прошит:
На плате наблюдаем мигающий светодиод, видео или фото я думаю приводить нет смысла, т.к. все это видели.
Также, в CoIDE работают различные режимы отладки, для этого нажимаем CTRL+F5 (или в меню Debug->Debug):
На этом все. Как видите, настройка среды CoIDE и работа с ней очень проста. Надеюсь данная статья подтолкнет вас в изучении очень перспективных и недорогих микроконтроллеров STM32.
Автор: taliban
Stm32 настройка coocox
Естественно что все тактовые сигналы выделяются от одного или нескольких генераторов.. У микроконтроллеров STM32 есть 2 внутренних генератора и есть возможность подключить 2 внешних! Все бы ничего, но он имеет низкую стабильность, поэтому используется только как стартовый микроконтроллер всегда стартует с его тактом! Дополнительно к внутреннему генератору HSI ставят внешний, как правило, кварцевый генератор — который имеет очень высокие показатели стабильности частоты.. Внешний генератор обозначается буквами HSE.
Поиск данных по Вашему запросу:
Схемы, справочники, даташиты:
Прайс-листы, цены:
Обсуждения, статьи, мануалы:
Дождитесь окончания поиска во всех базах.
По завершению появится ссылка для доступа к найденным материалам.
Содержание:
- Программирование STM32. Настройка Coocox IDE + STM32CubeMX
- Настройка CooCox
- CooCox free IDE на основе GCC g++ и eclipse
- CooCox CoIDE и STM32CubeMX. Программирование STM32. Шаг №78
- STM32 простой и быстрый старт с CooCox CoIDE
- 2. STM32. Программирование. IDE для STM32
- Как настроить j-link c CooCox ?
- Настройка модуля CAN на микроконтроллере STM32F103. Часть 1
- CooCox CoIDE — первый запуск, первый опыт.
- Простой старт STM32+CooCox IDE+ST-Link
ПОСМОТРИТЕ ВИДЕО ПО ТЕМЕ: Перша програма для CooCox за допомоги STM32CUBEMX
youtube.com/embed/B3M71JxBLrI» frameborder=»0″ allowfullscreen=»»/>Программирование STM32. Настройка Coocox IDE + STM32CubeMX
Символьный дисплей HD Для работы всем контроллерам, процессорам, цифровым электронным устройствам необходим источник тактовых импульсов. Он может быть как внешний в виде RC цепочки, керамического или кварцевого осциллятора, кварцевого генератора, также может находиться внутри контроллера.
STM32 тут не исключение. Данный контроллер имеет множество вариантов тактирования и обладает гибкими и широкими настройками управления тактированием своей периферии. В работе будет использована библиотека Standard Peripheral Library.
Для начала посмотрим на схемы тактирования из даташитов различных контроллеров из семейства stm Из дерева тактирования контроллера видно, что у него есть две основные цепи тактирования основная системная и часовая.
Причём обе цепи могут получать тактирования как от внешнего источника тактового сигнала, так и от встроенной RC цепочки. Встроенные RC цепочки позволяют уменьшить количество компонентов в устройстве, меньше потребляют, чем при использовании внешнего источника тактового сигнала, но отличаются малой точностью и имеют температурный дрейф те или иные отклонения в зависимости от окружающей температуры. Если устройство работает с точной высокоскоростной периферией, то это не лучший вариант.
Внешний источник тактовых сигналов отличается большей точностью и стабильностью, но при этом увеличивает количество компонентов, следовательно стоимость устройства и его габариты, но при этом, повторюсь, незаменим, когда требуется высокая точность и стабильность.
Рассмотрим тактирование системной части контроллера. Для работы с ней её для начала нужно включить. Для этого нам нужно его включить, выбрать множитель и источник тактового сигнала. Рассмотрим поподробнее. Есть контроллеры с 32, 72, МГц. Но за частотой гнаться не нужно, для каждой задачи лучше использовать свою частоту. Для простых задач вполне хватит малых частот, для ресурсоёмких и вычислительноемких задач частота нужна будет поболее.
Также следует учитывать, что с возрастанием частоты увеличивается энергопотребление, тепловыделение и снижается надёжность, повышаются требования к схемотехнике и разводке. Всегда нужно уметь находить золотую середину.
Данная команда, как уже было сказано выше, выбирает источник тактирования системной шины. Доступно их Если использовать внешний источник тактовых импульсов, то для начала нам нужно его подключить к контроллеру. Частота резонатора может быть от 4 до 24МГц. Емкость конденсаторов рекомендуется от 5 до 25пФ, подробнее нужно смотреть в документации к резонатору.
В качестве резонатора можно применять: кварцевые резонаторы, кварцевые генераторы, керамические резонаторы. Правда сначала сигнал пройдёт еще через предделитель PREDIV1 , что существенно расширяет диапазон частот системной шины. Он принимает 2 параметра: источник тактирования и делитель. Делителей же поболее:. А вот после настройки тактирования системной шины начинается настройка тактирования уже отдельных блоков периферии, на каждый из которых нужно подать тактирование отдельно.
Тактирование каждого узла периферии будет рассматриваться отдельно для каждого узла в соответствующей ему статье. Отмечу, что есть некоторые периферийные узлы, которые тактируются от некоторых источников тактового сигнала напрямую и для их работы нужный им источник тактирования нужно будет включать в любом случае, даже если шина, для которой они предназначены, уже подключена к другому источнику.
Ему HSI необходима, даже если контроллер тактируется от внешнего кварца. Подробнее это будет рассмотрено в статье по доступу к flash памяти контроллера. Бывают случаи, когда тактовая частота шины превышает частоту тактирования подключенной к ней периферии. Обычно такая периферия снабжается собственными предделителями, которыми следует воспользоваться, чтобы периферия могла корректно работать. Для контроля системной шины и её источников тактирования у контроллера есть специальный выход тактового сигнала — MCO.
Так же данный вывод нужно сконфигурировать на выход следующим образом. Плюс дополнительным бонусом можно подать тактирование через кратный предделитель тактирования с внешнего основного HSE осциллятора.
Это может быть полезно при использовании основного тактового генератора с кратной часовой частотой. Наиболее распространённый и точный вариант — использование внешнего часового кварца. Частота кварцевого резонатора для часового кварца составляет Емкость конденсаторов обвязки кварца рекомендуется от 5 до 15пФ, подробнее нужно смотреть в документации на используемый резонатор.
В прошивке включение внешнего кварцевого резонатора будет выглядеть следующим образом:. Для начала разрешаем работу внешнему часовому кварцу, затем выбираем тактирование часовой шины контроллера от внешнего часового осциллятора, далее включаем саму часовую шину контроллера. Если использовать встроенную 40КГц RC цепочку, то для начала нужно её включить.
Настройка в этом случае будет выглядеть следующим образом:. На этом настройка часовой шины контроллера заканчивается, но настройка встроенных часов реального времени ещё нет, она будет описана в следующей статье — STM Встроенные часы реального времени RTC.
Андрей пишет А вопросик можно? Какова она по умолчанию? Чем определяется? Почему я задаю этот вопрос? По моему частота будет около 8 МГц. Там есть инициализация по умолчанию. Сначала он, кажется, проверит наличие внешнего кварца обычно по умолчанию ставят 8МГц , а если его нет, то запустится от внутренней RC цепочки.
В первых статьях курса по stm32 поэтому вопрос настройки тактирования и пропускал, так как есть настройки по умолчанию. А в этом файле как раз и присутствуют функции для настройки тактирования. И эта функция вызывается из стартап-файла, того, который keil сам вставляет в проект при его создании.
Так вот значит, все что в этой функции прописано — все это и есть настройка тактирования. Вот только чтобы изменить эту настройку, надо глубоко копать документацию, разбираться с регистрами и битами, а затем править эту функцию и др.
Как-то сложновато. При внимательном изучении этого файла я углядел следующую фразу в начале. Ах вот оно что! Такая утилитка действительно есть на сайте STM. Чего с этим всем делать?
Как лучше? Такой файлик да, есть. И в нём прописана начальная инициализация, причём без разницы, какая среда разработки. Есть некоторые программы, которые помогают настраивать периферию контроллера, например тот же cube, там, правда не для всех контроллеров, можно на удобной блок схеме настроить систему тактирования.
Вот только автогенератор кода мне у него не понравился, поэтому его кодом не пользуюсь. Как раз таки так и делаю: сначала позволяю STP произвести начальную конфигурацию МК, а затем сам ручками, как описано в статье, всё что нужно переконфигурирую. Только обидно, что у каждого камня свои особенности и немного команды STP отличаются. Sova пишет Люди работайте с чипом по человечески без использования всех этих оберток, реально инициализация таймера занимает 6 строчек.
Владислав пишет Уже установлен на плате. В статье приведены 2 примера подряд, только для кварца на 8 МГц. Они для Вас полностью справедливы, только в первом случае будет 10МГц на системной шине, а во втором 30МГц. Если нужна другая частота — то считайте множитель и пред делитель. Приведенные примеры не совсем корректны. Сори с телефона писал …Для ПЛЛ также необходимо подождать устойчивой работы. Николай пишет Нужно ли перед настройкой тактирования включать пины порта на который подключается кварц?
Или включать порт необязательно будет работать и так? По умолчанию выводы сконфигурированны на работу с кварцем. Перд тактированием включать порты не нужно. Комментарии RSS. Имя обязательно. Почта скрыта обязательно. Обратная связь О проекте. Начальная настройка тактирования системной и часовой шины STM Символьный дисплей HD Для работы всем контроллерам, процессорам, цифровым электронным устройствам необходим источник тактовых импульсов.
Деревья тактирования stm32fxx и stm32fxx Деревья тактирования stm32fxx и stm32fxx Дерево тактирования STM32Fxx Из дерева тактирования контроллера видно, что у него есть две основные цепи тактирования основная системная и часовая. Системное тактирование Рассмотрим тактирование системной части контроллера. Доступно их 3: Если использовать внешний источник тактовых импульсов, то для начала нам нужно его подключить к контроллеру.
Далее подключаем его в коде.
Настройка CooCox
Так уж сложилось, что на моем компьютере всегда была установлена Windows, поэтому весь софт который мы будем использовать в ходе изучения микроконтроллеров STM32 предназначен для винды. Кстати у STM32 есть еще одно преимущество перед другими популярными контроллерами типа pic или avr , для STM32 нет особой проблемы с софтом под линукс об этом подробнее в другой раз. Весь софт который нам понадобится можно поделить на три группы:. Это означает что у суровых челябинских металлургов есть возможность писать программы хоть в блокноте, потом делать make файлы, компилировать всё это дело и прошивать. От слов переходим к делу — скачаем, установим и настроим софт. CooCox сам по себе не умеет компилировать код который в нем написали. Для компиляции он запускает внешний компилятор который тоже нужно скачать.
первоначально микроконтроллер STM32 стартует на одном из внутренних генераторов, обычно он обозначается HSI и имеет.
CooCox free IDE на основе GCC g++ и eclipse
Если вы еще незнакомы с серией STM32, то рекомендую почитать трилогию об архитектуре STM32 , особенностях программирования и прочую полезную информацию. Итак приступим. Для скачивания необходимо зарегистрироваться, регистрация простая и бесплатная. Затем инсталлируем скачанный файл и запускаем. Появится стартовое окно Step 1, в котором необходимо выбрать производителя нашего микроконтроллера. Нажимаем ST и переходим к Step 2 выбор микроконтроллера , в котором необходимо выбрать конкретную модель. Справа, в окне Help отображаются краткие характеристики каждого чипа. После выбора нужного нам микроконтроллера переходим к третьему шагу Step 3 — к выбору необходимых библиотек для работы:. Давайте создадим простейший проект для мигания светодиодом, как это принято для изучения микроконтроллеров. На это предложение нажимаем Yes, указываем папку где будет храниться наш проект и его название.
CooCox CoIDE и STM32CubeMX. Программирование STM32. Шаг №78
Войдите , пожалуйста. Хабр Geektimes Тостер Мой круг Фрилансим. Войти Регистрация. В этой статье я хочу поделиться с вами несколькими соображениями на этот счет, а также описать процесс сборки в выбранной IDE операционной системы реального времени FreeRTOS.
Вселенная движется к Богу, то бишь, к предельной сложности. Все, что способствует этому, — хорошо, все, что препятствует, — плохо.
STM32 простой и быстрый старт с CooCox CoIDE
Логин или эл. Войти или Зарегистрироваться. Авторизация Логин или эл. Короче говоря -скачав свободный CooCox IDE естественно он на Еклипсе в течение десяти минут я создал и закомпилировал моргалку, чего мне не удавалась долгое время. Как ни странно : создать проект можно через меню -Project указать таргет и назвать проект. При этом пути кракозябры уходят и вобщем все хорошо : Примеры для STM32 coocox.
2. STM32. Программирование. IDE для STM32
Данная статья подразумевает наличие у читателя опыта работы с микроконтроллерами, понимания их архитекторы и знания языков программирования. К сожалению, я не смог заставить работать свежую версию с моим программатором ST-Link, поэтому не стал тратить время и установил проверенную. Скачать CoIDE 1. На процессе установки и настройки этих программ я останавливаться не буду, в интернете достаточно информации по этой теме. Весь процесс создания проекта занимает не более 5 минут. Далее выбираем тип микроконтроллера. Выбираем ее, поставив галочку.
STM32 простой и быстрый старт с CooCox CoIDE Как видите, настройка среды CoIDE и работа с ней очень проста. Надеюсь данная статья.
Как настроить j-link c CooCox ?
Всем привет. В этой статье описан пример настройки программного комплекса для работы с микроконтроллером STM32, в данном случае stm32fvct6 STM32f3 discovery. Сделав обзор программного обеспечения для работы с STM можно выделить следующие:. Громоздкость и сложность периферии в STM32 на начальном этапе может облегчить данная программа.
Настройка модуля CAN на микроконтроллере STM32F103. Часть 1
ВИДЕО ПО ТЕМЕ: Разработки на микропроцессорах. Иногда малость бесит. STM32. CooCox
Доброго дня! В предыдущих моих статьях по микроконтроллерам STM32 я ничего не говорил об аппаратной части, а только о программной, касающейся больше языка СИ, показав возможности этого типа микроконтроллеров в работе с графическим дисплеем. Итак скачиваем оба мануала, открываем тот, который 2Mb и смотрим Pinouts. Переходим к выбору среды разработки.
Для того, чтобы разрабатывать свои программы нам понадобится среда разработки, желательно с дебаггером, и компилятор C. Во-первых этот софт не стоит денег, во-вторых — с ним не возникло никаких вопросов.
CooCox CoIDE — первый запуск, первый опыт.
Символьный дисплей HD Для работы всем контроллерам, процессорам, цифровым электронным устройствам необходим источник тактовых импульсов. Он может быть как внешний в виде RC цепочки, керамического или кварцевого осциллятора, кварцевого генератора, также может находиться внутри контроллера. STM32 тут не исключение. Данный контроллер имеет множество вариантов тактирования и обладает гибкими и широкими настройками управления тактированием своей периферии.
Простой старт STM32+CooCox IDE+ST-Link
Авторизация Зарегистрироваться Логин или эл. Напомнить пароль Пароль. Войти Запомнить меня. Среда должна в себя включать компилятор, редактор кода, отладчик, прошивалку микроконтроллера, а также должна быть удобна для использования.
Начало работы Программирование микроконтроллера STM32 с использованием CooCox CoIDE
robotics-university.com | Привет друзья, сегодня я приглашаю вас узнать об одном из популярных 32-битных чипов микроконтроллера. Этот чип микроконтроллера производства компании ST microelectronics (STM). В этой статье я дам руководство по началу программирования микросхем STM32 с использованием Coocox CoIDE. Почему Coocox CoIDE? Потому что Coocox CoIDE бесплатна для использования и имеет все функции в качестве программного обеспечения IDE. В этом проекте я использую микросхему микроконтроллера серии STM32F100, встроенную в комплект разработки обнаружения STM32 Value Line (VL) (см. рис. 1). Как вы знаете из моей предыдущей статьи, комплект разработки STM32 VL discovery оснащен программатором ST-LINK/V2. Хорошо… давайте продолжим читать эту статью и попрактиковаться, следуя инструкциям по этому проекту, чтобы вы могли создать свой собственный проект STM32 дома.
1. Материалы проекта
Чтобы построить этот проект, нам нужны материалы проекта. Ниже я описываю потребности в аппаратном и программном обеспечении, чтобы вы могли реализовать этот проект.
A. Необходимое оборудование
(1) Комплект для разработки обнаружения STM32 VL — STM32F100 (ARM Cortex M3).
(2) Кабель для передачи данных (от USB типа A до мини-USB типа B).
(3) Компьютер/ноутбук.
Рис. 1. Комплект разработки обнаружения STM32F1 VL
B. Необходимое программное обеспечение
(1) Программное обеспечение GNU Embedded Toolchain for Arm (компилятор), GCC ARM.
- GCC ARM выпущен в 2016 году — Скачать здесь!
- [Обновление] GCC ARM выпущен в 2019 году — Скачать здесь!
(2) Редактор программ, CooCox CoIDE. Скачать здесь!
(3) Загрузчик программ, утилита STM32 ST-LINK. Скачать здесь!
К вашему сведению, все вышеуказанное программное обеспечение является бесплатным. Мы можем использовать его без ограничений по времени и функциям. Если в ссылке для загрузки есть ошибки, вы можете загрузить все программное обеспечение с моего диска ( Нажмите здесь! ), удачной загрузки!
2. Интерфейс STM32 VL Discovery Development Kit с компьютером
Чтобы начать проект, сначала необходимо подключить компьютер к комплекту разработки STM32 VL Discovery через USB-порт. См. рисунок 2.
Рисунок 2. Взаимодействие комплекта разработки для обнаружения STM32F1 VL с компьютером
Затем протестируйте комплект разработки для обнаружения STM32 VL, чтобы убедиться, что этот комплект для разработки работает правильно, выполнив следующие действия:
1) Убедитесь, что перемычки JP1 и CN3 установлены.
2) Подсоедините плату обнаружения STM32 VL к компьютеру с помощью кабеля USB типа A — Mini-B через разъем USB CN1. Он будет питать плату.
3) Нажмите пользовательскую кнопку B1 (Нижний левый угол платы).
4) Наблюдайте, как мигание зеленого светодиода LD3 меняется в зависимости от нажатия пользовательской кнопки B1.
5) Каждое нажатие на пользовательскую кнопку B1 подтверждается синим светодиодом LD4.
6) Если поведение индикатора на наборе разработки STM32 VL, как показано в пунктах 4 и 5, означает, что комплект разработки обнаружения STM32 VL работает правильно и готов к использованию.
3. Установка необходимых программ Встроенный набор инструментов для Arm? Вот полное описание:
«GNU Embedded Toolchain for Arm — это готовый к использованию набор инструментов с открытым исходным кодом для программирования на C, C++ и ассемблере, ориентированный на семейство процессоров Arm Cortex-M и Cortex-R. Он включает в себя компилятор GNU (GCC) и доступен бесплатно непосредственно от Arm для разработки встраиваемого программного обеспечения в операционных системах Windows, Linux и Mac OS X».
Чтобы начать установку GCC ARM, просто дважды щелкните файл установщика (exe), загруженный с веб-сайта разработчика ARM. Смотрите рисунок 3! Рисунок 3. Установочный файл GCC ARM Потому что каталог установки GNU ARM станет каталогом для установки Coocox CoIDE (в подкаталоге bin) и Coocox CoSmart (в папке хранилища файла arm-none-eabi-gcc.exe).
Рисунок 4. Путь установки GCC ARM (каталог)
На моем компьютере GCC ARM установлен в каталог C:\Program Files (x86)\GNU Tools Arm Embedded. Я использую 64-битную операционную систему Windows 7 на своем компьютере.
3.2 Установка Coocox CoIDE
После завершения установки GCC ARM установите Coocox CoIDE. Coocox CoIDE — это программное обеспечение, в котором мы можем создать программу C/C++ для настройки утилит процессора STM8 или STM32. Чтобы начать установку Coocox CoIDE, дважды щелкните загруженный установочный файл Coocox CoIDE (exe). Смотрите рисунок 5!
Рисунок 5. Файл установщика Coocox CoIDE
Важно:
Если программное обеспечение Coocox CoIDE установлено успешно. Запустите программное обеспечение Coocox CoIDE, чтобы выбрать путь цепочки инструментов для компилятора GCC ARM. Следуйте инструкциям ниже!
1. Выберите «Проект» в строке меню (см. рис. 6).
2. Выберите опцию «Выбрать путь цепочки инструментов» (см. рис. 6).
3. Просмотрите каталог установки GCC ARM. Выберите подкаталог «bin». (См. рис. 7).
C:\Program Files (x86)\GNU Tools Arm Embedded\9 2019-q4-major\bin
Запомните путь (каталог) установки GCC ARM. Смотрите рисунок 4!
4. Нажмите OK. (См. рис. 7).
. установите программное обеспечение STM32 ST-Link Utility. STM32 ST-Link Utility — это программное обеспечение от ST microelectronics (STM), предназначенное для программирования микросхем микроконтроллера STM32 (запись, чтение, проверка и стирание). Чтобы начать установку STM32 ST-Link Utility, дважды щелкните загруженный установочный файл STM32 ST-Link Utility (exe). Смотрите рисунок 8!
Рис. 8. Файл STM32 ST-Link Utility v4. 5.0.exe
После установки STM32 ST-Link Utility на компьютер попробуйте открыть ее в первый раз. На рис. 9 показано программное представление STM32 ST-Link Utility v4.5.0.
Рисунок 9. Вид программного обеспечения STM32 ST-Link Utility v4.5.0
4. Приступая к созданию нового проекта
После того, как вы установили все необходимое программное обеспечение в части 3 и подключили STM32 VL Discovery к компьютеру с помощью рисунка 2 выше, теперь пришло время приступить к созданию вашего первого проекта.
ШАГ 1: Откройте Coocox CoIDE
Для первого шага откройте программное обеспечение Coocox CoIDE из меню «Пуск» Windows или его ярлыка на рабочем столе компьютера.
Рисунок 10. Открытие Coocox CoIDE
ШАГ 2. Выберите чип в репозитории компонентов Coocox CoIDE
чип, который вы будете использовать. Чтобы выбрать чип, который вы будете использовать для создания своего проекта, щелкните меню «Просмотр» в строке меню Coocox CoIDE, а затем выберите параметр «Репозиторий», или вы также можете открыть его, щелкнув ссылку «Обзор в репозитории» на « Добро пожаловать» после того, как вы откроете программное обеспечение Coocox CoIDE. См. рис. 11.
На вкладке приветствия Coocox CoIDE есть описание «Репозиторий компонентов». Сообщите нам, что репозиторий компонентов содержит много высококачественного и повторно используемого исходного кода, который мы называем компонентами, включая периферийные устройства, драйверы, примеры и компоненты промежуточного программного обеспечения. См. рисунок 11.
Рисунок 11. Выберите микросхему в репозитории компонентов Coocox CoIDE
До написания этой статьи Coocox CoIDE поддерживал разработку микросхем микроконтроллеров от некоторых производителей микросхем, например ARM, Atmel, Energy Micro, Freescale, Holtek, TI, NXP, Nuvoton, ST, Toshiba, Spansion и Active-Semi. См. рис. 12.
Рисунок 12. Производитель чипа, поддерживаемый Coocox CoIDE
В этом первом проекте мы используем комплект разработки STM32 VL discovery от ST microelectronics, где на эту плату встроен чип микроконтроллера серии STM32F100RB. Итак, на этом шаге выберите «ST» для производителя чипа (см. рис. 13) и STM32F100RB для серии чипа (см. рис. 14).
Рисунок 13. Выберите «ST», чтобы выбрать микроэлектронику ST из микросхемы микроконтроллера
Рисунок 14. Выберите серию STM32F100RB
После того, как вы щелкнете по серии микросхем микроконтроллера от производителя микросхем, на вкладке «Периферийные устройства» репозитория Coocox CoIDE сообщите, что серия STM32F100RB от ST microelectronics является выбранной микросхемой для проекта. См. рисунок 15.
Рисунок 15. Выбранный чип серии STM32F100RB (ST microelectronics)
ШАГ 3: Создайте новый проект в Coocox CoIDE
Если вы выбрали чип, который используете в репозитории компонентов Coocox CoIDE, теперь вы можете приступить к созданию нового проекта. Чтобы создать новый проект, начните с выбора меню «Проект» в строке меню Coocox CoIDE, а затем выберите «Новый проект» (см. рис. 16), пока не откроется окно «Новый проект» (см. рис. 17).
Рисунок 16. Создание нового проекта в Coocox CoIDE
В окне «Новый проект» укажите имя проекта, снимите флажок «Использовать путь по умолчанию» и укажите каталог в качестве пути к проекту. После этого нажмите кнопку «Далее», см. рисунок 17!
Рисунок 17. Определите имя проекта и путь его хранения (каталог)
После того, как вы определите имя проекта и путь к проекту, в окне «Новый проект» откроются две опции «Модель» (новая база проекта). Две модели: «Создайте новый проект на основе вашего целевого чипа» или «Создайте новый проект на основе вашей целевой платы» (см. рис. 18 и 19).). Вы должны выбрать один из них.
Рисунок 18. Создайте новый проект на основе вашей целевой микросхемы
Рисунок 19. Создайте новый проект на основе вашей целевой платы
Для этого проекта выберите модель «Создать новый проект на основе вашей целевой микросхемы» и нажмите Кнопка «Далее». После того, как вы выбрали одну из новых моделей проекта, в окне «Новый проект» откроется список микроконтроллеров от производителя чипов, который вы выбрали на шаге 2 (выберите чип в репозитории компонентов Coocox CoIDE) выше, то есть микроконтроллер STM (ST).
Рисунок 20. Список микросхем микроконтроллера STM в окнах «Новый проект»
Выберите ту же серию микросхем микроконтроллера, что и на шаге 2, т. е. STM32F100RB, а затем нажмите кнопку «Готово». Затем на мгновение запустится процесс создания нового проекта, и, если процесс был завершен, программный файл main.c будет автоматически сгенерирован в разделе «Цель» Coocox CoIDE. См. рисунок 21.
Рисунок 21. Файл основной программы (main.c) создан
Чтобы открыть редактор программ, дважды щелкните основную программу (main.c), созданную в разделе «Цель» Coocox CoIDE (см. рис. 22). Отредактируйте или измените программу для настройки функций микроконтроллера STM32.
Рис. 22. Редактор программ — coocox CoIDE
ШАГ 4. Выберите базовые компоненты в репозитории Coocox CoIDE
Перед созданием, редактированием или изменением программы необходимо выбрать некоторые «Базовые компоненты» в разделе «Периферийные устройства». подвкладка на вкладке репозитория компонентов Coocox CoIDE (см. рис. 23), которая необходима для того, чтобы проект работал в соответствии с вашими ожиданиями. Поскольку выбранные базовые компоненты будут включать соответствующие файлы библиотек, которые будут полезны разработчику системы при создании, редактировании или изменении программы. Существует пять основных категорий компонентов, т. е. COMMON, BOOT, PERIPHERAL (производитель микросхем), PERIPERAL (Coocox CoIDE) и RTOS. См. рис. 23.
Рисунок 23. Категория «Базовые компоненты» в репозитории компонентов Coocox CoIDE
Важно:
Для некоторых базовых компонентов иногда требуется другой базовый компонент, и он будет автоматически выбираться при выборе базового компонента.
Рисунок 24. Автоматически выбранные базовые компоненты при выборе GPIO
Например, в этом проекте нам нужен базовый компонент «GPIO». Из рисунка 24 мы знаем, что когда мы выбираем компонент GPIO, автоматически выбираются три других основных компонента, то есть RCC (драйвер сброса и управления часами), CMSIS Boot и CMSIS Core.
ШАГ 5: Создание программы в редакторе программ Coocox CoIDE
В этом первом проекте мы создадим программу для управления двумя светодиодами (светоизлучающими диодами), которые установлены на PA0 и PB7 (на наборе для разработки STM32 VL). Напишите приведенную ниже программу в редакторе программ Coocox CoIDE, см. рисунок 25!
Рисунок 25. Напишите программу в редакторе программ Coocox CoIDE
Эта программа заставит светодиодные компоненты, установленные на выводах PA0 и PB7, загораться попеременно. Ниже представлена полная программа:
Шаг 6. Сборка программы
Для того, чтобы программу можно было загрузить (отправить) в микросхему целевого микроконтроллера, ее необходимо скомпилировать (построить) перед загрузкой. Для этого нажмите кнопку сборки или мы можем использовать горячую клавишу F7. См. рис. 26.
Рисунок 26. Сборка созданной программы
Если процесс сборки прошел успешно, в разделе консоли Coocox CoIDE появится уведомление «СБОРКА УСПЕШНА», как мы видим на рисунке 26.
Шаг 7: Загрузка программы в микросхему целевого микроконтроллера
Чтобы загрузить (отправить) в микросхему целевого микроконтроллера, выберите меню «Flash» в строке меню Coocox CoIDE, затем нажмите «Загрузка программы». См. рисунок 27.
Рисунок 27. Загрузка (отправка) программы в микросхему целевого микроконтроллера
После этого начнется процесс загрузки. Подожди чуть-чуть. Если процесс загрузки прошел успешно, в разделе консоли Coocox CoIDE будет сгенерирована «Информация о загрузке флэш-памяти», которая информирует о завершении процесса загрузки программы в целевой чип микроконтроллера (Стереть: Готово, Программа: Готово, Проверка: Готово). См. рис. 27.
Чтобы убедиться, что встроенная программа загружена в микросхему целевого микроконтроллера, обратите внимание на аппаратное обеспечение проекта. Соответствует ли поведение светодиода вашим ожиданиям? Если да, это признак того, что встроенная программа успешно скачалась.
Загрузка программы с помощью ST-Link Utility
Чтобы загрузить программу (шестнадцатеричный файл) с помощью программного обеспечения ST-Link Utility от компании ST microelectronics, выполните следующие действия: порт. (См. рис. 2 выше)
2. Откройте утилиту ST-Link. (См. рис. 28)
Рис. 28. Утилита ST-Link
3. Подключите STM32 VL Discovery к STM32 ST-Link Utility. (См. рисунок 29 и рисунок 30)
Рисунок 29. Подключение STM32 VL discovery к STM32 ST-Link Utility
Рисунок 30. Уведомление, если STM32 VL Discovery и STM32 ST-Link Utility подключены
4. Откройте и выберите программу (шестнадцатеричный) файл. (См. рис. 31, рис. 32 и рис. 33)
Рис. 31. Откройте шестнадцатеричный файл для загрузки
Рисунок 32. Выберите шестнадцатеричный файл
Рисунок 33. Шестнадцатеричный файл открыт
5. Загрузите программу (шестнадцатеричный формат) в целевой микроконтроллер STM32. (См. рис. 34, рис. 35 и рис. 36)
Рис. 34. Загрузите или отправьте программу (шестнадцатеричный формат) на целевой микроконтроллер STM32
Рис. 35. Убедитесь, что указан правильный путь к файлу, и начните загрузку программы
Рис. 36. Уведомление о полной загрузке программы (шестнадцатеричный файл)
6. Отключите ST-Link от целевого микроконтроллера STM32. (см. рис. 37)
Рисунок 37. Отключение ST-Link от целевого микроконтроллера STM32
7. Наблюдайте за оборудованием проекта, соответствует ли результат ожидаемому или еще нет? Если да, это признак того, что встроенная программа успешно скачалась.
Платформа STM32, поддерживаемая бесплатными инструментами разработки — 8 апреля 2015 г.
Версия для печати
Платформа STM32, поддерживаемая бесплатными инструментами разработки Платформа STM32, состоящая из 32-разрядных микроконтроллеров (MCU), STMicroelectronics и партнеры усердно работали над интеграцией поддержки в некоторые бесплатные интегрированные среды разработки (IDE).
Разработчики могут выбирать между интегрированными средами разработки на базе Eclipse, такими как CooCox CoIDE или Ac6 System Workbench для STM32, и средой MDK-ARM. Нет ограничений на размер кода, поддерживаются все необходимые файлы конфигурации и микропрограммы STM32, а также интуитивно понятное оборудование, такое как платы STM32 Nucleo или комплекты Discovery, используемые для проверки и разработки проекта.
Ac6 System Workbench для STM32 и CooCox IDE поддерживает все устройства STM32 на базе ядер ARM Cortex-M0, M0+, M3 и M4. Бесплатная среда Keil MDK-ARM для STM32 помогает перейти от устаревших 8-битных архитектур к 32-битной разработке Cortex, поддерживая серии STM32F0 и STM32L0 с Cortex-M0 и M0+ без каких-либо ограничений.
Все три IDE могут работать на настольных платформах Windows, а Ac6 System Workbench для STM32 в ближайшем будущем также будет доступен для Linux и Mac OSX. Поставщики IDE предоставляют техническую поддержку и регулярные обновления программного обеспечения для пользователей.
Инструменты можно бесплатно загрузить с веб-сайтов поставщиков: www.coocox.org, www.openstm32.org и www.keil.com/mdk-st
Поделитесь этой статьей:
Дополнительная литература :
Fusion 360 получает библиотеку САПР для электроники Ultra Librarian
Design Automation
Autodesk совместно с Ultra Librarian создали приложение, совместимое с Fusion 360, которое предоставляет пользователям бесплатные проверенные схематические символы, посадочные места печатных плат, 3D-модели STEP и эталонные проекты.
Подробнее…
ST выпускает новые эталонные конструкции для STM32
Altron Arrow
Автоматизация проектирования
Компания ST Microelectronics выпустила эталонные проекты для STM32WL5x и STM32WLEx, позволяющие быстро создавать прототипы новых приложений.
Подробнее…
TI выпускает пять лучших инструментов для проектирования электростанций
Altron Arrow
Автоматизация проектирования
Компания Texas Instruments выпустила онлайн-ресурс, объединяющий пять лучших инструментов проектирования электропитания, доступных для помощи в разработке следующего электронного проекта.
Подробнее…
Упрощенный поиск инструментов и помощи на веб-сайте Mouser
Автоматизация проектирования
Страница «Сервисы и инструменты» и Справочный центр предоставляют клиентам возможность просматривать и отслеживать заказы, запрашивать техническую поддержку и спецификации, а также размещать заказы.
Подробнее…
Обновленный AI/ML SDK для PolarFire FPGA
Altron Arrow
Автоматизация проектирования
Размеры сети были уменьшены на 50 % за счет оптимизации контейнеров по весу, а скорость встроенного симулятора битовой точности увеличилась втрое.
Подробнее…
Страницы ресурсов Mouser облегчают поиск того, что вам нужно
TRX Electronics
Автоматизация проектирования
Mouser Electronics предлагает множество онлайн-инструментов, ориентированных на клиента, которые упрощают и оптимизируют процесс выбора и покупки. Помогая клиентам легко просматривать, выбирать и покупать продукты,
Подробнее…
Комплект для разработки программного обеспечения для управления двигателем
Altron Arrow
Автоматизация проектирования
Микроконтроллеры STMicroelectronics STM32 обеспечивают производительность стандартных ядер Arm Cortex-M, работающих в режимах векторного управления или полевого управления (FOC), которые широко используются в высокопроизводительных
Подробнее.. .
Выпущена новейшая версия программного обеспечения для проектирования печатных плат
Dizzy Enterprises
Выпущена версия 8.14 для автоматизации проектирования
Proteus. В этой последней версии программного обеспечения для проектирования печатных плат и моделирования цепей добавлена специальная поддержка контрольных точек, усовершенствована разводка дифференциальных пар, заполнены смолой
Подробнее…
Выпущен Proteus 8.6, теперь он имитирует черепах
Dizzy Enterprises
Design Automation
Версия 8.6 программного обеспечения для моделирования и проектирования печатных плат Proteus добавляет новые функции, такие как моделирование микроконтроллера STM32F103xx и согласование длины змеевидных дорожек, но, без сомнения, самые новые новые
Подробнее…
Онлайн-симулятор скорости тиристора, выбор переключателя переменного тока
Автоматизация проектирования
Чтобы быстро найти тиристор или переключатель переменного тока, который лучше всего соответствует их конструкции, инженеры могут использовать онлайн-инструмент AC Switch Simulator от STMicroelectronics, просто введя основные параметры ввода-вывода и вентиля.