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

QQ登錄

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

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

求助 誰(shuí)在幫我看看,于數(shù)碼管顯示問(wèn)題。

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
#
ID:194033 發(fā)表于 2017-5-6 00:48 來(lái)自手機(jī) | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |正序?yàn)g覽 |閱讀模式
用hc139控制四個(gè)數(shù)碼管動(dòng)態(tài)顯示,為啥最后一位一直都是8,而且四個(gè)數(shù)碼管顯示一直都不變。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

17#
ID:194033 發(fā)表于 2017-5-6 17:20 | 只看該作者
回復(fù)

使用道具 舉報(bào)

16#
ID:194033 發(fā)表于 2017-5-6 17:11 | 只看該作者
這是數(shù)碼管顯示的程序
回復(fù)

使用道具 舉報(bào)

15#
ID:194033 發(fā)表于 2017-5-6 17:10 | 只看該作者
#include<reg51.h>
#include"SEGx8.H"
#include"DELAY.H"
#include"DS1302.H"
#include"NONGLI.H"

#define         SEGx8_Port  P0  //硬件端口定義

extern unsigned char dtime[7][2];
extern unsigned char ntime[3][2];

#define uchar unsigned char
#define uint unsigned int

sbit E1=P2^0; //定義數(shù)碼管使能引腳1
sbit E2=P2^1; //定義數(shù)碼管使能引腳2
sbit E3=P2^2; //定義數(shù)碼管使能引腳3
sbit E4=P2^3; //定義數(shù)碼管使能引腳4
sbit E5=P1^0; //定義數(shù)碼管使能引腳5
sbit E6=P1^1; //定義數(shù)碼管使能引腳6

unsigned char SEGx8_code[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char SEGx8_bits[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

/*--------------------------底層驅(qū)動(dòng)-----------------------------*/
void SEGx8_WEI(unsigned char _Numb)        //位選
{
   
        switch(_Numb)
        {
                case 0: P2=0X00;break;
                case 1: P2=0X01;break;
                case 2: P2=0X02;break;
                case 3: P2=0X03;break;
                case 4: P2=0X04;break;
                case 5: P2=0X05;break;
                case 6: P2=0X06;break;
                case 7: P2=0X07;break;
                case 8: P2=0X08;break;
                case 9: P2=0X09;break;
                case 10: P2=0X0A;break;
                case 11: P2=0X0B;break;
                case 12: P2=0X0C;break;
                case 13: P2=0X0D;break;
                case 14: P2=0X0E;break;
                case 15: P2=0X0F;break;
                case 16: P1=0X00;break;
                case 17: P1=0X01;break;
                case 18: P1=0X02;break;
                case 19: P1=0X03;break;
                default :break;
        }

               
}

void SEGx8_DUAN(unsigned char _Numb)        //位選
{
   
        switch(_Numb)
        {
                case 0: SEGx8_Port=0X3f;break;
                case 1: SEGx8_Port=0X06;break;
                case 2: SEGx8_Port=0X5b;break;
                case 3: SEGx8_Port=0X4f;break;
                case 4: SEGx8_Port=0X66;break;
                case 5: SEGx8_Port=0X6d;break;
                case 6: SEGx8_Port=0X7d;break;
                case 7: SEGx8_Port=0X07;break;
                case 8: SEGx8_Port=0X7f;break;
                case 9: SEGx8_Port=0X6f;break;
                default :break;
        }

               
}

/*----------------------------實(shí)際應(yīng)用------------------------*/
void showtime(void)
{       
                    unsigned char i,d1,d2,m1,m2;
                        Conversion(0,YEAR,MONTH,DATE);
                        m1=month_moon/10;
                        m2=month_moon%10;
                        d1=day_moon/10;
                        d2=day_moon%10;
                       
                        for(i=0;i<10;i++)
                        {
                                SEGx8_WEI(0);SEGx8_Port=0X5b;delayms(1);//顯示年
                                SEGx8_WEI(1);SEGx8_Port=0X3f;delayms(1);
                                SEGx8_WEI(2);SEGx8_DUAN(dtime[5][0]-0x30); delayms(1);
                                SEGx8_WEI(3);SEGx8_DUAN(dtime[5][1]-0x30); delayms(1);
                                                               
                        SEGx8_WEI(4);SEGx8_DUAN(dtime[4][0]-0x30);delayms(1);//顯示月
                         SEGx8_WEI(5);SEGx8_DUAN(dtime[4][1]-0x30);delayms(1);

                            SEGx8_WEI(6);SEGx8_DUAN(dtime[3][0]-0x30);delayms(1);//顯示日
                            SEGx8_WEI(7);SEGx8_DUAN(dtime[3][1]-0x30);delayms(1);
                               
                            SEGx8_WEI(8);SEGx8_DUAN(dtime[2][0]-0x30);delayms(1); //顯示時(shí)
                             SEGx8_WEI(9);SEGx8_DUAN(dtime[2][1]-0x30);delayms(1);
                                                                                                                                                                         
                                SEGx8_WEI(10);SEGx8_DUAN(dtime[1][0]-0x30);delayms(1);//顯示分
                                SEGx8_WEI(11);SEGx8_DUAN(dtime[1][1]-0x30);delayms(1);
                                       
                            SEGx8_WEI(12);SEGx8_DUAN(dtime[0][0]-0x30);delayms(1);//顯示秒
                             SEGx8_WEI(13);SEGx8_DUAN(dtime[0][1]-0x30);delayms(1);
                          
                                SEGx8_WEI(14);SEGx8_DUAN(dtime[6][0]-0x30);delayms(1);//顯示星期
                                SEGx8_WEI(15);SEGx8_DUAN(dtime[6][1]-0x30);delayms(1);
                               
                                SEGx8_WEI(16);SEGx8_DUAN(m1-0x30); delayms(1);//農(nóng)歷月
                                SEGx8_WEI(17);SEGx8_DUAN(m2-0x30); delayms(1);

                                SEGx8_WEI(18);SEGx8_DUAN(d1-0x30); delayms(1);//農(nóng)歷日
                                SEGx8_WEI(19);SEGx8_DUAN(d2-0x30); delayms(1);                               

                        }       
               
               
}

回復(fù)

使用道具 舉報(bào)

14#
ID:111634 發(fā)表于 2017-5-6 14:51 | 只看該作者
本帖最后由 zl2168 于 2017-5-6 14:52 編輯

實(shí)例57  74LS139選通4位LED數(shù)碼管動(dòng)態(tài)顯示
實(shí)例57 74LS139選通4位共陰LED數(shù)碼管動(dòng)態(tài)顯示.rar (48.12 KB, 下載次數(shù): 3)
Proteus仿真一下,確認(rèn)有效。
以上摘自張志良編著《80C51單片機(jī)仿真設(shè)計(jì)實(shí)例教程——基于Keil CProteus》清華大學(xué)出版社ISBN 978-7-302-41682-1,內(nèi)有常用的單片機(jī)應(yīng)用100案例,用于仿真實(shí)驗(yàn)操作,電路與程序真實(shí)可靠可信可行。書(shū)中電路和程序設(shè)計(jì)有詳細(xì)說(shuō)明,程序語(yǔ)句條條有注解。


回復(fù)

使用道具 舉報(bào)

13#
ID:153108 發(fā)表于 2017-5-6 13:53 | 只看該作者
你還是先把程序和原理圖放出來(lái)吧 ,不然,我們也沒(méi)辦法幫你找問(wèn)題
回復(fù)

使用道具 舉報(bào)

12#
ID:197274 發(fā)表于 2017-5-6 13:30 | 只看該作者
來(lái)個(gè)模擬圖·電路看看 是實(shí)物還是模擬?
回復(fù)

使用道具 舉報(bào)

11#
ID:197257 發(fā)表于 2017-5-6 13:27 | 只看該作者
全部顯示8表明數(shù)碼管的abcdefg都被點(diǎn)亮,檢查一下程序
回復(fù)

使用道具 舉報(bào)

10#
ID:164722 發(fā)表于 2017-5-6 13:17 | 只看該作者
動(dòng)態(tài)刷新
回復(fù)

使用道具 舉報(bào)

9#
ID:197262 發(fā)表于 2017-5-6 12:47 | 只看該作者
什么都沒(méi)有給|?
回復(fù)

使用道具 舉報(bào)

8#
ID:146492 發(fā)表于 2017-5-6 11:07 | 只看該作者
就根據(jù)你的提問(wèn)來(lái)大致說(shuō)下:1找硬件問(wèn)題,2找程序問(wèn)題。3程序下載至硬件協(xié)議/通訊/。
回復(fù)

使用道具 舉報(bào)

7#
ID:194033 發(fā)表于 2017-5-6 10:47 來(lái)自手機(jī) | 只看該作者
圖發(fā)不上來(lái)啊
回復(fù)

使用道具 舉報(bào)

6#
ID:149451 發(fā)表于 2017-5-6 10:10 | 只看該作者
這問(wèn)題問(wèn)的,都不知如何幫你
回復(fù)

使用道具 舉報(bào)

5#
ID:192235 發(fā)表于 2017-5-6 08:58 | 只看該作者
最后一位顯示8,應(yīng)該是你沒(méi)消隱導(dǎo)致兩個(gè)數(shù)顯示重疊了,具體的還得看你的程序,能不能發(fā)一下你的程序好幫你解決
回復(fù)

使用道具 舉報(bào)

地板
ID:194033 發(fā)表于 2017-5-6 08:50 來(lái)自手機(jī) | 只看該作者
顯示5558的那四個(gè)數(shù)碼管,程序太多,分模塊寫(xiě)的。怎么發(fā)呀。

P70506-084935.jpg (95.2 KB, 下載次數(shù): 127)

P70506-084935.jpg
回復(fù)

使用道具 舉報(bào)

板凳
ID:194033 發(fā)表于 2017-5-6 08:47 來(lái)自手機(jī) | 只看該作者
程序太多,分模塊寫(xiě)的
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:187614 發(fā)表于 2017-5-6 08:43 | 只看該作者
應(yīng)該不會(huì),要么都不對(duì)要么全對(duì),要學(xué)好C51,先學(xué)會(huì)單步調(diào)試。試試單步調(diào)試排除軟件問(wèn)題,軟件沒(méi)問(wèn)題再檢查硬件是否正確。
回復(fù)

使用道具 舉報(bào)

樓主
ID:142559 發(fā)表于 2017-5-6 03:54 | 只看該作者
程序呢,還有硬件圖
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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