/**************************************************
项目名称:流水灯
作 者:Horse
日 期:2020/3/31
项目功能:8个LED灯连接在单片机的P2端口,实现循环流水点亮的效果
**************************************************/
#include "reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;//对数据类型进行声明定义
#define GPIO_LED P2
/**************************************************
函数名称:Delay(u16 i)
函数作用:延时
函数输入:u16类型的参数i
函数输出:无
作 者:Horse
**************************************************/
void Delay(u16 i)
{
while(i--);
}
/**************************************************
函数名称:main()
函数作用:主函数
函数输入:无
函数输出:无
作 者:Horse
**************************************************/
void main()
{
GPIO_LED=0xfe;//给初始化值 换算成二进制是1111 1110
while(1)
{
Delay(20000);
GPIO_LED<<=1;//左移一位 该语句等效于 GPIO_LED=GPIO_LED<<1
GPIO_LED|=0x01;//最后一位补1,该语句等效于 GPIO_LED=GPIO_LED|0x01 符号"|"表示"或"
if(GPIO_LED==0x7f)
{
Delay(20000);
GPIO_LED=0xfe;
}
}
}