Существует ли FreeRTOS с практическими рекомендациями для Cortex M7 о том, как контролировать / отслеживать систему с несколькими задачами (какие функции ядра будут использоваться) - PullRequest
1 голос
/ 17 апреля 2020

Я медленно собираю картину того, как использовать FreeRTOS в реальных приложениях. Я прочитал много частичных функций (контроль стека, память, mallo c et c ...). Но нигде не нашел хорошей инструкции, какой «контроль» использовать, чтобы иметь возможность следить за выполнением задач, система также после того, как отладчик больше не подключен ...

Может кто-нибудь помочь с некоторыми указателями, советы? Какие функции вы активируете, когда разрабатывается приложение FreeRTOS? Как вы контролируете, что происходит с задачами?

Я бы лучше прочитал что-то короткое, чтобы попробовать функцию за функцией и посмотреть, как она работает. Что-то еще для начинающих. Я понимаю, у меня есть документация, но мне нужно постепенное введение во FreeRTOS с примерами. Может быть, я упустил хорошую информацию для чтения ...

Позвольте мне проиллюстрировать это несколькими вопросами, на которые у меня нет ответов:

  • Должен ли я иметь отдельную задачу по надзору , которая собирает информацию о других задачах (состояние, память, ..)?
  • Какие функции следует использовать, чтобы контролировать приложение на основе FreeRTOS «профессиональным» способом?
  • Должен ли я использовать ITM / SWO, или, может быть, RTT?
  • Вы оставляете последовательную консоль в системе для наблюдения за ней?

Заранее спасибо, привет.

1 Ответ

2 голосов
/ 24 апреля 2020

Я медленно собираю картину того, как использовать FreeRTOS в реальных приложениях. Я прочитал много частичных функций (контроль стека, память, mallo c et c ...). [...] Может кто-нибудь помочь с некоторыми указателями, советами?

На веб-сайте freeRTOS вы найдете много документации для ознакомления, а также для понимания деталей функций в глубина.

Я бы лучше прочитал что-то короткое, чтобы попробовать функцию за функцией и посмотреть, как она работает. Что-то еще для начинающих. Я понимаю, у меня есть документация, но мне нужно постепенное введение во FreeRTOS с примерами. Может быть, я упустил хорошую информацию для чтения ...

Существует также много сторонней документации. Возможно, вы захотите прочитать общую литературу о RTOS и о том, как их использовать: во-первых, потому что многие из них ссылаются на одну из самых известных реализаций OSS - freeRTOS. Во-вторых, потому что при работе с RTOS нужно позаботиться практически о тех же аспектах, независимо от того, какая реализация RTOS используется.


Как вы контролируете, что происходит с задачами?

Это зависит от цели наблюдения:

  1. Если система, в которой работает ОСРВ, в некотором смысле является критической (например, она реализует функциональность ) безопасность или требования безопасности ), вам, вероятно, потребуются определенные меры контроля во время выполнения, которые зависят от типа и уровня критичности. Нарушение ожиданий такого контроля обычно приводит к отключению системы и переходу в какой-либо безопасный / безопасный режим работы.

  2. Чаще всего вам нужен контроль для отладки или отслеживания приложения во время разработка и тестирование, чтобы получить представление о том, почему определенные ошибки появляются в поведении системы, или как долго должны выполняться задачи / ISR в системе и как долго они подавляют другие контексты при этом. Это часто позволяет вам постоянно подключать адаптер отладки / трассировки к системе. Нарушение ожиданий здесь означает руководство разработчика к оставшейся ошибке в разрабатываемой / тестируемой системе.

  3. Для многих типов приложений вам, возможно, придется измерять (и регистрировать) время выполнения задачи в течение более крупных периодов, чтобы получить достоверную статистику в контролируемых лабораторных (или реальных) условиях. Тогда вы обычно не можете держать адаптер адаптера отладки / трассировки во встроенной системе, поскольку это может нарушить тестируемые процедуры. Итак, необходима концепция / реализация лесозаготовок.

Вам необходимо оценить цель надзора. Затем вы можете найти эту доску и другие советы для получения дополнительной c справки и повторно опубликовать дополнительные вопросы, которые могут у вас возникнуть.

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


Какие функции вы активируете, когда приложение FreeRTOS разработан?

Все ваши приложения требует (см. выше). Один за другим!

Позвольте мне проиллюстрировать несколькими вопросами, что у меня нет ответов на следующие вопросы:

  • Если у меня будет отдельное задание по надзору, которая собирает информацию о других задачах (состояние, память, ..)?

  • Какие функции следует использовать для надзора за приложениями на основе FreeRTOS «профессиональным» способом?

  • Должен ли я использовать ITM / SWO или, возможно, RTT?

  • Вы оставляете последовательную консоль в системе для наблюдения за ней?

Все зависит от того, какие ответы вы найдете о целях наблюдения. профессиональный способ справиться с этим - это нисходящий подход, позволяющий сосредоточиться на системных требованиях (и потребностях разработки) и проектировать / реализовывать все, что необходимо для их удовлетворения.


Если вы ищете способ получить первое представление о том, как активировать трассировку freeRTOS для ITM / SWO в образовательных целях, я могу порекомендовать вам прекрасный учебник в блоге Atolli c для начинающих. 'введение распространяется на несколько бесплатных статей, шаг за шагом.

Для подсказок архитектуры RTOS вам также могут понравиться введения на YouTube, например, канал benin go engineering , например.

...