/********************************************************************
汇诚科技
实现功能:延时控制程序
使用芯片:AT89S52
晶振:11.0592MHZ
编译环境:Keil
作者:zhangxinchunleo
网站:www.ourhc.cn
淘宝店:汇诚科技 http://shop36330473.taobao.com
【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!
*********************************************************************/
/********************************************************************
程序说明:
继电器K1闭合约0.2秒后,继电器断开,然后延时约0.2秒再次闭合依次循环!
*********************************************************************/
#include<reg52.h> //库文件
#define uchar unsigned char//宏定义无符号字符型
#define uint unsigned int //宏定义无符号整型
/********************************************************************
初始定义
*********************************************************************/
/*定义八位输入为单片机P1口*/
sbit IN0=P1^0;
sbit IN1=P1^1;
sbit IN2=P1^2;
sbit IN3=P1^3;
sbit IN4=P1^4;
sbit IN5=P1^5;
sbit IN6=P1^6;
sbit IN7=P1^7;
/*定义八位输出为单片机P2口*/
sbit K1=P2^0;
sbit K2=P2^1;
sbit K3=P2^2;
sbit K4=P2^3;
sbit K5=P2^4;
sbit K6=P2^5;
sbit K7=P2^6;
sbit K8=P2^7;
/********************************************************************
延时函数
*********************************************************************/
void delay(uchar t) //当t等于20时,大概延时0.2秒;当t等于10时,大概延时0.1秒;
{
uchar m,n,s;
for(m=t;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}
/********************************************************************
主函数
*********************************************************************/
void main()
{
while(1)
{
K1=0; //继电器K1闭合
delay(20); //调用延时函数
K1=1; //继电器K1断开
delay(20); //调用延时函数
}
}
/********************************************************************
结束
*********************************************************************/
|