提供时钟以供系统处理:延时,超时等与时间相关的时间。采用硬件定时器产生一个毫秒级的周期性中断来实现系统时钟。最小的时钟单位是两次中断之间的间隔的时间,这个最小时钟单元叫做时钟节拍。----time Tick
1. 硬件定时器以时钟节拍为周期定时产生中断,该中断的中断服务程序叫做OSTickISR();
OSTimeTick()来完成每个时钟节拍时需要做的工作。
2.任务的延时:OSTimeDly()
函数的作用:为了防止高优先级的任务独占CPU,uc/os-II规定,除了空闲任务外所有任务必须在合适的时候调用OSTimeDly(),使当前任务的运行延时一段时间并进行一次任务调度,方便让出CPU的使用权。
函数原型: void OSTimeDly(INT16U ticks):ticks是以时钟节拍数为单位的延时时间;
OSTimeDlyHMSM():可以用时,分,秒为单位的延时函数。
3.取消任务的延时:OSTimeDlyResume()
函数的原型:INT8U OSTimeDlyResume(INT8U prio); prio:为被取消延时任务的优先级别
4. 获取和设置系统时间:
OSTime:记录系统发生的时钟节拍数。在调用OSStart()时被初始化为0, 每发生一个时钟节拍就加1
获得时间: INT32U OSTimeGet(void); 返回值为OSTime的值;
设置时间:void OSTimeset(INT32U ticks): 设置的参数ticks为OSTime的设置值。