找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2793|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

Proteus仿真實(shí)現(xiàn)51單片機(jī)控制4511實(shí)現(xiàn)交通燈功能(運(yùn)用外部中斷與內(nèi)部中斷)數(shù)碼....

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主

#include <reg51.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
unsigned char code SEG2[6]={0xfe,0xfd,0xfb,0xf7};
uchar t=0,x=0,y=0;
uchar a,b,c,d;

void delay(unsigned int i)
{
    unsigned int j;
    for(i;i>0;i--)
        for(j=300;j>0;j--);
}
void zhongduan1()//50ms中斷
{
   EA=1;
   ET0=1;
   TMOD=0x01;
   TH0=0x3c;
   TL0=0xb0;
   //TR0=1;
}
void zhongduan2()
{
      EA=1;
      EX0=1;
      IT0=1;
      EX1=1;
      IT1=1;
}

void ledout(uchar out0,out1)//
{
           if((20<=x&&x<25)&&(t>10))
           {  P0=0;P1=0xff;delay(1);delay(1);    }
            else
            {
            P0=(out0)/10;
    P1=SEG2[0];
    delay(1);
    P1=0xff;
    P0=(out0)%10;;
    P1=SEG2[1];
    delay(1);
    P1=0xff;
            }
            
           if((50<=x&&x<55)&&(t>10))
           { P0=0;P1=0xff;delay(1); delay(1); }
            else
            {
    P0=(out1)/10;
    P1=SEG2[2];
    delay(1);
    P1=0xff;
    P0=(out1)%10;;
    P1=SEG2[3];
    delay(1);
    P1=0xff;
            }
}
void mart()
{
uchar i;
if(x<20)i=1;
if(20<=x&&x<25)i=2;
if(25<=x&&x<30)i=3;
if(30<=x&&x<50)i=4;
if(50<=x&&x<55)i=5;
if(55<=x)i=6;
switch(i)
{
   case 1:
         ledout(25-x,30-x);
         P2=0xED;
         //P2=0x99;
   break;
         case 2:
         ledout(25-x,30-x);
         P2=0xED;
         if(t>10){P2=0xEF;}
   break;
   case 3:
         ledout(30-x,30-x);
         P2=0xEB;
   break;
         case 4:
         ledout(60-x,55-x);
         P2=0xDE;
   break;
   case 5:
         ledout(60-x,55-x);
         P2=0xDE;
         if(t>10){P2=0xFE;}
   break;
         case 6:
         ledout(60-x,60-x);
         P2=0xBE;
   break;
    }      
}

void main( )
{
    zhongduan1();
    zhongduan2();
   
    while(1)
    {
     if(y!=0)
     mart();

    }
}
仿真.zip (25.9 KB, 下載次數(shù): 34)

交通燈.zip (14.22 KB, 下載次數(shù): 23)



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表