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下可以直接  看任務信息。

 

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