Пару недель назад компания STMicroelectronics выпустила обновление своей программы MicroXplorer, которое позволило графически настроить инициализацию портов в конкретном STM32 под свои нужды, в том числе переназначить порты и визуально увидеть, что занято/свободно в данный момент.
Эта программа выглядела так:
И это позволяло получать на выходе файлы *.
c, *.
h, содержащие функции для инициализации портов в соответствии с заданными требованиями с использованием стандартной периферийной библиотеки.
Что вы решили изменить на этот раз? И на этот раз в эту утилиту ST решили добавить полноценную генерацию проектов для следующих сред:
- TrueSTUDIO 4.3.1
- МДК-АРМ 4.73
- ЭВАРМ 6.7
- GCC
Мы переименовали SPL в HAL (High Access Level), добавили Middle Wares (FreeRTOS, Fatfs от Chan, классы USB и т.д.), в программе теперь сразу доступен инструмент настройки рабочей частоты в виде графической утилиты, а не как раньше в файле Excel, а еще добавлен интересный инструмент, который они назвали Калькулятор энергопотребления, позволяющий примерно рассчитать энергопотребление МК в зависимости от условий и задач и примерно узнать, сколько времени он проработает на определенный тип источника питания.
Это были ложки меда.
А теперь ложка дегтя.
Программа имеет 2 типа поставки - автономная и в виде плагина для eclipse. Итак, оба эти варианта работают только под Windows. И функционально они ничем не отличаются друг от друга.
Заявленной поддержки GCC я не нашел, видимо она не реализована на данный момент, хотя файлы запуска GCC имеются в библиотеках, почему не сделали непонятно.
На данный момент полностью работоспособна только линия F4. UPD от 06.04.14: Добавлена поддержка F2.
Давайте рассмотрим, как работает программа, на конкретном простом примере:
После установки программы вам необходимо установить один доступный на данный момент пакет для STM32F4 в меню Help -> Install New Libraries.
Вот как выглядит начальное окно программы:
Как видите, доступных действий не так много.
Создадим новый проект:
Здесь выбираем нужную нам микросхему или подбираем ее по нужным параметрам в фильтре слева.
Спасибо ДЕХИКА за дополнения.
Вот как выглядит главный экран настройки контактов:
Здесь я выбрал SDIO (для работы с SD-картами), пару выводов АЦП, SPI, USART и несколько штатных выводов настроил вручную.
Стоит сказать, что для каждого варианта доступна масса возможностей настройки, поэтому все можно без проблем изменить по своему желанию.
Далее идет вкладка для работы с тактированием:
Если вы указали в конфигурации настройки внешнего кварца, то вы сможете ввести их значения.
Спасибо ДЕХИКА за дополнения.
Окно конфигурации:
Здесь, в зависимости от того, что мы выбрали, будут отображаться доступные настройки.
Как видите, в данном случае я выбрал, что буду использовать USB в качестве класса CDC (Com-порт), SD-карту и FATFS для работы с файловой системой на этой карте.
Отмечу, что вы можете нажать на каждую из кнопок и изменить множество доступных настроек, например, вот некоторые настройки, доступные для конфигурации USB:
и АЦП:
Следующая заметка не имеет никакого отношения к самому проекту и тому, что будет генерироваться, но может быть кому-то полезна для расчета энергопотребления того или иного устройства:
Здесь мы должны добавить в таблицу источники потребления, как часто они встречаются и другие параметры влияющие на потребление, это выглядит так:
Наконец, мы сгенерируем наш проект. Из списка поддерживаемых IDE у меня установлен только Keil, поэтому я выбрал его в конфигурации:
Конечно же, открываем и собираем:
Как видите, все открылось и собралось без каких-либо сложностей.
Заключение
Стоит сказать, что я конкретно не фанат систем генерации чего-либо.И для этого есть несколько причин.
Во-первых, генератор проектов не освобождает вас от чтения даташитов.
Напротив, если что-то работает не так, как вы ожидаете, вы будете долго и упорно искать проблему, не понимая природы ее возникновения.
Сам генератор может содержать ошибки, и все они успешно перенесутся в ваши проекты.
Во-вторых, такие вещи абстрагируют дизайнера от конкретного устройства, и вряд ли человек поймет, как работать с USB и почему происходит именно так, а не иначе только потому, что он воспользовался генератором проектов и успешно подтянул все библиотеки.
Что касается этого продукта, то стоит сказать, что он еще очень сырой, в нем нет поддержки непроприетарных IDE, STM32F0, F2, F3 и не-Windows платформ.
Но посмотреть стоит для общего развития; например, FATFS можно успешно использовать в ваших проектах.
В конечном итоге только вы решаете, что и как этим использовать.
Похожие материалы
1. Страница проекта STM32CubeMX 2. Увесистый мануал к программе 127 страниц 3. Прошивка с помощью HAL и Middle Wars , для тех кому просто нужны библиотеки без генератора 4. Сгенерированный проект Теги: #stm32 #генератор кода #stm32cubemx #stm32cubemx #stm32cubemx #Программирование микроконтроллера-
Найдите Для Себя Подходящие Игры Stick Man!
19 Dec, 24 -
Ruvds Запускает Партнерскую Программу
19 Dec, 24 -
Гомер – Новый Шифр Гомофонной Замены
19 Dec, 24 -
Экскурсия На Атомный Ледокол-Музей «Ленин».
19 Dec, 24 -
«Левша» Вышел С Твердотельными Накопителями
19 Dec, 24 -
Обновление Плагина Mctube
19 Dec, 24