Как быстро начать разработку для STM32 с использованием бесплатной среды CooCox CoIDE. Какие преимущества дает эта среда для новичков. Как настроить среду и создать первый проект для мигания светодиодом на отладочной плате STM32VLDiscovery. Какие дополнительные возможности предоставляет CooCox CoIDE для работы с микроконтроллерами STM32.
Преимущества среды CooCox CoIDE для разработки под STM32
CooCox CoIDE — это бесплатная интегрированная среда разработки для микроконтроллеров, основанная на популярной платформе Eclipse. Она обладает рядом важных преимуществ для начинающих разработчиков STM32:
- Полностью бесплатна, в отличие от коммерческих сред вроде IAR или Keil
- Проста в освоении и настройке
- Имеет встроенную поддержку отладчика ST-Link
- Позволяет быстро начать разработку, используя готовые примеры
- Поддерживает широкий спектр микроконтроллеров помимо STM32
Благодаря этим особенностям, CooCox CoIDE позволяет новичкам уже через 10-15 минут после установки запустить первую программу на отладочной плате STM32. Это делает ее отличным выбором для знакомства с архитектурой ARM Cortex-M и микроконтроллерами STM32.
Установка и настройка CooCox CoIDE
Процесс установки и настройки среды достаточно прост:
- Скачайте установщик CooCox CoIDE с официального сайта (требуется простая бесплатная регистрация)
- Запустите установку и следуйте инструкциям мастера
- После установки запустите CoIDE
- Скачайте и установите компилятор GCC для ARM с сайта GNU Tools for ARM Embedded Processors
- В настройках CoIDE укажите путь к установленному GCC
На этом базовая настройка среды завершена и можно приступать к созданию проектов.
Создание первого проекта в CooCox CoIDE
Рассмотрим процесс создания простейшего проекта для мигания светодиодом на отладочной плате STM32VLDiscovery:
- В стартовом окне выберите производителя микроконтроллера (ST)
- Выберите конкретную модель микроконтроллера (STM32F100RBT6B)
- На шаге выбора библиотек включите библиотеку GPIO
- CoIDE предложит создать новый проект — согласитесь и укажите имя проекта
- В разделе примеров найдите пример GPIO_Blink
- Скопируйте код примера в файл main.c, заменив функцию GPIO_Blink на main
- Скомпилируйте проект (F7 или Project -> Build)
- Подключите плату STM32VLDiscovery по USB
- В настройках отладчика выберите ST-Link
- Прошейте микроконтроллер (Flash -> Program Download)
После этих шагов на плате должен начать мигать светодиод. Таким образом, буквально за 10-15 минут мы создали и запустили первый проект для STM32.
Дополнительные возможности CooCox CoIDE
Помимо базовой функциональности, CooCox CoIDE предоставляет ряд полезных возможностей для разработки:
- Встроенные примеры кода для различных периферийных модулей
- Возможность добавлять собственные примеры
- Поддержка отладки через ST-Link
- Интеграция с системами контроля версий
- Удобный менеджер библиотек и зависимостей
- Поддержка плагинов для расширения функциональности
Все это делает CooCox CoIDE мощным инструментом не только для начинающих, но и для более опытных разработчиков.
Особенности архитектуры микроконтроллеров STM32
Микроконтроллеры семейства STM32 основаны на ядрах ARM Cortex-M различных серий. Рассмотрим ключевые особенности этой архитектуры:
- 32-битное RISC-ядро с высокой производительностью
- Гарвардская архитектура (раздельная память для кода и данных)
- Аппаратное умножение и деление
- Поддержка прерываний с малой задержкой
- Встроенный отладочный интерфейс SWD/JTAG
- Режимы пониженного энергопотребления
- Широкий выбор периферийных модулей
Эти особенности обеспечивают высокую производительность и гибкость микроконтроллеров STM32, делая их популярным выбором для различных встраиваемых систем.
Отладочная плата STM32VLDiscovery
STM32VLDiscovery — одна из самых доступных отладочных плат для знакомства с микроконтроллерами STM32. Она обладает следующими особенностями:
- Микроконтроллер STM32F100RBT6B (семейство Value Line)
- Встроенный программатор/отладчик ST-Link/V2
- USB-интерфейс для подключения к ПК
- Два пользовательских светодиода
- Пользовательская кнопка
- Выведенные контакты микроконтроллера для подключения периферии
Благодаря наличию встроенного отладчика, плата не требует дополнительного оборудования для программирования и отладки. Это делает ее отличным выбором для быстрого старта разработки.
Структура проекта в CooCox CoIDE
При создании нового проекта CooCox CoIDE автоматически формирует базовую структуру:
- cmsis — библиотеки CMSIS для работы с ядром Cortex-M
- stm32f10x_conf.h — конфигурационный файл для библиотек STM32
- startup — файлы инициализации микроконтроллера
- main.c — основной файл с кодом программы
- stm32f10x.h — заголовочный файл с описанием регистров микроконтроллера
Такая структура обеспечивает удобную организацию кода и позволяет легко добавлять новые модули в проект.
Основные этапы разработки проекта для STM32
Процесс разработки типового проекта для STM32 обычно включает следующие этапы:
- Создание нового проекта в CooCox CoIDE
- Настройка параметров проекта (модель МК, частота тактирования и т.д.)
- Подключение необходимых библиотек периферии
- Написание кода инициализации периферийных модулей
- Реализация основной логики работы программы
- Компиляция проекта
- Прошивка микроконтроллера
- Отладка с использованием встроенных инструментов CoIDE
CooCox CoIDE предоставляет удобные инструменты для каждого из этих этапов, упрощая процесс разработки.
Отладка проектов STM32 в CooCox CoIDE
Среда CooCox CoIDE предоставляет широкие возможности для отладки проектов STM32:
- Пошаговое выполнение кода
- Установка точек останова
- Просмотр и изменение значений переменных
- Мониторинг регистров микроконтроллера
- Отображение стека вызовов
- Профилирование производительности
Для использования этих возможностей достаточно подключить плату с поддержкой ST-Link и запустить отладку через меню Debug или нажатием Ctrl+F5. Это позволяет эффективно находить и исправлять ошибки в программе.
Оптимизация кода для микроконтроллеров STM32
При разработке для микроконтроллеров важно учитывать ограничения по ресурсам и оптимизировать код. Вот несколько рекомендаций:
- Используйте встроенные аппаратные возможности (DMA, таймеры и т.д.)
- Избегайте динамического выделения памяти
- Применяйте битовые операции вместо арифметических, где это возможно
- Используйте inline-функции для критичного по скорости кода
- Оптимизируйте использование стека
- Правильно настраивайте режимы энергосбережения
CooCox CoIDE предоставляет инструменты для анализа размера кода и производительности, что помогает в оптимизации.
Работа с периферийными модулями STM32
Микроконтроллеры STM32 обладают богатым набором периферийных модулей. Вот краткий обзор основных из них:
- GPIO — порты ввода-вывода общего назначения
- USART/UART — последовательные интерфейсы
- SPI — интерфейс для работы с внешними устройствами
- I2C — двухпроводной интерфейс для подключения датчиков
- ADC — аналого-цифровой преобразователь
- DAC — цифро-аналоговый преобразователь
- Таймеры — для точного отсчета временных интервалов
- DMA — контроллер прямого доступа к памяти
CooCox CoIDE предоставляет библиотеки и примеры для работы с каждым из этих модулей, что упрощает их использование в проектах.
Заключение
CooCox CoIDE представляет собой мощный и удобный инструмент для разработки под микроконтроллеры STM32. Благодаря своей бесплатности, простоте освоения и широким возможностям, эта среда отлично подходит как для начинающих, так и для опытных разработчиков. Использование CooCox CoIDE в сочетании с доступными отладочными платами вроде STM32VLDiscovery позволяет быстро начать изучение архитектуры ARM Cortex-M и создание проектов на базе STM32.
Освоение микроконтроллеров STM32 открывает широкие возможности для создания сложных встраиваемых систем. Высокая производительность, богатый набор периферии и доступность этих микроконтроллеров делает их отличным выбором для различных применений — от простых устройств до сложных систем управления. А удобные средства разработки вроде CooCox CoIDE позволяют сосредоточиться на решении прикладных задач, не тратя время на борьбу с инструментарием.
Бесплатные инструменты разработчика для микроконтроллеров STM32, рекомендуемые STMicroelectronics
Выбор микроконтроллера STM32 от компании STMicroelectronics, одного из лидеров в области производства полупроводников и предлагающего решения по всему спектру электронных приложений, является самым простым путем для инноваторов, с целью выпустить новые продукты. Сегодня у разработчиков есть широкий выбор бесплатных интегрированных сред разработки (IDE) для микроконтроллеров STM32.
Пользователи STM32 могут выбирать из трех IDE от ведущих производителей, являющихся бесплатными и созданными в тесном сотрудничестве с STMicroelectronics. Можно рассматривать альтернативы между основанными на Eclipse средами разработки, такими как CooCox CoIDE или Ac6 System Workbench для STM32, а также средой Keil MDK-ARM. Они не имеют ограничений на размеры кода, поддерживаются все необходимые для STM32 конфигурационные файлы и прошивки, также как и интуитивное аппаратное обеспечение, такое как платы STM32 Nucleo или комплекты Diskovery Kit, используемые для отладки и проектирования.
Ac6 System Workbench для STM32 и CooCox IDE поддерживают все устройства STM32, в основе которых лежат ядра ARM Cotex-M0, M0+, M3 и M4. Бесплатная среда Keil MDK-ARM для STM32 помогает перейти от устаревшей 8-битной архитектуры к 32-битной разработке Cortex, поддерживая серии STM32F0 и STM32L0, включающих Cortex-M0 и M0+ без каких-либо ограничений.
Все три среды разработки могут работать на платформах Windows. Заявлено, что Ac6 System Workbench в 2015 станет доступна для ОС Linux и Mac OS X. Производители IDE обеспечивают техническую поддержку и постоянные обновления для пользователей.
Эти инструменты могут быть загружены абсолютно бесплатно с сайтов производителей:
Результаты опроса среди разработчиков STM32:
Как видно из результатов опроса, наиболее часто разработчики используют Keil MDK-ARM, которая в бесплатной версии имеет ограничение на длину кода в 32 килобайта для микроконтроллеров серий выше чем STM32F0 и STM32L0. Полностью бесплатную CoIDE китайской фирмы CooCox занимает почетное второе место в этом рейтинге.
Для Mac OS X, а это именно та операционка в которой я в основном работаю, я попробовал установить связку редактор кода Eclipse + компилятор GCC ARM + OpenOCD для прошивки и отладки. Потратив несколько дней, но так пока и не поняв, как работать с отладчиком OpenOCD, я решил попробовать более простой вариант и сделал свой выбор в пользу CoIDE, хотя версия только для Windows долго не давала мне принять это решение. Свои эксперименты пока я буду проводить и описывать, используя именно эту IDE. Возможно, чуть позже я опять вернусь к связке Eclipse + GCC ARM + OpenOCD, либо дождусь когда появится версия Ac6 System Workbench для MacOS X и попробую ее.
Еще по этой теме
Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.
STM32: Настройка тактирования контроллера в среде CooCox — Программирование микроконтроллеров STM32 — Каталог статей
Эта статья расскажет новичку где и что нужно поправить чтобы ваша программа написанная в среде CooCox работала с той скоростью с которой было задумано 🙂
Микроконтроллеры STM32 имеют гибко настраиваемую систему тактирования, причем тактируется не только сам процессор микроконтроллера, но и остальные модули (SPI, DAC, ADC, DMA, таймеры и так далее).
Естественно что все тактовые сигналы выделяются от одного или нескольких генераторов..
У микроконтроллеров STM32 есть 2 внутренних генератора и есть возможность подключить 2 внешних !
Задумались ? 🙂
первоначально микроконтроллер STM32 стартует на одном из внутренних генераторов, обычно он обозначается HSI и имеет тактовую частоту порядка 8 мгц. Все бы ничего, но он имеет низкую стабильность, поэтому используется только как стартовый (микроконтроллер всегда стартует с его тактом !) и резервный — если например внешний так пропадет — то микроконтроллер переключиться на внутренний генератор..
Дополнительно к внутреннему генератору HSI ставят внешний, как правило, кварцевый генератор — который имеет очень высокие показатели стабильности частоты.. Внешний генератор обозначается буквами HSE
Вот из-за того что генератор внешний и возникает необходимость правок в конфигурационных файлах..
о тактировании микроконтроллеров STM32 можно почитать в соответствующих разделах документации, минимально нам нужно знать что исходную частоту генератора (HSI или HSE или другого) микроконтроллер может как понижать (делением частоты) так и повышать (умножением).
Например контроллер STM32F407 установленный на плате STM32F4Discovery работает на частоте 168 мгц, а в качестве внешнего генератора используется кварц всего на 8 мгц !! Для того чтобы получить нужную частоту микроконтроллер частоту кварца делит на 8 (получает частоту 1 мгц) и потом умножает на 336, чтобы позже поделить на 2 и получить 168 мгц такта..
Но среда проектирования (причем не важно будет ли это CooCox или Keil, или еще какая) — не знает какой кварц мы используем — и использует какой то из выбранных ее разработчиками набор делителей — поэтому не только можно, но и нужно проверять какие настройки тактирования используются в проекте
в среде CooCox — создаем проект (выбираем Create Project)
указываем имя проекта и путь для сохранения
далее идет выбор что мы будем указывать: микроконтроллер или отладочную плату, я выбираю по микроконтроллеру:
и выбираю тип микроконтроллера
как видите на моей отладочной плате контроллер серии STM32F4IG (176 ног, мегабайт флеш, 196 кб озу),
и подтверждаем выбор нажатием кнопки Finish
в репозитарии выберем стандартные библиотеки (которых достаточно чтобы сделать мигалку светодиодами)
и теперь обращаем внимание на окно Project в левом нижнем углу в котором показаны все библиотеки нашего проекта, куда будут добавляться другие библиотеки и наши самописные модули
в списке файлов нас интересует файл system_stm32f4xx.c в котором и производиться настройка тактирования
поизучав его вы без труда найдете на какой кварцевый генератор рассчитывал разработчик среды по умолчанию
поскольку например в моей плате стоит кварц на 8 мгц, я правлю стартовый скрипт под себя, причем изменить нужно буквально одну цифру — тот самый делитель, который должен таким образом поделить частоту тактового генератора чтобы получилась частота 1 мгц
выделенный делитель на 25 для кварца в 8 мгц несколько великоват, поэтому я его исправляю на 8
в принципе вот и все что нужно сделать..
но на всякий случай, в модуль main.c программы я еще добавляю определение в котором указывается частота кварцевого генератора — это необходимо если вы используете сторонние библиотеки которые это значение по тем или иным причинам может интересовать
выглядит это вот так
вызов SystemInit() настраивает тактирование микроконтроллера согласно произведенных нами настроек
Теперь Вы знаете как задавать тактирование вашего микроконтроллера и ваши программы будут работать на той скорости что вы задумали и даже возможно чуточку быстрее (так например STM32F407 установленная в STM32F4Discovery у меня завелась на частоте 240 мгц (вместо паспортных 168) :-)) Однако играя не переборщите, большая частота всегда влечет за собой больших нагрев и может даже вывести из строя ваш микроконтроллер…
Никаких вложений к этой статье не планировалось, так что и не ищите 🙂
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
Alex_EXE » STM32. 1. Вступление
Приходит время, и 8-ми битных контроллеров уже перестаёт хватать для реализации своих проектов и воплощения идей в реальность. Приходит время, и стоит задуматься, чтобы сделать следующий шаг и перейти на новый уровень. Пришло время для начала изучения контроллера с ARM архитектурой ядра.
ARM контроллер STM32
Сразу скажу, что если Вы только начинаете изучать контроллеры, то не советую начинать с 32-битных контроллеров, гораздо проще и быстрее (в планах конфигурации, программирования, схемотехники, разводки…) начать с 8-ми битных контроллеров, с которыми на порядок проще работать. А кому-то вообще Arduino хватит за глаза. Но если с атмегами и пиками (или с чем там дело имели) уже наигрались или они перестали справляться с поставленными задачами – то милости просим.
В своих проектах уже не раз начал упираться в планку PIC контроллера (начал с них, поэтому их лучше знаю и больше предпочтения в своих проектах отдаю им): то памяти мало, то стек израсходован, то чего-то не хватает… Можно конечно выбирать более мощный и нашпигованный контроллер, и зачастую так поступаю, но у всего есть конец, и рано или поздно мне уже не хватит мощности, периферии…, а этажерки городить не очень охота, да и неправильно. В общем, пора переходить на новую ступень.
Давно этим хотел заняться, но время нашлось только сейчас. И некоторые свои потуги буду описывать здесь.
Сейчас на рынке есть множество фирм выпускающих контроллеры с ядром ARM, своё внимание остановил на получившем большое распространение продукции от ST Microelectronics. Очень большой плюс в их сторону, что они выпустили доступный инструмент начального уровня для ознакомления со своими камушками, речь конечно идёт о всем известной серии демонстрационных плат Discovery.
STM32-Discovery
Такой шаг очень своевременен и приятен, т.к. в отличие от 8-ми битников STM32 не выпускаются в DIP’е и, как новая (для меня и скорее всего для Вас) архитектура, может таить подводные камни на этапах ознакомления с ней, а готовая и заведомо рабочая плата избавляет от схемотехнических ошибок при знакомстве. Плюс на плате есть встроенный программатор – ST-Link, который можно использовать не только для программирования установленного контроллера. Да и материала в глобальной паутине по ним уже хватает.
Ещё один очень большой плюс для перехода на ARM – это их стоимость, сравнимая, а точнее даже более доступная, чем у 8-ми битных контроллеров с большим числом выводов и периферией. В том время, когда даже в самых простых ARM’ах есть много всего, при превосходящей вычислительной мощности. Оговорюсь, что для каждой задачи лучше подбирать свой камень: если нужно подергать ножкой и опросить датчик, то гораздо проще и дешевле будет взять самый примитивный 8-ми битник, а не брать 100 выводной (ну 48-ми), трудно паяемый, конфигурируемый и программируемый микропроцессор.
KEIL
В качестве среды для работы буду применять Keil uVision4 в демонстрационном режиме, т.к. у меня нет возможности и желания отдавать 2500 евро за полноценную среду. Ограничение демонстрационной версии заключается в ограничении размера прошивки в 32Кбайта, чего для обучения будет достаточно. Поначалу начну с самой простой демоплаты — STM32vlDiscovery, а дальше посмотрим.
STM32vlDiscovery
Для наглядности, с чем будем работать, и что бы было, добавляю схему включения STM32F100RBT6B на демоплате STM32vlDiscovery, взятую из даташита к ней.
Схема включения МК на STM32vlDiscovery
Первым делом скачиваем и установим среду с офф. сайта – перейти . И переходим к созданию первого проекта –
STM32. 2. Первый проект .
Статья обновлена 31.05.2014
Alex_EXE | 07.08.2013 | STM32 |
STM32 простой и быстрый старт с CooCox CoIDE
В данной статье я хотел бы рассказать о начале работы с микроконтроллерами STM32 в бесплатной среде CoIDE, которая основана на Eclipse. В отличии от IAR и других сред разработки, CooCox CoIDE бесплатна и проста в освоении, а также содержит встроенный отладчик ST-Link, что позволяет начинающим изучать STM32 уже через 10 минут заставить вашу плату помигать светодиодом. Если вы ещё незнакомы с серией STM32, то рекомендую почитать трилогию об архитектуре STM32, особенностях программирования и прочую полезную информацию.
В качестве STM32 использовалась отладочная плата STM32VLDiscovery доставшаяся нахаляву от фирмы STMicroelectronics с процессором STM32F100RBT6B на борту:
Итак приступим. Идем на официальный сайт CooCox и качаем последнюю версию CooCox CoIDE. Для скачивания необходимо зарегистрироваться, регистрация простая и бесплатная. Затем инсталлируем скачанный файл и запускаем.
CooCox CoIDE — среда разработки, на базе Eclipse, которая помимо STM32 поддерживает кучу других семейств микроконтроллеров: Freescale, Holtek, NXP, Nuvoton, TI, Atmel SAM, Energy Micro и др. С каждой новой версией 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.
Загрузка программного обеспечения CooCox | SourceForge.net
- Присоединиться / Войти
- Программное обеспечение с открытым исходным кодом
- Программное обеспечение для бизнеса
- Блог
- Около
- Справка
- Подключить
- Конфиденциальность
- Подробнее
- Статьи
- Создать
- Самые популярные проекты
- Сделки
- Статус объекта
- @sfnet_ops
- @sourceforge
- Документация сайта
- Запрос поддержки
- Условия
- Отказаться
- Объявить
- Бухгалтерский учет
- CRM
- Бизнес-аналитика канадских долларов
- PLM
- ударов в минуту
- Управление проектами
- Управление знаниями
- Развитие
- Продажа
- Электронная торговля
- ERP
- HR
- Управление ИТ
- ИТ-безопасность
- Офис
- Наука и инженерия
- Игры
- Все программное обеспечение
- CRM
CRM
Обслуживание клиентов Опыт работы с клиентами Торговая точка Ведущее управление Управление событиями Опрос - Финансы
Финансы
Бухгалтерский учет Выставление счетов и выставление счетов Бюджетирование Процесс оплаты Отчет о затратах - Разработка приложения
Разработка приложений
Управление жизненным циклом приложений Интеграция Разработка с низким кодом Разработка без кода Разработка мобильных приложений Управление тестированием UX - Аналитика
Аналитика
Большие данные Бизнес-аналитика Прогностическая аналитика Составление отчетов - Сотрудничество
Сотрудничество
Сотрудничество в команде Управление идеями Веб-конференции Инструменты общения сотрудников Совместное использование экрана CAD Вебинар - Связь
Связь
Бизнес VoIP Колл-центр Запись звонков Отслеживание звонков IVR Предиктивный дозвонщик Телефония - Маркетинг
Маркетинг
Управление торговой маркой Управление кампанией Управление цифровыми активами Рекламная рассылка Ведущее поколение Автоматизация маркетинга SEO Цифровые вывески Платформы виртуальных мероприятий - Продажи
Продажа
Автоматизация отдела продаж Аналитика продаж Внутри продаж Возможность продаж Вовлечение продаж Управление контактами CPQ - Управление операциями
Управление операциями
ERP PLM управление бизнес-процессами Управление EHS Управление цепочками поставок электронная коммерция Управление качеством CMMS Производство Соблюдение - HR
HR
Обратная связь на 360 градусов Управление человеческими ресурсами Вовлечения сотрудников Отслеживание кандидатов Часы времени Управление персоналом Рекрутинг Оценка производительности Тренировка Мониторинг сотрудников - IT менеджмент
Управление ИТ
Управление производительностью приложений Управление ИТ-активами Управление базами данных Сетевой мониторинг Служба поддержки Отслеживание проблем DevOps Удаленный рабочий стол Удаленная поддержка - Безопасность
Безопасность
IT безопасность Endpoint Protection Управление идентификацией Сетевая безопасность Безопасность электронной почты Управление рисками - Управление проектом
Управление проектами
Система управления контентом (CMS) Управление задачами Управление портфелем проектов Отслеживание времени PDF - Образование
Образование
Системы управления обучением Платформы обучения Виртуальный класс Разработка курса Администрация школы Информационные системы для студентов - Все программное обеспечение
- Блог
- Статьи
- Сделки
- Справка
- Создать
- Присоединяйтесь к
- Войти
coocox скачать | SourceForge.нетто
Полное имя
Телефонный номер
Название работы
Промышленность
Компания
Размер компании Размер компании: 1 — 2526 — 99100 — 499500 — 9991,000 — 4,9995,000 — 9,99910,000 — 19,99920,000 или более
Получайте уведомления об обновлениях для этого проекта.Получите информационный бюллетень SourceForge. Получайте информационные бюллетени и уведомления с новостями сайта, специальными предложениями и эксклюзивными скидками на ИТ-продукты и услуги.Да, также присылайте мне специальные предложения о продуктах и услугах, касающихся:
Программное обеспечение для бизнеса Программное обеспечение с открытым исходным кодом Информационные технологии Программирование ОборудованиеВы можете связаться со мной через:
Электронная почта (обязательно) Телефон SMS Я согласен получать эти сообщения от SourceForge.сеть. Я понимаю, что могу отозвать свое согласие в любое время. Пожалуйста, обратитесь к нашим Условиям использования и Политике конфиденциальности или свяжитесь с нами для получения более подробной информации. Я согласен получать эти сообщения от SourceForge.net указанными выше способами. Я понимаю, что могу отозвать свое согласие в любое время. Пожалуйста, обратитесь к нашим Условиям использования и Политике конфиденциальности или свяжитесь с нами для получения более подробной информации.Для этой формы требуется JavaScript.
ПодписывайсяКажется, у вас отключен CSS.Пожалуйста, не заполняйте это поле.
Кажется, у вас отключен CSS. Пожалуйста, не заполняйте это поле.
Вопрос № 206989: Вопросы: GNU Arm Embedded Toolchain
Я установил каталог toolchain для GNU ARM в Coocox и сконфигурировал проект.
Вот ошибка, которую я получаю при сборке.
Кто-нибудь может помочь с основной причиной ошибки?
спасибо,
амин
: STM32F407ZG
Отладчик: ST-link V2
=======
GCC HOME: C: \ Program Files (x86) \ GNU Tools ARM Embedded \ 4.6 2012q2 \ bin
компиляция:
[mkdir] Созданный каталог: C: \ CooCox \
[mkdir] Созданный каталог: C: \ CooCox \
[cc] Всего нужно скомпилировать 6 файлов.
[cc] arm-none-eabi-gcc -mcpu = cortex-m4 -mfpu = fpv4-sp-d16 -mfloat-abi = softfp -mthumb -Wall -ffunction-section -O0 -g -c -DSTM32F407ZG -IC: \ CooCox \
[cc] В файле, включенном из C: \ CooCox \
[cc] C: \ CooCox \
[cc] из C: \ CooCox \
[cc] компиляция прекращена.
[cc] В файле, включенном из C: \ CooCox \
[cc] из C: \ CooCox \
[cc] C: \ CooCox \
[cc] компиляция прекращена.
[cc] В файле, включенном из C: \ CooCox \
[cc] C: \ CooCox \
[cc] компиляция прекращена.
[cc] C: \ CooCox \