亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2027|回復: 2
打印 上一主題 下一主題
收起左側

問一個關于單片機中斷的問題,兩個方向的交通燈

[復制鏈接]
跳轉到指定樓層
樓主
ID:510031 發表于 2019-4-13 22:04 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我想做一個兩個方向的交通燈,紅綠(0xed)——黃黃(0xf3)——綠紅(0xde),用定時器和中斷來做
但是結果是:一直只有2個燈亮,沒有變化。
調試發現不會進入子程序。

單片機代碼如下:
#include<reg52.h>

void Init_Timer(void)    //初始化
{    TMOD|=0x01;
    TH0=0x00;
    TL0=0x00;
    EA=1;         //總中斷//
    ET0=1;        //定時器0允許//
    TR0=1;        //T0啟停控制//
}
void display()
{    static unsigned char i;
   
    if(0<=i<=99)
    {
      P1=0xed;
     }
    else if(100<=i<=139)
     {   
         P1=0xf3;
     }
    else if(140<=i<=239)
     {   
         P1=0xde;
     }
       else if(i>239)
     {   
         i=0;
     }
     i++;
}
void Timer_isr(void) interrupt 1
{   
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        display();
}
void main()
{
    Init_Timer();
    while(1);
}
請問哪位能幫我看一下



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

使用道具 舉報

沙發
ID:213173 發表于 2019-4-14 08:03 | 只看該作者
if 括號內表達式錯誤。因為在任何時間都能滿足 if(0<=i<=99) 的判斷條件,不可能進入下一條判斷語句。
正常表達式應該這樣寫 if(0<=i && i<=99),原來 if(0<=i<=99)的寫法相當于 if(0<=i || i<=99)。

#include<reg52.h>

void Init_Timer(void)    //初始化
{
    TMOD|=0x01;
    TH0=0x00;
    TL0=0x00;
    EA=1;         //總中斷//
    ET0=1;        //定時器0允許//
    TR0=1;        //T0啟?刂//
}
void display()
{
    static unsigned char i;
   
        if(0<=i && i<=99)
        {
                P1=0xed;
        }
        else if(100<=i && i<=139)
        {   
                P1=0xf3;
        }
        else if(140<=i && i<=239)
        {   
                P1=0xde;
        }
        else if(i>239)
        {   
                i=0;
        }
        i++;
}
void Timer_isr(void) interrupt 1
{   
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        display();
}
void main()
{
    Init_Timer();
    while(1);
}
回復

使用道具 舉報

板凳
ID:510031 發表于 2019-4-14 10:37 | 只看該作者
wulin 發表于 2019-4-14 08:03
if 括號內表達式錯誤。因為在任何時間都能滿足 if(0

嗯嗯!太感謝老師了,看來還是基礎不扎實,謝謝老師指出錯誤
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表