打印

rtx51-tiny中os_wait函数的用法 高手进来帮忙啊!急在线等!

[复制链接]
3323|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
80572892|  楼主 | 2007-3-11 09:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在RTXTINY系统中,os_wait函数的应该怎么用啊,我看了好多教材都写千篇一律,没有一个能把这个问题说清楚的。。
书上说怎么说的:
char os_wait(
             uchar event_sel,      //要等待的事件
             uchar ticks,          //要等待的定时器滴答
             uint dummy);          //未使用的参数
从上面看这个函数应该有个返回值char.可是这个返回值是做什么用的呢?
而事件常数又分成
K_IVL   等待定时器滴答的间隔
K_SIG   等待一个信号
K_TMO   等待超时
上面3个具体是什么意思啊,教材没有说清楚。等待定时器滴答的间隔,指的是什么意思啊。等待一个信号又是指的是什么信号啊。等待超时是等待这个时间片用完的意思吗?
高手帮忙啊!!!不胜感激,用过的帮忙啊。谢谢谢谢谢谢谢谢谢谢!!!

相关帖子

沙发
mohanwei| | 2007-3-11 17:23 | 只看该作者

看keil自带的手册……

使用特权

评论回复
板凳
ATmega8515| | 2007-3-11 21:18 | 只看该作者

wu

RTX51的信号实际上是使任务就绪,发送信号任务就绪,删除信号,任务挂起。


买本《嵌入式实时操作系统SMALL RTOS51》去看,弄明白了,再去搞RTX51

使用特权

评论回复
地板
80572892|  楼主 | 2007-3-12 08:08 | 只看该作者

看keil自带的手册……

看keil自带的手册……

使用特权

评论回复
5
80572892|  楼主 | 2007-3-12 08:09 | 只看该作者

看keil自带的手册……

教材都是从keil自带的手册翻译过来的,写的非常不好,根本没有把这个问题说清楚。。。

使用特权

评论回复
6
ayb_ice| | 2007-3-12 08:17 | 只看该作者

随便说说

char os_wait(
             uchar event_sel,      //要等待的事件
             uchar ticks,          //要等待的定时器滴答
             uint dummy);          //未使用的参数

dummy在TINY中没有使用,直接写为0即可,主要是方便于程序升级为FULL,
ticks用于指定等待时间,
event_sel等待事件类型,可以是K_SIG,K_TMO,K_IVL,K_RDY,K_SIG|K_TMO,或K_SI|K_IVL,
返回值可以是SIG_EVENT,TMO_EVENT,RDY_EVENT

使用特权

评论回复
7
80572892|  楼主 | 2007-3-12 09:45 | 只看该作者

event_sel等待事件

event_sel等待事件类型,可以是
K_SIG,K_TMO,K_IVL,K_RDY,K_SIG|K_TMO,或K_SI|K_IVL,

这些事件都具体是什么意思啊!!
能不能具个例子说说啊!!
谢谢了!!!! 

使用特权

评论回复
8
ayb_ice| | 2007-3-12 13:31 | 只看该作者

随便说说


    switch(os_wait(K_SIG|K_TMO, 100, 0)){   // 等待信号或超时
    case TMO_EVENT:     // 等待超时成功
        break;

    case SIG_EVENT:     // 等待信号成功
        break;
    }

使用特权

评论回复
9
80572892|  楼主 | 2007-3-16 18:48 | 只看该作者

怎么没人说话呢!!

怎么没人说话呢!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

71

帖子

0

粉丝