1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/rtthread-rt-thread

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_de.md 14 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 25.11.2024 21:35 537aeae

RT-Thread

RT-Thread появился в 2006 году и представляет собой открытое, нейтральное и основанное на сообществе операционную систему реального времени (RTOS).

RT-Thread написан преимущественно на языке C, его легко понять и просто портировать (можно быстро портировать на широкий спектр популярных микроконтроллеров и модульных чипов). В дизайне систем реального времени используются объектно-ориентированные методы программирования, что делает код элегантным, структурированным, модульным и очень адаптируемым.

Существует стандартная и нано-версия RT-Thread. Для систем с ограниченными ресурсами микроконтроллера (MCU) можно настроить нано-версию, которая требует всего 3 КБ флэш-памяти и 1,2 КБ оперативной памяти. Для ресурсоёмких IoT-устройств RT-Thread может использовать онлайн-инструмент для управления пакетами программного обеспечения вместе с инструментами настройки системы, чтобы достичь интуитивно понятного и быстрого модульного подхода и бесшовно импортировать обширные пакеты программного обеспечения.

Архитектура RT-Thread

Архитектура RT-Thread включает не только ядро реального времени, но и обширные компоненты. Она выглядит следующим образом:

  • Слой ядра: ядро RT-Thread, сердцевина RT-Thread, включает реализацию объектов в системе ядра, таких как многопоточность и её планирование, семафор, почтовый ящик, очередь сообщений, управление памятью, таймеры и т. д.; libcpu/BSP (файлы, связанные с миграцией чипа/пакет поддержки платы) тесно связан с оборудованием и состоит из драйверов периферийных устройств и переноса процессора.

  • Компоненты и уровень служб: компоненты основаны на программном обеспечении верхнего уровня ядра RT-Thread, таком как виртуальные файловые системы, интерфейсы командной строки FinSH, сетевые фреймворки, фреймворки устройств и многое другое. Модульная конструкция обеспечивает высокую внутреннюю согласованность компонентов и низкую связь между компонентами.

  • Программное обеспечение RT-Thread: универсальное программное обеспечение, работающее на платформе операционной системы IoT RT-Thread для различных областей применения и состоящее из информации о документации, исходного кода или файлов библиотек. RT-Thread предлагает открытую платформу пакетов с официально доступными или предоставленными разработчиками пакетами, которые предоставляют разработчикам выбор повторно используемых пакетов, являющихся важной частью экосистемы RT-Thread. Экосистема пакетов имеет решающее значение для выбора операционной системы, поскольку эти пакеты в значительной степени многоразовые и модульные, что облегчает разработчикам приложений создание желаемой системы в кратчайшие сроки. RT-Thread поддерживает более 370 пакетов программного обеспечения.

Особенности RT-Thread

  • Минимальный размер ядра для устройств с ограниченными ресурсами. Разработан и требует всего 1,2 КБ оперативной памяти и 3 КБ флэш-памяти.
  • Множество стандартных интерфейсов, таких как POSIX, CMSIS, среда приложений C++.
  • Имеет множество компонентов и процветающее и быстрорастущее пакетное экосистему.
  • Элегантный стиль кода, простой в использовании, чтении и освоении.
  • Высокая масштабируемость. RT-Thread имеет высококачественную масштабируемую архитектуру программного обеспечения, слабую связь, модульность, легко адаптируется и расширяется.
  • Поддерживает высокопроизводительные приложения.
  • Поддерживает все распространённые инструменты компиляции, такие как GCC, Keil и IAR.
  • Поддерживает широкий спектр архитектур и чипов.

Каталог исходного кода

Каталог исходного кода RT-Thread представлен следующим образом:

Название Описание
bsp Пакет поддержки платы на основе портирования различных плат для разработки.
components Компоненты, такие как оболочка, файловая система, стек протоколов и т. д.
documentation Связанные документы, такие как стиль кодирования, Doxygen и т.д.
examples Соответствующий пример кода.
include Заголовочные файлы ядра RT-Thread.
libcpu Код портирования процессора, такой как ARM/MIPS/RISC-V и т. д.
src Исходные файлы для ядра RT-Thread.
tools Скрипт-файлы для инструмента создания команд RT-Thread.

RT-Thread в настоящее время портирован почти на 200 плат для разработки, большинство BSP поддерживают MDK, среду разработки IAR и компилятор GCC и предлагают стандартное MDK- и IAR-проект, который позволяет пользователям добавлять свой собственный код приложения непосредственно на основе проекта. Каждое BSP имеет аналогичную структуру каталогов, и большинство BSP предоставляют файл README.md, файл в формате Markdown, который содержит базовое введение в BSP и объясняет, как легко начать работу с BSP.

