ZigBee协议栈的延时函数式那个函数?希望大侠写出来

供稿:hz-xin.com     日期:2024-05-17
关于zigbee的延时函数问题

协议栈 有专门的 延时函数 调用吧

#include "OnBoard.h"要包含头文件
//延时函数
*****************************/
/*void Delay_1us(void) //1 us延时

{
MicroWait(1); //这是协议栈内的函数
}

void Delay_us(uint Time) //us延时
{
unsigned char i;
for(i=0;i<Time;i++)
{
MicroWait(1);
}
}

void Delay_ms(uint Time)//n ms延时
{
unsigned char i;
while(Time--)
{
for(i=0;i<100;i++)
MicroWait(10);
}
}*/

/****************************
延时函数
*****************************/
void Delay_us(void) //1 us延时
{
MicroWait(1);

}

内部调用协议栈底层的 MicroWait函数,这个.c文件要包含OnBoard.h这个头文件。
#include "OnBoard.h"
void delay_ms(uint msec)

    u8 i;
    while(msec--)
    {
      for (i=0;i<100;i++)
      {
        MicroWait(10);
      }
    } 
}


microwait_ms();
毫秒级延时,直接调用它就可以了。


协议栈的 MicroWait(t) 原型其实也只是调用了三次 asm("NOP");
// Wait for specified microseconds
#define MicroWait(t) Onboard_wait(t)
void Onboard_wait( uint16 timeout )
{
while (timeout--)
{
asm("NOP");
asm("NOP");
asm("NOP");
}
}

可以用asm(“nop”)。

ZigBee协议栈的延时函数式那个函数?希望大侠写出来
答:内部调用协议栈底层的 MicroWait函数,这个.c文件要包含OnBoard.h这个头文件。#include "OnBoard.h"void delay_ms(uint msec){ u8 i; while(msec--) { for (i=0;i<100;i++) { MicroWait(10); } } }

zigbee延时函数是哪一个,怎么用?
答://延时函数 / /*void Delay_1us(void) //1 us延时 { MicroWait(1); //这是协议栈内的函数 } void Delay_us(uint Time) //us延时 { unsigned char i;for(i=0;i<Time;i++){ MicroWait(1);} } void Delay_ms(uint Time)//n ms延时 { unsigned char i;while(Time--){ for...

请问怎么在zigbee协议栈中调用延时函数,还有就是怎么用zigbee协议栈的串...
答:延时函数是uint8 osal_start_timerEx( uint8 taskID, uint16 event_id, uint16 timeout_value )串口调用uint16 HalUARTWrite(uint8 port, uint8 *buf, uint16 len)写

ZigBee协议栈中怎么实现函数延时呢 写了一个延时函数 但是不执行 谢谢...
答:亲,ZigBee协议栈一般是基于某一个类OS的。就是一个类似的操作系统(虽然跟操作系统本质上有差别)。所以,你见过在操作系统里用这种延时函数的吗?不管是Keil的RTX还是ucos,操作系统都是一个一个节拍的,然后定义了很多跟时间相关的接口或者API。所以你这样做只会干扰协议栈的工作,建议你看看里面的时...

zigbee协议栈采用什么方式调度任务
答:1、任务调度:osal采用一个链表结构来管理协议栈各层相应任务。相关操作函数有,添加任务到链表中;获取下一个活动任务;根据taskID查找下一个任务。osal采用轮询任务调度队列(任务链表),通过两个函数:调度程序主循环函数和设置事件发生标志函数。2、时间管理:通过为事件设置超时等待时间,一旦等待时间...

求一个大专数控专业的毕业论文
答:通过OSSemPend()函数等待相应信号量的到来,触发任务的执 行;并利用系统延时函数OSTimeDly()延时。如图2所示,系统 初始化完成的工作为μC/OS-Ⅱ初始化,创建信号量,创建任务,接口初始化等。在启动多任务OSStart();后,就处于μC/OS-Ⅱ 的调度下运行。首先,在键盘命令没有下达之前,系统处于等待 状态,各...

定义在区间(-1,1)上的函数f(x)满足2f(x)-f(-x)=Ig(x+1),则函数的解析...
答:将x带换为-x:2f(-x)-f(X)=lg(-x+1)除二:f(-x)-0.5f(X)=0.5lg(-x+1)与原始相加:1.5f(x)=lg(x+1)+0.5lg(1-x)f(x)={2lg(x+1)+lg(1-x)}/3