0
点赞
收藏
分享

微信扫一扫

【51单片机】【STC89C52(A2版)】3-4独立按键控制LED移位

code_balance 2023-01-29 阅读 85

#include <STC89C5xRC.H>

void Delay(unsigned int xms);

unsigned char LEDNum;


void main()

{

P2=~0X01;

while(1)

{

 if(P31==0)

 {

  Delay(20);

  while(P31==0);

  Delay(20);

   

  LEDNum++;

  if(LEDNum>=8)

    LEDNum=0;

  P2=~(0x01<<LEDNum);

 }

 else if(P30==0)

 {

  Delay(20);

  while(P30==0);

  Delay(20);

   

  if(LEDNum==0)

    LEDNum=7;

  else

   LEDNum--;

  P2=~(0x01<<LEDNum);

 }

 else if(P32==0)

 {

  Delay(20);

  while(P32==0);

  Delay(20);

   

  LEDNum++;

  if(LEDNum>=8)

    LEDNum=0;

  P2=~(0x01<<LEDNum);

 }

 else if(P33==0)

 {

  Delay(20);

  while(P33==0);

  Delay(20);

   

  if(LEDNum==0)

    LEDNum=7;

  else

   LEDNum--;

  P2=~(0x01<<LEDNum);

 }

}

}

void Delay(unsigned int xms)  //@12.000MHz

{

unsigned char i, j;

while(xms--)

{

 i = 2;

 j = 239;

 do

 {

  while (--j);

 } while (--i);

}

}

举报

相关推荐

0 条评论