Английский | 中文 | Español | Deutsch
RT-Thread появился в 2006 году, это открытая, нейтральная и основанная на сообществе операционная система реального времени (RTOS).
RT-Thread в основном написан на языке C, его легко понять и перенести (можно быстро перенести на широкий спектр основных микроконтроллеров и микросхем модулей). Он применяет методы объектно-ориентированного программирования к проектированию систем реального времени, делая код элегантным, структурированным, модульным и очень адаптируемым.
У RT-Thread есть стандартная версия и нановерсия. Для систем микроконтроллера с ограниченными ресурсами нановерсию, которая требует всего 3 КБ флэш-памяти и 1,2 КБ оперативной памяти, можно настроить с помощью простых в использовании инструментов. Для богатых ресурсами IoT-устройств RT-Thread может использовать онлайн-инструмент управления пакетами программного обеспечения вместе с инструментами настройки системы для достижения интуитивно понятного и быстрого модульного вырезания, бесшовного импорта богатых пакетов программного обеспечения; таким образом, достигая сложных функций, таких как графический интерфейс Android и эффекты скольжения касанием, интеллектуальные эффекты голосового взаимодействия и так далее.
В RT-Thread есть не только ядро реального времени, но и богатые компоненты. Его архитектура выглядит следующим образом:
Она включает:
Ядерный слой: ядро RT-Thread, основная часть RT-Thread, включает реализацию объектов в системе ядра, таких как многопоточность и её планирование, семафор, почтовый ящик, очередь сообщений, управление памятью, таймер и т. д.; libcpu/BSP (файлы миграции чипов / пакет поддержки платы) тесно связан с оборудованием и состоит из периферийных драйверов и портирования процессора.
Компоненты и сервисный уровень: компоненты основаны на программном обеспечении верхнего уровня поверх ядра RT-Thread, таком как виртуальные файловые системы, командные интерфейсы FinSH, сетевые фреймворки, фреймворки устройств и многое другое. Его модульный дизайн обеспечивает высокую внутреннюю связность внутри компонентов и низкую связь между компонентами.
Программный пакет RT-Thread: компонент программного обеспечения общего назначения, работающий на платформе операционной системы IoT RT-Thread для различных областей применения, состоящий из информации описания, исходных кодов или файлов библиотек. RT-Thread предоставляет открытую платформу пакетов с официально доступными или предоставленными разработчиками пакетами, которые предоставляют разработчикам выбор повторно используемых пакетов, являющихся важной частью экосистемы RT-Thread. Пакет экосистемы имеет решающее значение при выборе операционной системы, поскольку эти пакеты отличаются высокой степенью повторного использования и модульности, что позволяет разработчикам приложений легко создавать систему в кратчайшие сроки. RT-Thread поддерживает более 450 программных пакетов.
Каталог исходного кода RT-Thread выглядит следующим образом:
Название | Описание |
---|---|
bsp | Пакет поддержки платы на основе портирования различных плат разработки |
components | Компоненты, такие как оболочка finsh, файловая система, стек протоколов и т. д. |
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]: производители, такие как sifive, Canaan Kendryte, bouffalo_lab, Nuclei, T-Head, HPMicro; — ARC: производители, такие как SYNOPSYS; — DSP: производители, такие как TI; — C-Sky; — x86.
Основные поддерживаемые RT-Thread IDE/компиляторы:
— RT-Thread Studio IDE; — MDK KEIL; — IAR; — GCC.
Руководство пользователя | Обучающие видео
RT-Thread Studio IDE (также известная как RT-Studio) — это универсальная интегрированная среда разработки, созданная командой RT-Thread. Она имеет простую в использовании графическую систему конфигурации и множество программных функций. Пакеты и компоненты ресурсов. RT-Studio имеет функции создания, настройки и управления проектами, а также редактирования кода, управления SDK, конфигурации сборки, конфигурации отладки, загрузки и отладки программы. Мы стремимся сделать использование RT-Studio максимально интуитивным, сокращая дублирование работы и повышая эффективность разработки.
Руководство пользователя | Обучающие видео
На ранней стадии команда RT-Thread также создала вспомогательный инструмент под названием Env. Это вспомогательный инструмент с TUI (текстовым пользовательским интерфейсом). Разработчики могут использовать инструмент Env для настройки и генерации проектов GCC, Keil MDK и IAR.
В начале пути RT-Thread команда также создала вспомогательное средство под названием Env, которое представляет собой вспомогательное средство с текстовым пользовательским интерфейсом (TUI). Разработчики могут применять Env для конфигурирования и создания проектов GCC, Keil MDK и IAR.
RT-Thread Руководство по программированию | RT-Thread Studio IDE | Образец ядра | Руководство для начинающих по RT-Thread
Основано на STM32F103 BluePill | Raspberry Pi Pico
RT-Thread BSP можно скомпилировать напрямую и загрузить на соответствующую плату разработки для использования. Кроме того, RT-Thread предоставляет qemu-vexpress-a9 BSP, который можно использовать без аппаратной платформы. Подробные сведения см. в руководстве по началу работы ниже. Начало работы с QEMU с помощью Env: Windows | Linux Ubuntu | Mac OS
RT-Thread следует лицензии Apache License 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 ([https://github.com/RT-Thread/rt-thread/issues]) или на форуме RT-Thread ([https://club.rt-thread.io]), и члены сообщества ответят на них.
Веб-сайт | Github | Twitter | LinkedIn | Youtube | Facebook | Medium
Если вы заинтересованы в RT-Thread и хотите присоединиться к разработке RT-Thread и стать участником разработки кода, пожалуйста, обратитесь к Руководству по внесению вклада (.github/CONTRIBUTING.md).
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.