#includereg52h #define LED P1void delayunsigned int x unsigned int ij; fori=0;ix;i++ forj=0;j100;j++;void main unsigned char flag=0; unsigned char i; while1 ifflag
#include<reg52.h> //51单片机头文件
#define LED P1 //定义LED灯接口为P1口
void delay(unsigned int x) //定义延时函数 { unsigned int i,j; for(i=0;i<x;i++) //外层循环 for(j=0;j<100;j++); //内层循环 }
void main() //主函数 { unsigned char flag=0; //定义标志位为0 unsigned char i;
while(1) //进入循环
{
if(flag ==0) //如果标志位为0
{
for(i=0;i<8;i++) //LED灯从第0个灯亮到第7个灯,循环8次
{
LED=~(1<<i); //通过位运算将P1口对应的LED灯点亮
delay(500); //延时500ms
}
}
else //如果标志位不为0
{
for(i=7;i>=0;i--) //LED灯从第7个灯亮到第0个灯,循环8次
{
LED=~(1<<i); //通过位运算将P1口对应的LED灯点亮
delay(500); //延时500ms
}
}
}
}
void key_interrupt() interrupt 1 //当INT0发生中断时,进入中断函数 { static unsigned char flag =0; //定义静态变量flag并初始化为0 flag=!flag; //将flag取反
原文地址: https://www.cveoy.top/t/topic/fegI 著作权归作者所有。请勿转载和采集!