写几个简单的延时函数

来源:互联网 发布:行情数据接口 编辑:程序博客网 时间:2024/05/20 13:19
因为主频为16MHz    //16-bit count, 4 cycles/loop
根据上篇的延时写几个简单的延时函数
void delay_1us(void)               //延时1us
{
     _delay_loop_2(4);
}

void delay_us(unsigned int n)      //延时nus
{
    unsigned int i;
    for(i=0;i<n;i++)
        delay_1us();
}

void delay_1ms(void)            //延时1ms
{
     _delay_loop_2(4000);       

}

void delay_ms(unsigned int n)    //延时nms
{
    unsigned int i;
    for(i=0;i<n;i++)
        delay_1ms();
}
 
void delay_s(unsigned int d)    //延时ns
{
    for(;d>0;d--)
        delay_ms(1000);
}
0 0