相关代码编写
单向流水灯,使用循环语句,控制LED灯以500ms为间隔时间闪烁
#include "REG52.H" //此文件中定义了单片机的一些特殊功能寄存器
#include "INTRINS.H" //此文件中定义了_nop_语句
void Delay500ms(void) //延时函数
{
unsigned char data i, j, k;
_nop_();
i = 4;
j = 205;
k = 187;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
void main()
{
while (1)
{
P2 = 0xFE; // 二进制转换为1111 1110,P2.0端口设置为低电平,低电平点亮
Delay500ms(); //调用延时函数
P2 = 0xFF; // 二进制转换为1111 1111,P2.0端口设置为高电平,高电平灯灭
P2 = 0xFD; // 二进制转换为1111 1101,P2.1端口设置为低电平,低电平点亮
Delay500ms();
P2 = 0xFF; // 二进制转换为1111 1111,P2.1端口设置为高电平,高电平灯灭
P2 = 0xFB; // 二进制转换为1111 1011,P2.2端口设置为低电平,低电平点亮
Delay500ms();
P2 = 0xFF; // 二进制转换为1111 1111,P2.2端口设置为高电平,高电平灯灭
P2 = 0xF7; // 二进制转换为1111 0111,P2.3端口设置为低电平,低电平点亮
Delay500ms();
P2 = 0xFF; // 二进制转换为1111 1111,P2.3端口设置为高电平,高电平灯灭
P2 = 0xEF; // 二进制转换为1110 1111,P2.4端口设置为低电平,低电平点亮
Delay500ms();
P2 = 0xFF; // 二进制转换为1111 1111,P2.4端口设置为高电平,高电平灯灭
P2 = 0xDF; // 二进制转换为1101 1111,P2.5端口设置为低电平,低电平点亮
Delay500ms();
P2 = 0xFF; // 二进制转换为1111 1111,P2.5端口设置为高电平,高电平灯灭
P2 = 0xBF; // 二进制转换为1011 1111,P2.6端口设置为低电平,低电平点亮
Delay500ms();
P2 = 0xFF; // 二进制转换为1111 1111,P2.6端口设置为高电平,高电平灯灭
P2 = 0x7F; // 二进制转换为0111 1111,P2.7端口设置为高电平,高电平灯灭
Delay500ms();
}
}