真的写的很好,非常生动,好多事情有了操作系统就变得简单了,尤其是多任务(线程)、信号(消息)等。
这里以最简单的步骤实现一个基于操作系统的工程。采用Keil MDK5.0来完成,适用于Keil支持的MCU,当然了,不拘泥于某种MCU,方法是一样的。
创建工程就不说了,创建完成后MDK 5.0多了一个选项,可以选择加入RTOS:
看到那个Keil RTX了吗,选中它就OK了,剩下的就是代码的编写,当然了,也是很简单的:
引用cmsis_os.h后就可以开始工作了,
实现线程函数:
osTimerId hLED1;
void LED1_Callback(void const *arg)
{
LED_Reversal(LED1);
}
osTimerDef(TimerLED1, LED1_Callback);
创建线程:
hLED1 = osTimerCreate(osTimer(TimerLED1), osTimerPeriodic, NULL);
控制线程:
osTimerStart(hLED1, 100); //100ms闪烁
osTimerStop(hLED1);
完成,就这么简单。
随手写的,很没条理性,只是为了过过发帖子的瘾,呵呵,有不对的地方还请指出。
支持原创@!!!
前排!!!这是狼哥写的吗?