题目如下
首先让8路LED指示灯闪烁三遍后熄灭,接着依次点亮LED灯,最后依次熄灭指示灯,循环上述功能。
代码如下
#include"reg52.h"
sbit HC138_A = P2^5;
sbit HC138_B = P2^6;
sbit HC138_C = P2^7;
void Delay(unsigned int t)
{
while(t--);
while(t--);
}
void main()
{
while(1)
{
unsigned char i;//注意,规定变量要放在最前面
HC138_A = 0;
HC138_B = 0;
HC138_C = 1;
for(i = 0;i < 3;i++)//forÓÃÓÚÑ»·
{
P0 = 0X00;
Delay(60000);
Delay(60000);
P0 = 0XFF;
Delay(60000);
Delay(60000);
}
for(i = 1;i <= 8;i++)//for用于循环
{
P0 =0XFF << i;
Delay(60000);
}
for(i = 1;i <= 8;i++)
{
P0 =~(0XFF << i);//与点亮相反,逐次熄灭,这里体会取反的妙用
Delay(60000);
}
}
}