单片机实验AT89C51单片机实验的IO并口输出实验中使相邻4个LED为1组两组LED每05秒交替闪亮一次周而复始循环的程序
以下是AT89C51单片机的I/O并口输出实验中实现相邻4个LED交替闪亮的程序:
#include <reg51.h> //AT89C51特定的头文件
sbit LED1 = P1^0; //定义LED引脚
sbit LED2 = P1^1;
sbit LED3 = P1^2;
sbit LED4 = P1^3;
void delay(unsigned int time) //延时函数
{
unsigned int i, j;
for(i = time; i > 0; i--)
for(j = 125; j > 0; j--);
}
void main()
{
while(1) //循环执行
{
LED1 = 1; //第一组LED亮
LED2 = 1;
LED3 = 0; //第二组LED灭
LED4 = 0;
delay(500); //延时0.5秒
LED1 = 0; //第一组LED灭
LED2 = 0;
LED3 = 1; //第二组LED亮
LED4 = 1;
delay(500); //延时0.5秒
}
}
程序中使用了一个循环实现LED的交替闪烁,每次循环都先让第一组LED亮,第二组LED灭,然后延时0.5秒,再让第一组LED灭,第二组LED亮,再延时0.5秒,周而复始循环执行。其中,延时函数delay使用了一个嵌套的for循环实现,具体的延时时间可以根据需要进行调整
原文地址: https://www.cveoy.top/t/topic/c3U5 著作权归作者所有。请勿转载和采集!