RTX51_Tiny_中文手册(全文下载)(5)

2019-03-28 13:25

例子 #include< rtx51tny.h>

void tst_isr_set_ready(void)interrupt 2

{ isr_set_ready(1);/*置位任务1的就绪标志*/ }

3、os_clear_signal

概要 #include< rtx51tny.h>

char os_clesr_signal(unsigned cahr task_id);/*清除信号的任务*/ 描述 清除由task_id指定的任务信号标志。

附注: 该函数是RTX51 Tiny的一部分,包含在PK51中。

返回值 信号成功清除后返回0,指定的任务不存在时返回-1。 参阅 isr_send_signal,os_send_signal,os_wait 例子 #include< rtx51tny.h>

void tst_os_clsar_siganl(void)_task_8 { …

os_clear_signal(5); /*清除任务5的信号标志*/ … }

4、os_create_task

概要 #include

char os_create_task(unsigned char task_id);/*要启动的任务ID*/ 描述 启动任务task_id,该任务被标记为就绪,并在下一个时间点开始执行。 附注: 该函数是包含在PK51中的RTX51 Tiny的组成部分。

返回值 任务成功启动后返回0,如果任务不能启动或任务已在运行,或没有以task_id定义

的任务,返回-1。

参阅 os_delete_task

例子 #include< rtx51tny.h>

#include /*用于printf*/ void new_task(void)_task_2 {…}

void tst_os_create_task(void)_task_0 {

if(os_create_task(2)) {

printf(“couldn’t start task2\ } … }

5、os_delete_task

概要 #include

char os_delete_task(unsigned char task_id);/*要删除的任务*/ 描述 函数将以task_id指定的任务停止,并从任务列表中将其删除。 附注 该函数是包含在PK51中的RTX51 Tiny的组成部分。

返回值 任务成功停止并删除后返回0。指定任务不存在或未启动时返回-1。 附注 如果任务删除自己,将立即发生任务切换。 参阅 os_create_task 例子 #include

#include

void tst_os_delete_task(void)_task_0 { …

if(os_delete_task(2)) {

printf(“couldn’t stop task2\ } … }

6、os_reset_interval

概要 #include

void os_reset_interval(unsigned char ticks); /*滴答数*/

描述 用于纠正由于os_wait函数同时等待K_IVL和K_SIG事件而产生的时间问题,在这种

情况下,如果一个信号事件(K_SIG)引起os_wait退出,时间间隔定时器并不调整,这样,会导致后续的os_wait调用(等待一个时间间隔)延迟的不是预期的时间周期。允许你将时间间隔定时器复位,这样,后续对os_wait的调用就会按预期的操作进行。

附注: 该函数是包含在PK51中的RTX51 Tiny的组成部分。 返回值 无

例子 #include void task_func(void)_task_4 { …

switch(os_wait2(KSIG|K_IVL,100)) {

case TMO_EVENT:

/*发生了超时,不需要Os_reset_interval*/

break;

case SIG_EVCENT:

/*收到信号,需要Os_reset_interval*/ os_reset_interval(100); /*依信号执行的其它操作*/ break; } … }

7、os_running_task_id

概要 #include char os_running_task_id(void); 描述 函数确认当前正在执行的任务的任务ID。

附注: 该函数是包含在PK51中的RTX51 Tiny的组成部分。

返回值 返回当前正在执行的任务的任务号,该值为0~15之间的一个数。 例子 #include

void tst_os_running_task(void)_task_3 {

unsigned char tid;

tid=os_running_task_id( ); /*tid=3*/ }

8、os_send_signal 概要 #include

char os_send_signal(char task_id);/*信号发往的任务*/

描述 函数向任务task_id发送一个信号。如果指定的任务已经在等待一个信号,则该函

数使任务准备执行但不启动它。信号存储在任务的信号标志中。

附注 该函数是包含在PK51中的RTX51 Tiny的组成部分。 返回值 成功调用后返回0,指定任务不存在时返回-1。 参阅 isr_send_signal,os_clear_signal,os_wait #include

void signal_func(void)_task_2 { …

os_send_signal(8); /*向8号任务发信号*/ … }

void tst_os_send_signal(void)_task_8 { …

os_send_signal(2); /*向2号任务发信号*/ … }

9、 os_set_ready

概要 #include

char os_set_ready(unsigned char task_id);/*使就绪的任务*/ 描述 将以task_id指定的任务置为就绪状态。

附注: 该函数是包含在PK51中的RTX51 Tiny的组成部分。 返回值 无

例子 #include void ready_func(void)_task_2 { …

os_set_ready(1); /*置位任务1的就绪标志*/

… }

10、 os_switch_task

概要 #include char os_switch_task(void);

描述 该函数允许一个任务停止执行,并运行另一个任务。如果调用os_switch_task

的任务是唯一的就绪任务,它将立即恢复运行。

附注: 该函数是包含在PK51中的RTX51 Tiny的组成部分。 返回值 无

例子 #include #include

void long_job(void)_task_1 {

float f1,f2; f1=0.0; while(1) {

f2=log(f1); f1+=0.0001;

os_switch_task(); /*运行其它任务*/ } } 11、os_wait

概要 #include char os_wait(

unsigned char event_sel, /*要等待的事件*/ unsigned char ticks, /*要等待的滴答数*/ unsigned int dammy); /*无用参数*/

描述 该函数挂起当前任务,并等待一个或几个事件,如时间间隔,超时,或从其它任务

和中断发来的信号。参数event_set指定要等待的事件,可以是下表中常数的一些组合。


RTX51_Tiny_中文手册(全文下载)(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2021年玉米秸秆回收机行业深度分析及“十三五”发展规划指

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: