Информация о процессоре на последовательном мониторе Arduino

как показать

Температура процессора, Использование ЦП (в процентах) и использование памяти (в процентах)

в последовательном мониторе Arduino.

, 👍1

Обсуждение

у ардуино нет процессора, @jsotola

@jsotola Да, это так., @Majenko


1 ответ


6

Температура процессора

Некоторые платы Arduino содержат микроконтроллер с датчиком температуры внутри. Например, Arduino Uno может измерять температуру внутри микроконтроллера.

Насколько мне известно, им никто не пользуется. Это не точно, и микроконтроллер не должен нагреваться в первую очередь. Микроконтроллер или процессор на плате Arduino может работать со 100% нагрузкой и не нагреваться.
Датчик внутренней температуры недостаточно точен для измерения температуры окружающей среды.
Таким образом, внутренняя температура (почти) бесполезна.

См. эту страницу на Arduino Playground и эта ветка форума для датчика внутренней температуры.

Использование ЦП

ЦП не используется. Нет праздных задач. Микроконтроллер или процессор обычно все время работает на полной скорости.

Можно определить, как долго плата Arduino остается в состоянии задержки (с помощью функции yield).
С помощью внешних часов RTC можно определить, как долго плата Arduino остается в спящем режиме (некоторые проекты Arduino с батарейным питанием используют спящий режим).
Однако это очень специфические вещи. Возможно, проект требует их измерения, но общего применения от них нет.

Хороший скетч не должен ничего не делать, он должен проверять все входные данные, проверять миллитаймеры и действовать при необходимости. Функция Arduino loop() должна запускаться как можно чаще, чтобы Arduino работал быстро и плавно.

Использование памяти

При написании скетча следует учитывать использование памяти. Плата Arduino имеет гораздо меньше памяти, чем обычный компьютер.

Можно определить неиспользуемую память между стеком и кучей.
Функцию в внизу этой страницы можно использовать для определения объема свободной памяти.

Я также видел код для измерения максимальной отметки (память, которая вообще никогда не используется), но ни один из них не работает для всех плат Arduino, и этот код ненадежен.

,