随笔分类 -  uCos

简单OS(ucos超级精简版)——裸调度器【worldsing笔记】
摘要:简单原则少ROM,少RAM,任务完成就让出CPU,调度器描述: 1、按最大任务数轮番调度; 2、任务调用延时接口将让出CPU使用权,进入下一个任务调度; 3、用户任务都处于延时或是不使用CPU运行Idle任务; 4、最大任务数255; 5、任务用独立栈,栈大小由用户自定义; 6、调度器无需初始化,代码为单个C文件,结构简单,代码尺寸小; 7、调度器加3个任务代码尺寸:Code=142... 阅读全文

posted @ 2013-11-06 10:42 Worldsing 阅读(2732) 评论(0) 推荐(0)

uCos 之 TaskIdle() 注意事项【worldsing笔记】
摘要:在大多OS里都存在Idle线程或任务,同样uCos也不例外,为什么估计很少有人细研究。为什么设立Idle? 能不能去了? 首先看看uCos中关于Idle的代码做个介绍: config.h里对Idle的配置: #define OS_LOWEST_PRIO 7 /* 最低优先级,OS_LOWEST_PRIO即空闲任务优先级(0 ~ 63) */ ... 阅读全文

posted @ 2013-11-04 21:51 Worldsing 阅读(2063) 评论(0) 推荐(0)

Keil uCos 2.52 stm32 【worldsing笔记】
摘要:1、uCOSii V2.52 a、加了7个可以配置的钩子函数宏 #define OS_TASK_CREATE_HOOK_EN 0 /* 任务创建时调用钩子函数 使能 1 / 禁止 0 */ #define OS_TASK_STAT_HOOK_EN 0 /* 统计任务运行时调用钩子函数... 阅读全文

posted @ 2013-11-01 10:16 Worldsing 阅读(603) 评论(0) 推荐(0)

OSStartHighRdy()一去不复返【worldsing笔记】
摘要:有关于uCos的启动过程讲解有很多文章,这里主要记录已下OSStartHighRdy()在stm32下是怎么写和运行的: stm32上电 运行SystemInit(): 配置时钟,这个不要也可以,不要就是8MHz时钟 运行main() : 调用OSInit(), OSTaskCreate()一个任务,OSSart() OSInit():... 阅读全文

posted @ 2013-10-31 09:50 Worldsing 阅读(4454) 评论(0) 推荐(0)

uCos 没有延时Tick滴答定时器测试
摘要:原来学uCos只是表面,今天才发现uCos没有心跳也是可以活的,只是延时功能。 即:OSTimeDly、OSTimexxx 头的功能不能使用。如果有是用OSTimexxx,任务将会卡死。其实,OSTimeDly 功能就是延时指定时间再唤醒任务。延时过程中任务是挂起状态,时间到后,等待高任务运行完后在运行。下面测试不开cpu硬件定时器情况下的程序://Task0由 MainTask建立,优先级为2void Task0 (void *pArg){ pArg = pArg; while(1) { GPIOB->ODR &= ~GPIO_Pin_14; OSTaskSuspend(2); 阅读全文

posted @ 2013-10-30 11:38 Worldsing 阅读(720) 评论(0) 推荐(0)