Введение
STM32CubeMonitor — утилита для удобного отображения данных с контроллеров семейства STM32. Причем не требуется никакого дополнительного оборудования, только плата с контроллером и программатор (я пробовал и китайский свисток и оригинальный st-link\v2). Слово «Cube» в название не означает привязку к
Начало работы
Стоит убедиться, что программатор подключен, контроллер запитан, а прошивка залита, так же рекомендуется обновить ПО самого программатора до последней версии.
Данную утилиту можно скачать по ссылке. Устанавливаем, запускаем и видим окно программы.
Чтобы разобраться, предлагаю очистить рабочую область и добавлять\настраивать компоненты по порядку.
- Первое что потребуется (acq in\acq out) это компоненты непосредственно отвечающие за ввод\вывод информации с контроллера. 2 ЛКМ по (acq in) настраиваем Probe (выбрать ваш программатор) и Name (на свой вкус, у меня myProbe_In), таким же образом настраиваем (acq out).
- Далее нам потребуется компонент variables. Для него надо задать:
Group Name (my_Variables) и настроить конфигурацию Executable: задать Name, Folder путь к папке с прошивкой, File выбрать файл из списка. В Таблице Variable List выбрать нужные переменные и нажать кнопку Update
Настройка конфигурации
- После этого добавляем компонент processing, настраиваем Group Name тут будет то же самое что и в компоненте variables. В поле Outputs появятся переменные, которые вы выбрали для мониторинга. Внизу есть панель Post-processing, она позволяет настроить обработку данных при помощи различных встроенных функций.
- Следующий шаг: добавить кнопки button управления процессом обмена данных (start\stop) и кнопку очистки графика (clear). Кнопкам надо задать Label (на свой вкус) и Topic (start, stop и clear соответственно),
без указания Topic ничего работать не будет.
- Далее добавляем компонент chart, у меня задаём Group, остальное можно оставить без изменений. Комбинация клавиш Ctrl+Space открывает панель с информацией о компоненте, где можно ознакомиться с описанием каждого свойства.
- На последнем шаге соединяем компоненты, как показано на картинке, нажимаем кнопку DEPLOY, видим зеленые индикаторы под ключевыми компонентами, означающие, что всё заработало и нажимаем DASHBOARD.
Соединение
В появившемся окне нажимаем кнопку start и наслаждаемся визуальным представлением получаемых данных.
Заключение
Вот так легко и просто можно получить наглядное представление данных из контроллера. Хочу обратить внимание, что в программе есть ещё много компонентов, я рассмотрел необходимый минимум. Эта публикация не претендует на туториал, я всего лишь хочу обратить внимание близких к теме людей на новый инструмент.
Спасибо за внимание!
> Официальное описание утилиты
Alex-111
Интересно, есть пара вопросов.
1. Насколько режим активного мониторинга затормаживает исполнение кода?
2. Важно ли, с какими ключами скомпилирован elf?
Есть мысль использовать эту утилиту для отладки процессов freeRTOS.
hardegor
Затормаживает также как ваш отладчик в режиме debug при просмотре значения переменной.
Но, можно задавать скорость — непрерывно или частоту 0,1 Гц, 1 Гц и т.д.
Насчет elf не скажу, но у меня эта программа axf подцепила из Keil
jackavenger
>Есть мысль использовать эту утилиту для отладки процессов freeRTOS.
Segger SystemView не пробовали?
Take-Off
1) Ни на сколько, т.к. программатор просто считывает адрес, по которому сохранена переменная. По крайней мере так заявляют в ST.
2) Нет, см. п 1 про адреса.