MCU加入自带的RTX

// RTOS 初始化
	osKernelInitialize();
	// 创建任务
	osThreadCreate(osThread(key_task),NULL);
	// 启动内核
	osKernelStart();
	while(1)
	{
		
		
	}
    // 消息队列创建
    static osMessageQId key_q_msg_handle = NULL;
    static osMessageQDef(keyQueue, 10, uint32_t);
    key_q_msg_handle = osMessageCreate(osMessageQ(keyQueue), NULL);
    // 发送消息
    osMessagePut(key_q_msg_handle,MSG_KEY_3,0);  
    // 任务样板
    static void key_task(void const* argc)
    {
           while(1)
        {
            osDelay(20);
        }
    }

目前很多OS都喜欢搞一个任务启动main.但是这个main会占用一些资源,为了节约,我一般都屏蔽掉。

配置任务栈信息。

目前OS一般有一个消息队列基本上很多功能都可以实现了。

RTX的方便是调试在keil下可以直接  看任务信息。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章