Ресурсы

Поддерживаемые архитектуры

RT-Thread поддерживает множество архитектур и охватывает основные архитектуры в текущих приложениях. Архитектура и производитель чипа:

  • ARM Cortex-M0/M0+:производители, такие как ST.
  • ARM Cortex-M3:производители, такие как ST, Winner Micro, MindMotion и др.
  • ARM Cortex-M4:производители, такие как ST, Infineon, Nuvoton, NXP, Nordic, GigaDevice, Realtek, Ambiq Micro и др.
  • ARM Cortex-M7:производители, такие как ST, NXP.
  • ARM Cortex-M23:производители, такие как GigaDevice.
  • ARM Cortex-M33:производители, такие как ST.
  • ARM Cortex-R4.
  • ARM Cortex-A8/A9:производители, такие как NXP.
  • ARM7:производители, такие как Samsung.
  • ARM9:производители, такие как Allwinner, Xilinx, GOKE.
  • ARM11:производители, такие как Fullhan.
  • MIPS32:производители, такие как loongson, Ingenic.
  • RISC-V RV32E/RV32I[F]/RV64[D]:производители, такие как Hifive, Kendryte, bouffalo_lab, Nuclei, T-Head, HPMicro.
  • ARC:производители, такие как SYNOPSYS.
  • DSP:производители, такие как TI.
  • C-Sky.
  • x86.

Поддерживаемые IDE и компиляторы

Основные поддерживаемые IDE/компиляторы RT-Thread включают:

  • RT-Thread Studio IDE.
  • MDK KEIL.
  • IAR.
  • GCC.

RT-Thread Studio IDE

Руководство пользователя | Обучающие видео

RT-Thread Studio IDE (также известная как RT-Studio) — это интегрированная среда разработки «из одной руки», разработанная командой RT-Thread. Она имеет простое в использовании графическое конфигурационное решение и множество пакетов программного обеспечения и ресурсов компонентов. RT-Studio имеет функции для создания, настройки и управления проектами. Управление и редактирование кода, управление SDK, конфигурация сборки, конфигурация отладки, загрузка программы и отладка.

Мы стремимся сделать использование RT-Studio как можно более интуитивным, сократить дублирование работы и повысить эффективность разработки.

Инструмент Env

На начальном этапе команда RT-Thread также создала вспомогательный инструмент под названием Env. Это вспомогательное средство с TUI (текстовым интерфейсом пользователя). Разработчики могут использовать инструмент Env для настройки и генерации проектов GCC, Keil MDK и IAR.

Первые шаги

Основываясь на STM32F103 BluePill или Raspberry Pi Pico.

RT-Thread предоставляет документацию по программированию, учебные пособия и справочные материалы, а также образцы ядра.

Симулятор

RT-Thread BSP может быть скомпилирован напрямую и загружен для использования на соответствующей платформе разработки. Кроме того, RT-Thread предлагает qemu-vexpress-a9 BSP, который можно использовать без аппаратной платформы. Более подробную информацию вы можете найти в руководстве по первым шагам ниже.

Windows | Linux Ubuntu | Mac OS

Лицензия

RT-Thread — это программное обеспечение с открытым исходным кодом, которое с версии 3.1.1 находится под лицензией Apache Version 2.0. Информацию о лицензии и авторские права обычно можно найти в начале кода:

/* Copyright (c) 2006-2018, RT-Thread Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 * ...
 */

Сообщество

Команда RT-Thread очень благодарна за поддержку всех разработчиков сообщества. Если у вас есть идеи, предложения или вопросы об использовании RT-Thread, вы можете связаться с RT-Thread через следующие каналы, и мы будем обновлять RT-Thread в режиме реального времени через эти каналы. В то же время все вопросы можно задать в разделе «Проблемы» репозитория RT-Thread или на форуме RT-Thread. Члены сообщества ответят на них.

Веб-сайт | Github | Twitter | LinkedIn | Youtube | Facebook | Medium

Вклад

Если вы заинтересованы в RT-Thread и хотите участвовать в разработке RT-Thread и внести свой вклад в код, пожалуйста, ознакомьтесь с Руководством по внесению вклада в код (.github/CONTRIBUTING.md).

1
https://api.gitlife.ru/oschina-mirror/rtthread-rt-thread.git
git@api.gitlife.ru:oschina-mirror/rtthread-rt-thread.git
oschina-mirror
rtthread-rt-thread
rtthread-rt-thread
master