標(biāo)題: 單片機(jī)按鍵控制流水燈程序(proteus+keil) [打印本頁(yè)]

作者: hahaqinyou    時(shí)間: 2020-1-30 19:39
標(biāo)題: 單片機(jī)按鍵控制流水燈程序(proteus+keil)
#include "reg52.h"
#include "intrins.h"
typedef unsigned char u8;
typedef unsigned int u16;

sbit led1=P1^0;
sbit led2=P1^1;
sbit led3=P1^2;
sbit led4=P1^3;
sbit key1=P3^0;
sbit key2=P3^2;
sbit key3=P3^4;
sbit key4=P3^6;

void delay(u16 i)
{
    while(i--)
          ;
}

void keypros()
{  
  u8 i;
        delay(1000);
  if(key1==0)
        {
        P1=0xfe;    //1111 1110                D0亮 其他不亮
  delay(50000);
   while (1)
   {
     for(i=0;i<7;i++)
           {
                  P1=_crol_(P1,1);        // 左移 0xfe 1111 1011     1110 1111   1011 1111
                  delay(50000);
           }
           //0111 1111
           for(i=0;i<7;i++)
           {
                  P1=_cror_(P1,1);   //右移
                  delay(50000);
           }
   }
  }while(!key1);
        
        delay(1000);
        if(key3==0)
        {
                P1=0xfe;    //1111 1110                D0亮 其他不亮
    delay(50000);
    while (1)
    {
     for(i=0;i<7;i++)
           {
                  P1=_crol_(P1,1);        // 左移 0xfe 1111 1011     1110 1111   1011 1111
                  delay(50000);
           }
          }while(!key3);
        }
        
        delay(1000);
        if(key4==0)
        {
                P1=0x7f;
                delay(50000);
                while(1)
                {
                         for(i=0;i<7;i++)
             {
                     P1=_cror_(P1,1);   //右移
                     delay(50000);
             }
                }
        }while(!key4);
               
        
}

            
void main()
{
        P1=0xff;
  while(1)
  {
    keypros();
  }
}


仿真圖如下:




全部資料51hei下載地址:
按鍵控制LED燈.rar (55.05 KB, 下載次數(shù): 118)


作者: 劉新語(yǔ)    時(shí)間: 2021-6-2 19:03
為啥復(fù)位不好使
作者: 12347UU    時(shí)間: 2021-12-9 10:21
劉新語(yǔ) 發(fā)表于 2021-6-2 19:03
為啥復(fù)位不好使

應(yīng)該接到p3.1




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1