延迟函数简介
每一个系统中,延迟是必不可少的。而有些延迟却不是需要那么精确,所以我们并不需要使用定时器/计数器来实现。所以,这里我们简单的设置3个延迟系统函数,方便调用。他们分别为10us、1ms、1s。
为什么是10us?
51一个机器周期包含了12个时钟周期,而大部分单片机晶振为11.0582M(为了方便分频提供给串口通信使用,下一节会说),所以分频后,一个机器周期肯定会小于1us,同时c语言函数的调用也会增加时间。如何必须使用,建议调用 nop() 函数(intrins.h中定义),即一个时钟周期。
具体代码
头文件定义
#ifndef __DELAY_H
#define __DELAY_H
#include "reg52.h"
#include