BIOS模块介绍
BIOS模块也称为对象,这些对象不用你用C语言定义,在BIOS配置文件中插入一个对象即可,常用模块有CLK PRD TSK SEM MBX QUE
CLK 模块:
此模块很为时钟中断模块,但你建立一个模块的时候,必须关联一个函数,它是一个HOOK函数,被插入到时钟中断服务程序中。
CLK_getprd():返回prd寄存器的值
CLK_start(); 开启时钟,只有时钟停止了用才有意义。
CLK_stop(); 停止时钟
PRD 模块:
此模块称为周期性模块,因为和它关联的函数会被周期性调用,和CLK差不多,唯一不同的是它的周期可以自己设置。
PRD_getticks(void):返回32位周期函数管理计数值,也就是周期模块对象的tick值。
PRD_start(PRD_Obj* period):开始一个周期模块对象
PRD_stop(PRD_Obj* period):停止一个周期模块对象
PRD_tick(void):对周期模块对象的tick加一,和任务模块的tick是两码事。
TSK 模块:
TSK_itick():把tick加一,并进行任务切换,结果可能就是导致更高级别的任务抢占运行,而自己处于ready状态。
TSK_tick():同上,但要注意:SK_itick()只能用在中断中,而TSK_tick则用在任务中。
TSK_sleep():和上面两个函数看似有点相同,但TSK_sleep会导致自己的任务block,并延时ntick。
TSK_time();返回tick的值,和PRD_getticks()不同,PRD_getticks()返回的一个记录时钟中断次数的中断寄存器的值。
TSK_yield();同优先级的任务切换
注意:CCS这个编译器bug很多,在调用别的模块的函数时,一定要声明函数的出处。
阅读(1953) | 评论(0) | 转发(0) |