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

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

В статье приведено описание программного инструмента STM Studio для мониторинга и визуализации переменных кода программы микроконтроллеров серии STM32 от компании STMicroelectronics.
10.10.2017 1419 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 1419 0
Комментарии
Рекомендуем
Проверяемое автономное управление: архитектура контроля решений ИИ в киберфизических и распределённых системах Электроника и автоматизация

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

В статье рассматривается архитектура SEACS (Self-Evolving Autonomous Control System), предназначенная для построения проверяемого контура автономного управления в распределённых и киберфизических системах. В отличие от подходов, где успешный вызов модели или выполнение команды трактуется как завершение задачи, SEACS разделяет наблюдение, оценку состояния, выбор решения, исполнение и последующую проверку фактического результата. Рассматриваются механизмы управления риском и доверием, гистерезиса, задержки повторных воздействий, резервных сценариев и передачи решения человеку. Отдельное внимание уделено воспроизводимым испытаниям, требованиям к данным и метрикам, а также ограничениям исследовательского прототипа.
30.10.2026 СЭ №8/2026 285 0
К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 7. Оптические уровни  и плазмон-поляритоны Тамма Электроника и автоматизация

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

Эта статья завершает серию публикаций о научном наследии Игоря Тамма, в которой была проанализирована эволюция идей Тамма и его учеников от 1930-х годов до наших дней. Среди различных направлений, которыми в различные периоды своей жизни занимался Игорь Тамм, мы остановились на тематике, связанной с взаимодействием света с электронами на границе металла и диэлектрика. Данное направление, начавшееся с разработки теории «таммовских поверхностных состояний», логически продолжилось открытием оптических состояний Тамма (Optical Tamm States – OTS), а затем плазмон-поляритонов Тамма (Tamm Plasmon-Polaritons – TPP). Именно этим двум явлениям посвящена настоящая статья.
28.10.2026 СЭ №8/2026 335 0

Реклама
Реклама.  ООО «Остек-СМТ»  ИНН 7731481045  erid = 2SDnjchs19E
Реклама
Реклама.  ООО «Остек-СМТ»  ИНН 7731481045  erid = 2SDnjdHxidA
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться