问题描述:延时与流水灯以及接口独立的问题
跑马灯之间出现时间间隙需要定义延迟函数;
流水灯的位改变需要构造流水灯思维;
接口设备不同需要调用位类型。
项目场景:Keil与Proteus配置
Keil:延时调用双for(外调里计时);流水灯调用P0=~(0x01<<i)以实现流水灯;接口独立调用sbit位类型,可定义位(高到低)。
#include<reg51.h>
sbit LED=P1^0;
void delay(unsigned int j)
{
int i;
for (;j > 0;j--)
{
for (i = 100;i > 1;i--);
}
}
void main(void)
{ int i;
P1 = 0x22;
LED = 0 ;
while (1)
{
for (i = 0;i < 8;i++)
{
P0 = ~(0x01 << i);
delay(300);
}
}
}
Proteus:LED外接电阻保护作用