智能设备开源操作系统RT-Thread
云开发者社区
熊谱翔
开源社区的协作模式
Github协作开发
RT-Thread概貌
• 来自中国的开源嵌入式实时操作系统;
– 2006年诞生;
–开源社区方式发展;
• 定位:智能设备操作系统
智能设备操作系统
• 智能设备
RT-Thread的特点
• 完整的功能,麻雀虽小五脏俱全;
• 超低功耗 或 硬实时
RT-Thread的特点
• 实时内核 (自行实现,无近缘关系)
–设备驱动框架 (USB host/device)
• 命令行 (C表示风格shell)
– 文件系统 (轻薄虚拟文件系统层)
» TCP/IP网络协议栈 (移植自lwIP)
• GUI图形用户界面 (C/C++多线程,多窗口UI)
• POSIX兼容接口
MCU, SPI, IIC, UART, Flash, EMAC, Timer etc.
RTOS Kernel
RT-Thread Platform
Protocol Stack
ETH Wi-Fi PPP
IPv4/v6
UDP TCP
ICMP IGMP
DNS
File System (DFS)
MTD
NFTL FTL
FAT RAMFS NFS
ROMFS
YAFFS2
UART SPI
IIC NAND
USB device/host
PowerMgr
SDIO
Device Framework
sensors
User Interface
GUI msh
ATCmd
GDB
stub
finsh
Platform Interface
POSIX CMSIS
pthreads C++
dlopen
Apps
Module
RTC IPC WDT
FreeType
Applications
WebNet mJSON
FTP Srv lua
JavaScript
SQLite3
Telnet Srv RealSSL
RealRIL
{ thread, timer, sem, msgQ, mem heap }
云端开发环境
• 设备端编程:
–开发环境
–烧写程序
–调试
Cloud IDE
• 现代式的云端集成开发环境:
–在云端集成了GNU GCC开发工具链,最新版
本的RT-Thread源码环境;
–在浏览器端集成了编辑器及面向工程的工具;
–浏览器编程,云端编译,无线网络部署!
Cloud IDE
Cloud IDE – 工程模版
• CloudARM
– <ARM Cortex-A8>
• ART_wifi
– <STM32F205>
Cloud IDE – Cloud ARM
• Cloud ARM:
– ARM Cortex-A8 VM in JavaScript
–运行在浏览器端的ARM虚拟机;
Cloud IDE – 配置器
• 嵌入式系统配置多,剪裁多:
–针对RT-Thread特性的配置器;
• 文件系统、TCP/IP网络协议栈等等配置;
Cloud IDE – 社交化的开发者社区
• 开发者间的组件共享;
–引用次数,版本信息;
• 开发者间的沟通交流;
–问题沟通,吹牛。。。
• 连接github,维护你自己的代码;
ART_wifi开发板
• 微控制器:ARM Cortex-M3, STM32F205
• 存储资源:8MB flash,片上512kB flash,128kB 内
存;
• 连接方式:Wi-Fi
(SoftAP/Station,双Wi-Fi),
串口,USB(预留,复用串
口)
• 类Arduino扩展接口
ART_wifi软件资源
• 对接于Cloud IDE,并使用上面的组件:
– FAT文件系统;
– web server/client;
–用于物联网的MQTT、CoAP协议;
• 出厂携带bootloader,可以直接从Cloud
IDE更新自己开发的固件;
一些应用
风电设备
社区性应用
社区性应用 (视频)