這篇來學(xué)習(xí)下,XR806開發(fā)板在FreeRTOS系統(tǒng)下創(chuàng)建兩個(gè)任務(wù)測試,由于沒有找到學(xué)習(xí)的文檔,試著參考例程來測試。
一、復(fù)制工程
上篇測試了hello_demo的測試?yán)?,直接?fù)制這個(gè)工程文件,在此基礎(chǔ)上修改
root@ubuntu:/home/xr806_sdk/project/demo# cp -r hello_demo/ task_demo/
復(fù)制完成后,文件如下:

修改 /demo/task_demo/gcc目錄下的defconfig文件
root@ubuntu:/home/xr806_sdk/project/demo/task_demo/gcc# vi defconfig

二、代碼
2.1、main.c
#include "common/framework/platform_init.h"
#include < stdio.h >
#include "kernel/os/os.h"
#include "task.h"
int main(void)
{
platform_init();
task_init();
return 0;
}
2.2、task.c
#include < stdio.h >
#include < string.h >
#include < stdlib.h >
#include "kernel/os/os.h"
#define START_THREAD_STACK_SIZE (512)
#define THREAD_STACK1_SIZE (512)
#define THREAD_STACK2_SIZE (512)
static OS_Thread_t start_task_thread;
static OS_Thread_t task1_thread;
static OS_Thread_t task2_thread;
static void task1(void *arg)
{
while (1)
{
printf("task1 running....n");
OS_MSleep(100);
}
}
static void task2(void *arg)
{
while (1)
{
printf("task2 running....n");
OS_MSleep(200);
}
}
static void start_task(void *arg)
{
//create task1
if (OS_ThreadCreate(&task1_thread,
"task1",
task1,
NULL,
OS_THREAD_PRIO_APP,
THREAD_STACK1_SIZE) != OS_OK) {
printf("thread create task1 errorn");
}
//create task2
if (OS_ThreadCreate(&task2_thread,
"task2",
task2,
NULL,
OS_THREAD_PRIO_APP,
THREAD_STACK2_SIZE) != OS_OK) {
printf("thread create task2 errorn");
}
OS_ThreadDelete(&start_task_thread);
}
int task_init(void)
{
if (OS_ThreadCreate(&start_task_thread,
"start_task",
start_task,
NULL,
OS_THREAD_PRIO_APP,
START_THREAD_STACK_SIZE) != OS_OK) {
printf("thread create errorn");
return -1;
}
return 0;
}
三、程序運(yùn)行
編譯完成后,下載鏡像到開發(fā)板。
復(fù)位開發(fā)板運(yùn)行后,串口輸出:

-
FreeRTOS
+關(guān)注
關(guān)注
14文章
497瀏覽量
66420 -
串口輸出
+關(guān)注
關(guān)注
0文章
18瀏覽量
7794 -
xr806
+關(guān)注
關(guān)注
0文章
14瀏覽量
1568
發(fā)布評(píng)論請(qǐng)先 登錄
【XR806開發(fā)板適用】基于多源信息融合的糧食霉變檢測系統(tǒng)設(shè)計(jì)
基于全志XR806開發(fā)板的家用環(huán)境監(jiān)測傳感器設(shè)計(jì)
如何使用XR806開發(fā)板來設(shè)計(jì)一個(gè)糧食霉變檢測系統(tǒng)?
OpenHarmony南向嵌入式:【XR806開發(fā)板指導(dǎo)文檔】
XR806芯片、XR806開源鴻蒙開發(fā)板簡介
XR806芯片、XR806開源鴻蒙開發(fā)板簡介
有哪位大神可以分享一下XR806開發(fā)板/模組的資料呢
如何利用XR806開發(fā)板對(duì)TCP通信進(jìn)行測試呢
如何對(duì)XR806開發(fā)板的環(huán)境進(jìn)行配置呢
簡述XR806開發(fā)板與STAR-MC1處理器
【XR806開發(fā)板試用】留言板功能開發(fā)
【XR806開發(fā)板試用】基于FreeRTOS的UART1串口雙向通信測試
XR806串口驅(qū)動(dòng)CM32M對(duì)小廚寶的控制實(shí)驗(yàn)

【XR806開發(fā)板試用】FreeRTOS創(chuàng)建任務(wù)測試
評(píng)論