Фильтр по тематике

Современные 32-разрядные ARM серии STM32: программный инструмент STM Studio

В статье приведено описание программного инструмента STM Studio для мониторинга и визуализации переменных кода программы микроконтроллеров серии STM32 от компании STMicroelectronics.
10.10.2017 1318 0
Современные 32-разрядные ARM серии STM32: программный инструмент STM Studio

Введение

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

Для реализации такого наблюдения, называемого мониторингом, применяют различные аппаратные отладчики в комплексе со специальными программами. Как правило, эти средства стоят довольно дорого и не всем доступны. Альтернативой данных средств может послужить бесплатный программный продукт компании STMicroelectronics [1], позволяющий следить за изменением любой переменой программы микроконтроллера и визуализировать её значения в виде графика на экране монитора компьютера в реальном масштабе времени.

Установка программы STM Studio

Программа STM Studio может работать с несколькими стандартизованными и доступными отладчиками микроконтроллеров. Одним из наиболее распространённых отладчиков является ST-Link SWD, входящий в состав популярной и недорогой отладочной демонстрационной платы STM32VLDISCOVERY для микроконтроллеров серии STM32.

Программа STM Studio устанавливается на компьютер с операционной системой Windows XP, Windows Vista или Windows 7. Для использования программы STM Studio на компьютере, необходимо загрузить её с источника [2] и выполнить стандартную установку. После установки данной программы на рабочем столе компьютера появится соответствующий ярлык.

Программа STM Studio разработана на базе Java и для своей работы требует наличия установленной программы java runtime environment, которую можно загрузить с источника [3].

Пример использования программы

Рассмотрим работу программы STM Studio на конкретном примере. Для этого будем использовать демонстрационную плату STM32VLDISCOVERY и небольшую программу для микроконтроллера STM32, содержащую переменную, регулярно изменяющую своё числовое значение.

Демонстрационная плата STM32VLDISCOVERY подключается к компьютеру с помощью интерфейса USB. В листинге приведён пример простой программы для микроконтроллера:

#include «stm32f10x.h»
// Функция программной задержки
void delay(void)
{
volatile uint32_t j, i;
for (j=0; j!=5000; j++) i++;
}
// Главный модуль программы
int main(void)
{
uint8_t n=0;
while(1) // Бесконечный цикл
 {
 n=n+1;
 delay();
 } // Конец цикла
} // Конец программы


В этой программе в основном цикле производится регулярное увеличение переменной «n» на единицу. Данную программу необходимо транслировать, например, в среде разработки Keil, с целью получения загрузочного файла для отладочной демонстрационной платы STM32VLDISCOVERY и служебного файла с расширением ELF, содержащего адреса переменных, используемых в программе. Загрузочный файл необходимо загрузить в отладочную плату STM32VLDISCOVERY.

В STM Studio имеется два способа добавить переменную для наблюдения за ней. Первый способ позволяет вручную создать переменную, указав адрес её расположения и тип данных. Адрес переменной можно узнать с помощью отладчика среды разработки. Второй способ позволяет добавить переменную импортированием из служебного файла, например, с расширением ELF. Воспользуемся вторым способом.

После установки и запуска программы STM Studio на экране монитора откроется главное окно программы (см. рис. 1).

В этом окне необходимо с помощью раскрывающего списка выбрать интерфейс отладчика ST-Link SWD. Затем потребуется импортировать адрес переменной «n», используемой в программе микроконтроллера, из подготовленного ранее служебного файла с расширением ELF. Для этого следует с помощью меню File -> Import variable открыть окно (см. рис. 2).

В этом окне необходимо нажать ниже строки Executable file программную кнопку выбора файла «…» и найти на компьютере подготовленный ранее файл с расширением ELF. После выбора файла и нажатия программной кнопки Select executable file в появившемся списке переменных следует выбрать интересующую переменную и нажать программную кнопку Import. После чего выбранная переменная окажется в списке для отображения на графике.

Теперь остаётся только задать тип переменной (для нашего случая «unsigned 8-bit») и цвет отображаемого графика.

Период обновления графика и формат данных, используемых в программе STM Studio, задаются в окне, открываемом с помощью меню Options -> Acquisition settings (см. рис. 3).

Здесь необходимо задать Word-variables format как Little endian (STM32 default) и установить желаемый период обновления графика.

Последней операцией будет запуск построения графика через меню Run -> Start или программной кнопкой с зелёным треугольником. Эта же кнопка используется для останова построения графика.

Масштаб отображаемого графика можно изменять с помощью колёсика манипулятора мыши.

В нашем примере переменная «n» будет регулярно изменять своё значение от 0 до 255, что приведёт к построению графика на экране монитора в виде пилы.

С помощью программы STM Studio можно отображать графики нескольких переменных одновременно. Для этого нужно будет добавить новые переменные в программу, заново транслировать её, записать в отладочную плату и импортировать новые переменные, как описано выше.

Таким образом, можно будет наблюдать на экране монитора графическое изменение переменных относительно друг друга.

Литература

Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

10.10.2017 1318 0
Комментарии
Рекомендуем
К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 6. Возбуждение плазмонов с помощью света и поверхностный плазмонный резонанс Наука и техника

К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 6. Возбуждение плазмонов с помощью света и поверхностный плазмонный резонанс

Продолжаем серию статей о научном наследии Игоря Тамма. Основная идея этой серии заключается в том, чтобы показать, как постепенно шаг за шагом развивались научные идеи, высказанные Игорем Таммом почти сто лет назад. В этой статье мы остановимся на истории открытия поверхностных плазмон-поляритонов (Surface Plasmon Polariton – SPP), а также эффекта поверхностного плазмонного резонанса (Surface Plasmon Resonance – SPR). Сегодня эти явления используются при разработке новейших сверхбыстрых электронно-оптических устройств и прецизионных ППР-сенсоров, позволяющих обнаруживать как органические, так и неорганические микропримеси в самых различных образцах.
24.09.2026 СЭ №7/2026 248 0
Интеграция ИИ в электронные системы для специальных задач. Новые способы дистанционного контроля с помощью РЭА Электроника и автоматизация

Интеграция ИИ в электронные системы для специальных задач. Новые способы дистанционного контроля с помощью РЭА

До широкого применения методов искусственного интеллекта для обработки слабых и зашумлённых сигналов использовались аналоговые и цифровые методы, включая усиление, фильтрацию, демодуляцию и аналого-цифровое преобразование. С развитием методов машинного обучения и генеративных моделей появились дополнительные возможности для восстановления и повышения разборчивости сигналов, содержащих полезную информацию. В статье рассмотрены два подхода к получению информации с использованием электронных средств: регистрация акустических вибраций и анализ отражённых радиосигналов различных частот в жилых помещениях. Также рассмотрены особенности соответствующих методов обработки сигналов и ограничения их применения.
23.09.2026 СЭ №7/2026 259 2

Реклама: ИнСАТ партнёр и дистрибьютор Атомик Софт
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjeFzYkB
Реклама: ИнСАТ партнёр и дистрибьютор Атомик Софт (мобильная версия)
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjeo8HfR
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться