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

QQ登錄

只需一步,快速開始

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

單片機(jī)電子時(shí)鐘,數(shù)碼管顯示不全

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
不知道為什么數(shù)碼管顯示不完全。

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
void delay_ms(unsigned int);
uchar code xianshi[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code weixuan[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
int num=0;
int sec=22,secg=0,secs=0;
int min=5,ming=0,mins=0;
int hour=15,hourg=0,hours=0;
int i;
void zd1(){
         TMOD=0X01;
         TH0=(65536-50000)/256;   //TH0=(65536-50000)/256;
     TL0=(65536-50000)%256;   //TL0=(65536-50000)%256;
     ET0=1;
     TR0=1;


}

void main(){
   IT0=1;
   EX0=1;
   EA=1;
   IT1=1;
   EX1=1;
            zd1();
         
     while(1){           
                      secg=sec%10;
         secs=sec/10;
         ming=min%10;
         mins=min/10;
         hourg=hour%10;
         hours=hour/10;
           

   P0= xianshi[hours];
   P2=weixuan[0];
   delay_ms(5);
         P0= xianshi[hourg];
   P2=weixuan[1];
   delay_ms(5);
         P0= xianshi[mins];
   P2=weixuan[2];
   delay_ms(5);
         P0= xianshi[ming];
   P2=weixuan[3];
            delay_ms(5);  
          P0= xianshi[secs];
   P2=weixuan[4];
            delay_ms(5);
          P0= xianshi[secg];
   P2=weixuan[5];
            delay_ms(5);  
             }
}

void time0() interrupt 1{
          num++;
         TH0=(65536-50000)/256;   
     TL0=(65536-50000)%256;  
         if(num==20){
          num=0;
          sec++;
         }
          if(sec==60){
          sec=0;
          min++;
         
         }
         if(min==60){
         min=0;
         hour++;
         }
         if(hour==24){
                         hour=0;
         }
        
}

              void delay_ms(unsigned int dt)//延時(shí)函數(shù)
{
register unsigned char bt,ct;
for (;dt;dt--)
   for (ct=2;ct;ct--)
       for (bt=250;--bt;);
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:435708 發(fā)表于 2019-7-17 18:36 | 只看該作者
有可能 你用的共陽數(shù)碼管 但是xianshi【】 用的共陰的段碼
回復(fù)

使用道具 舉報(bào)

板凳
ID:155507 發(fā)表于 2019-7-17 18:46 | 只看該作者
你這個(gè)數(shù)碼管需要 消隱

   P0= xianshi[hours];
   P2=weixuan[0];
   delay_ms(5);
P0=0x00;  //消隱
   P0= xianshi[hourg];
   P2=weixuan[1];
   delay_ms(5);
P0=0x00;  //消隱



回復(fù)

使用道具 舉報(bào)

地板
ID:105364 發(fā)表于 2019-7-17 23:11 | 只看該作者
數(shù)碼管共陽共陰弄反,數(shù)碼管顯示的是605261吧。
回復(fù)

使用道具 舉報(bào)

5#
ID:105364 發(fā)表于 2019-7-17 23:20 | 只看該作者
不是數(shù)碼管用反。是代碼沒消隱 問題,如板凳所說。
回復(fù)

使用道具 舉報(bào)

6#
ID:555516 發(fā)表于 2019-7-18 07:16 來自手機(jī) | 只看該作者
1339337425 發(fā)表于 2019-7-17 18:36
有可能 你用的共陽數(shù)碼管 但是xianshi【】 用的共陰的段碼

我用的應(yīng)該是共陰的數(shù)碼管,之前我逐個(gè)顯示是沒問題的
回復(fù)

使用道具 舉報(bào)

7#
ID:555516 發(fā)表于 2019-7-18 07:24 來自手機(jī) | 只看該作者
angmall 發(fā)表于 2019-7-17 18:46
你這個(gè)數(shù)碼管需要 消隱

   P0= xianshi[hours];

哇,,解決了,謝謝,但這個(gè)消隱不怎么看得懂,我的是共陰數(shù)碼管如果p0=0x00不就都不顯示嗎?
回復(fù)

使用道具 舉報(bào)

8#
ID:61950 發(fā)表于 2019-9-7 18:48 | 只看該作者
試試看能不能用
回復(fù)

使用道具 舉報(bào)

9#
ID:648705 發(fā)表于 2019-11-26 16:34 | 只看該作者
為什么下載不了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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