键控流水灯

要求:

【要求】
首次按压K1可产生“自下向上”的流水灯运动:K1为“启动键’K2 为“停止键”按压K2可终止流水灯的运动;K3和K4为“方向键”,分别产生“自上向下”和“自下向上”运动。

代码

#include <reg51.h>

unsigned char code led[]={0xfe,0xfd,0xfb,0xf7};

//花样亮灯编码

void delay(unsigned int i){

unsigned int j=0;

for(;i>0;i--)

for(;j<125;j++);        

}

void main(){

char run=0;//启动标志

char dir=0;//方向标志

char i;

while(1){

switch(P0&0x0f){

case 0x0e:run=1;break;

case 0x0d:run=0,dir=0;break;

case 0x0b:dir=1;break;

case 0x07:dir=0;break;

}

if(run)

if(dir)

for(i=0;i<=3;i++){

P2=led[i];

delay(500);

}

else

for(i=3;i>=0;i--){

P2=led[i];

delay(500);

}

else

P2=0x0f ;

}

}                

纵览图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值