專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

單片機(jī)控制三盞LED燈亮滅的程序

作者:佚名   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2010年07月19日   【字體:
**************************控制要求*****************************

按下p1.0一次 LED1 亮 ,再按一次 LED1   LED2 亮    ,

再按一次 LED1   LED2  LED3 亮 ,再按一次 三盞全部熄滅。

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar num;
sbit p10=P1^0;   /*按鍵*/
sbit p01=P0^1;   /*LED1*/
sbit p02=P0^2;   /*LED2*/
sbit p03=P0^3;   /*LED3*/


void delay(uint xms)//延時(shí)子涵數(shù)
{
uint k,j;
for(k=xms;k>0;k--)
for(j=1;j>0;j--);
}

void main()
{
while(1)
    {
if(p10==0) //按鍵按下
{
delay(10); //延時(shí)消抖10毫秒
      if(p10==0)
{           
      num++;
while(p10==0);//等待按鍵釋放                 
}
}
if(num==0)
{
p03=1;
p02=1;
p01=1;
}
if(num==1)
{
p03=1;
p02=1;
p01=0;
}                
if(num==2)
{
p03=1;
p01=0;
p02=0;
}
if(num==3)
{
p02=0;
p01=0;
p03=0;
}
if(num==4)
{
num=0;
}
    }
}
關(guān)閉窗口

相關(guān)文章