找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1092|回复: 1
打印 上一主题 下一主题
收起左侧

51单片机精准延时程序

[复制链接]
跳转到指定楼层
楼主
ID:478268 发表于 2019-2-19 21:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

#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);}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:277550 发表于 2019-2-20 07:27 | 只看该作者
和晶振、及第几代的架构都无关的么?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表