男儿欲遂平生志,五经勤向窗前读。这篇文章主要讲述The Applications of RT-Thread RTOS相关的知识,希望能为你提供帮助。
The Applications of RT-Thread RTOS
IntroductionThe user application is the application layer of RT-Thread RTOS. The developer can develop his/her application out of RT-Thread RTOS firmware environment.
There are two mode for RT-Thread Applications,
- Standalone Application
- Shared Library
The shared library is compose of functions, and provide these APIs to other programs.
Build ApplicationFirst of all, these programs must base on RT-Thread RTOS environment, and run inside. In the RT-Thread RTOS, the module option must be enable in rtconfig.h File:
#define RT_USING_MODULE
And provide the flags for Application building in rtconfig.py file (since RT-Thread 2.1.x, these flags will be gradually added to each BSP):
- M_CFLAGS - User Application C/C++ compiler flags
- M_LFLAGS - User Application link flags
BSP_ROOT
which points to your board support package directory.Windows:
set BSP_ROOT=your_bsp_directory
Linux:
export BSP_ROOT=your_bsp_directory
And to run the command under your BSP directory:
scons --target=ua -s
To generate the information for User Application, such as the header file search path, the macro defined in the RT-Thread RTOS etc.
Finally, you can build the user application in
rtthread-apps
directory, for example:scons --app=hello
To build
hello
program.scons --lib=libtar
To build a shared library.
A Simple ApplicationThis is a simple application of
Hello World
:#include <
stdio.h>
int main(int argc, char **argv)
{
printf("Hello World!\n");
return 0;
}
It‘s just like the
Hello World
program in the PC/Linux. Beside that, the user application can use the most of APIs of RT-Thread, for example:#include <
rtthread.h>
void my_thread_entry(void* parameter)
{
int index;
while (1)
{
rt_kprintf("index =>
%d\n", index ++);
rt_thread_delay(RT_TICK_PER_SECOND);
}
}int my_thread_init(void)
{
rt_thread_t tid;
tid = rt_thread_create("tMyTask‘, my_thread_entry, RT_NULL,
2048, 20, 20);
if (tid != RT_NULL) rt_thread_startup(tid);
return 0;
}
This example will create a sub-thread, which named as ‘tMyTask‘.
Build the POSIX application in the hostIf you didn‘t set RTT_ROOT/BSP_ROOT, The command
scons --app=hello
will build the program in host environment, for example, build it as a Linux program.Therefore, only POSIX application can be built like that.
LicenseAll of user application are standalone program, if there is no special explanation, the license of these program is GPLv2. While the license of RT-Thread RTOS is GPLv2+.
【The Applications of RT-Thread RTOS】
【来源】
推荐阅读
- iMPACT错误提醒 “A Xilinx Application has encountered an unexpected error.It is recommended that you save
- Android Studio开发学习 - 1. 添加Activity
- 6.2Android硬件访问服务编写系统代码
- Polymerjs paper-drawer-panel元素
- Polymerjs paper-checkbox元素
- Polymerjs paper-card元素
- Polymerjs paper-badge元素
- Polymerjs paper-button元素
- Polymerjs neon元素