标题: 51单片机精准延时程序 [打印本页]

作者: 破风少年    时间: 2019-2-19 21:18
标题: 51单片机精准延时程序

#include "delay.h"

# pragma optimize(4, SPEED)
void delay_us(unsigned int n)
{
    extern void _nop_(void);
    register unsigned char i = n, j = (n>>8);
    _nop_(); _nop_(); _nop_();
    if ((--i) | j)
    {
        do
        {
            _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();
            if (0xFF == (i--)) j--; else {_nop_(); _nop_(); _nop_(); _nop_(); _nop_();
                         _nop_();};
        } while (i | j);
    }
}
/* 毫秒延时函数 */
void delay_ms(unsigned int n) {while (n--) delay_us(1000);}
作者: devcang    时间: 2019-2-20 07:27
和晶振、及第几代的架构都无关的么?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1