Опубликован: 24.11.2024 | Доступ: свободный | Студентов: 1 / 0 | Длительность: 03:11:00
Лекция 4:

FreeRTOS

< Лекция 3 || Лекция 4: 1234 || Лекция 5 >

Запуск демо-приложения

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

Далее в этом курсе мы рассмотрим, как запускать FreeRTOS на других платформах, включая платформы RISC?V, и как моделировать ваши приложения без использования физической аппаратной системы.

Настройка, необходимая для запуска демо-версии Windows, выглядит следующим образом:

Ниже приведены шаги, которые необходимо выполнить для запуска демо-приложения, после установки инструментов (Eclipse и Cygwin + GCC).

Шаг 1: Импорт проекта в Eclipse

Выполните следующие шаги, чтобы импортировать проект в Eclipse:

  • Откройте Eclipse.
  • В строке меню перейдите: File > Import > General > Existing Projects into Workspace.
  • Выберите Next, как показано на снимке экрана ниже:

  • В следующем окне выберите путь к демоверсии FreeRTOS, а затем выберите уже определенный там проект.
  • Нажмите Finish, чтобы открыть проект, как показано на снимке экран ниже:

  • После открытия проекта все связанные файлы отображаются в окне Project Explorer слева. Это показано на скриншоте ниже:

Шаг 2: Понимание демонстрационных файлов

Теперь давайте посмотрим на доступные демонстрационные файлы.

  • В этой демонстрации есть три основных файла:
    • main.c - основной код для выполнения.
    • main_blinky.c - это простое двухзадачное приложение, которое дает представление о том, как могут быть построены приложения FreeRTOS.
    • main_full.c - более полный список приложений.
  • Давайте запустим пример main_blinky, установив define, как показано на скриншоте ниже, в файле main.c:

  • Затем скомпилируйте этот пример с помощью команды build в Eclipse (Eclipse будет использовать GCC от Cygwin для компиляции кода).

Шаг 3: Запуск приложения

Теперь, когда ваше приложение готово к запуску в Windows через Eclipse, выполните следующие шаги:

  • Приложение можно запустить как внутри Eclipse, так и из командной строки:

  • Вы должны увидеть следующий вывод в консоли Eclipse:

  • Запустите его из интерпретатора Cygwin или командной строки Windows:
    • Перейдите в место, где находятся файлы FreeRTOS: \FreeRTOS\FreeRTOS\Demo\WIN32-MingW\Debug.
  • Запустите RTOSDemo.exe
  • Вы должны увидеть следующий результат:

Поздравляем! Вы запустили свое первое приложение FreeRTOS!

Демо-видео

Примечание переводчика

Представленное в курсе демонстрационное видео фактически повторяет шаги, описанные в предыдущем разделе. Ниже приведён транскрипт этого видео с кадрами его основных моментов.

Шаг первый - импортировать проект. Откройте из меню "File", "Import projects" и выберите имя проекта. Нажмите "Finish". Это приведет к импорту проекта в Eclipse.



Теперь вы можете собрать проект. Перейдите в раздел "Project" и нажмите "Clean"; таким образом, все существующие файлы будут очищены.


Затем выполните команду "Build All".


После выполнения команды "Build all" компилятор скомпилирует все необходимые файлы в проект, и вы получите исполняемый файл.


Видите, компилятор компилирует необходимый файл. И в конце компиляции вы можете увидеть, что исполняемый файл создан. Теперь компиляция завершена. Процесс сборки завершен.


А затем вы можете перейти к выполнению проекта. И вы можете видеть, что задачи выполняются одна за другой.



То же самое можно сделать и в командной строке Cygwin Перейдите в каталог проекта, где находится исполняемый файл, и запустите исполняемый файл, созданный в Eclipse.


Контрольные вопросы

  1. Допускает ли лицензия, под которой распространяется FreeRTOS, безвозмездное копирование, изменение и распространение ПО?
  2. Как модульность влияет на разработку программного обеспечения для встраиваемых систем?
  3. Почему важно использовать абстракцию информации о времени при разработке ПО для встраиваемых систем?
  4. Каким образом управление временем простоя системы влияет на эффективность работы встраиваемой системы?
  5. Где в дистрибутиве находятся файлы, специфичные для конкретных компиляторов?
  6. За что отвечает файл FreeRTOSConfig.h?
  7. Правда ли, что динамическое распределение предоставляет больший контроль над управлением памятью?
  8. Какая из пяти схем управления памятью, определённых FreeRTOS, скорее приведёт к фрагментации?
  9. За что отвечает планировщик FreeRTOS?
  10. Что такое задача в контексте FreeRTOS?
  11. Какие механизмы межзадачного взаимодействия доступны во FreeRTOS?
  12. Какие шаги нужно выполнить для создания нового приложения с использованием FreeRTOS?
  13. Какие файлы необходимо включить в проект для работы с FreeRTOS?
  14. Какие настройки необходимо обновить в файле FreeRTOSConfig.h для нового проекта?
< Лекция 3 || Лекция 4: 1234 || Лекция 5 >