久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

交通信號燈程序在單片機開發板上的實現,數碼管ok LED顯示有問題

[復制鏈接]
跳轉到指定樓層
樓主
各位大佬,下邊程序是我在開發板上實現交通燈的程序,我發現數碼管顯示是沒有問題的,但就是對應的LED是沒有反應的,在開發板上顯示出來的是數碼管在進行倒計時,但是LED只是亮了一個,其他都沒亮(以很快的頻率閃爍),下圖為開發板,附錄為開發板原理圖

單片機源程序如下:
#include <REGX52.H>
#define uint unsigned int
#define uchar unsigned char
uchar flag1=0,flag2=0,flag3=0;
uchar table1[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uchar table2[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar table3[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
uchar dig_num=60,num1,num;
sbit dula=P2^6;
sbit wela=P2^7;
sbit red=P1^0;
sbit green=P1^3;
sbit yellow=P1^6;
void delayms(uint xms)
{
        uint i,j;
        for(i=xms;i>0;i--)
        for(j=110;j>0;j--);
}
void display(dig)
{
        uint shi,ge;
        shi=dig/10;
        ge=dig%10;
        
        P0=0xff;
        wela=1;
        P0=0xee;
        wela=0;
        
        
        dula=1;
        P0=table2[shi];
        dula=0;
        delayms(3);
        
        P0=0xff;
        wela=1;
        P0=0xdd;
        wela=0;
        
        
        dula=1;
        P0=table2[ge];
        dula=0;
        delayms(3);
        
}
void INIT()
{
        TMOD=0x01;
        TH0=(65536-10000)/256;
        TL0=(65536-10000)%256;
        EA=1;
        ET0=1;
        TR0=1;
}
void T0_time()interrupt 1
{
        TH0=(65536-10000)/256;
        TL0=(65536-10000)%256;
        num++;

        
}
void main()
{
        INIT();
        while(1)
        {
                display(dig_num);
                if(num==50)
                {
                        num=0;
                        dig_num--;
                        if(dig_num<=0)
                        {
                                dig_num=60;
                        }
                        if(0<dig_num<20)
                        {               
                                red=0;
                                green=0;
                                yellow=0;
                                //delayms(5);
                        }
                        if(20<dig_num<40)
                        {
                                red=1;
                                green=1;
                                yellow=0;
                                //delayms(5);
                        }
                        if(40<dig_num<60)
                        {
                                red=1;
                                green=0;
                                yellow=1;
                                //delayms(5);
                        }
          }
}
}                        


IMG_20210910_110519.jpg (112.89 KB, 下載次數: 66)

IMG_20210910_110519.jpg

TX-1C增強版原理圖.pdf

943.37 KB, 下載次數: 3

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

使用道具 舉報

沙發
ID:213173 發表于 2021-9-11 06:37 | 只看該作者
                display(dig_num);
                if(num>=50)
                {
                        num=0;
                        dig_num--;
                        if(dig_num<=0)
                        {
                                dig_num=60;
                        }
                        if(dig_num<=20)
                        {               
                                red=0;
                                green=0;
                                yellow=0;
                        //delayms(5);
                        }
                        if(dig_num>20 && dig_num<=40)
                        {
                                red=1;
                                green=1;
                                yellow=0;
                                //delayms(5);
                        }
                        if(dig_num>40)
                        {
                                red=1;
                                green=0;
                                yellow=1;
                                //delayms(5);
                        }
                }
回復

使用道具 舉報

板凳
ID:123289 發表于 2021-9-11 09:22 | 只看該作者
畫個邏輯框圖看看
回復

使用道具 舉報

地板
ID:961087 發表于 2021-9-14 11:49 | 只看該作者
wulin 發表于 2021-9-11 06:37
display(dig_num);
                if(num>=50)
                {

可以了可以了,想請問一下為啥用了“與”就能把LED點亮了,我自己寫的那種方式單片機無法識別呢,
回復

使用道具 舉報

5#
ID:624769 發表于 2021-9-14 12:26 | 只看該作者
王披風 發表于 2021-9-14 11:49
可以了可以了,想請問一下為啥用了“與”就能把LED點亮了,我自己寫的那種方式單片機無法識別呢,

因為,你那種寫法是錯誤的,你只要Debug一下,看一下匯編代碼就知道為什么不能那么寫了。
回復

使用道具 舉報

6#
ID:961087 發表于 2021-9-15 15:01 | 只看該作者
wulin 發表于 2021-9-11 06:37
display(dig_num);
                if(num>=50)
                {

感謝,成功了,已經調試完畢,太感謝了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区二区 | 91精品国产一区二区三区 | 五月婷婷在线播放 | 伊人网站在线观看 | 欧美激情精品久久久久久 | 久久精品国产一区二区电影 | 色婷婷婷婷色 | 久久九九色 | 玖玖玖在线观看 | 在线亚洲免费 | 成人在线精品 | 毛片a级毛片免费播放100 | 99久久精品国产毛片 | 亚洲激情视频在线 | 亚洲国产中文字幕 | 日韩欧美一区二区三区四区 | 午夜色婷婷 | 国产精品片aa在线观看 | 奇米av| 亚洲人免费视频 | 精品一区二区久久久久久久网站 | 伊人网综合在线观看 | 91看片在线观看 | 全免费a级毛片免费看视频免 | 爱爱视频在线观看 | 日韩在线一区二区 | 一区欧美 | 亚洲国产精品一区二区三区 | 国产一区二区在线播放 | 一级在线毛片 | 久久久精彩视频 | 国内自拍偷拍一区 | 美人の美乳で授乳プレイ | 国产免费一区二区 | 久久综合久久自在自线精品自 | 精品欧美乱码久久久久久1区2区 | 精品三级在线观看 | 中文字幕高清 | 久久午夜视频 | 刘亦菲国产毛片bd | 精品美女在线观看 |