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

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

QQ登錄

只需一步,快速開始

搜索
查看: 4354|回復(fù): 9
收起左側(cè)

一上電數(shù)碼管要顯示一段時(shí)間的8才開始變化 求解決

[復(fù)制鏈接]
ID:513931 發(fā)表于 2019-4-24 11:48 來自觸屏版 | 顯示全部樓層 |閱讀模式
50黑幣
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit k = P3;
sbit ch=P3^0;
uchar c = 0;
uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void DelayMS(uint ms)
{
        uchar i;
        while(ms--) for(i=0;i<120;i++);
}
void main()
{
   
        SBUF = 0x00;//賦初值
        SCON = 0x00;// 工作在方式0
        TMOD=0x01;                               
        TH0=(65536-50000)/256;       
        TL0=(65536-50000)%256;
        PCON = 0x00;//波特率不倍增
        TI = 0;//發(fā)送中斷
        ET0 = EA = 1;
        TR0 = 1;
        while(1)
        {
                while(!TI);//等待TI=1時(shí),跳出循環(huán),保證數(shù)據(jù)全部發(fā)送完畢后,再清零
                TI  = 0;  //軟件清零
                DelayMS(300);
        }
}
void Timer0() interrupt 1
{
        uchar t;
        TH0=(65536-50000)/256;       
        TL0=(65536-50000)%256;
        if(++t == 20)
                {
                        t = 0;
                        c = c%10;
                        SBUF=DSY_CODE[c];
                        c++;      
                }
}

E02CF9D0-096C-438F-81B8-782C98783A43.png
回復(fù)

使用道具 舉報(bào)

ID:18297 發(fā)表于 2019-4-24 13:09 | 顯示全部樓層
1)初始化后,馬上輸出 SBUF=DSY_CODE[0];
這樣你的程序就會(huì)較快的進(jìn)入顯示“0”。
2)如下代碼,功能是上電后馬上顯示0,并開始遞加顯示。
  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit k = P3;
  5. sbit ch=P3^0;
  6. uchar c = 0;
  7. uchar t=0;
  8. uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  9. void DelayMS(uint ms)
  10. {
  11.         uchar i;
  12.         while(ms--) for(i=0;i<120;i++);
  13. }
  14. void main()
  15. {
  16.    
  17.         SBUF = 0x00;//???
  18.         SCON = 0x00;// ?????0
  19.         TMOD=0x01;                                
  20.         TH0=(65536-50000)/256;        
  21.         TL0=(65536-50000)%256;
  22.         PCON = 0x00;//??????
  23.         TI = 0;//????
  24.         ET0 = EA = 1;
  25.         TR0 = 1;
  26.               SBUF=DSY_CODE[0];
  27.         while(1)
  28.         {
  29.                 //while(!TI);//??TI=1?,????,???????????,???
  30.                 //TI  = 0;  //????
  31.                 DelayMS(300);
  32.         }
  33. }
  34. void Timer0() interrupt 1
  35. {
  36.         //uchar t;
  37.         TH0=(65536-50000)/256;        
  38.         TL0=(65536-50000)%256;
  39.         if(++t == 20)
  40.                 {
  41.                         t = 0;
  42.                                                                               c++;  
  43.                         c = c%10;
  44.                         SBUF=DSY_CODE[c];                           
  45.                 }
  46. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

ID:513931 發(fā)表于 2019-4-24 14:44 來自觸屏版 | 顯示全部樓層
zjjhtony 發(fā)表于 2019-4-24 13:09
1)初始化后,馬上輸出 SBUF=DSY_CODE[0];
這樣你的程序就會(huì)較快的進(jìn)入顯示“0”。
2)如下代碼,功能是 ...

我試了下 為啥他一開始還是會(huì)閃一下8呢?
回復(fù)

使用道具 舉報(bào)

ID:18297 發(fā)表于 2019-4-24 20:05 | 顯示全部樓層
要想解決這個(gè)問題很簡(jiǎn)單。
1)將這個(gè)LED數(shù)碼管有共陽(yáng)極的改為共陰極的。
2)修改uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
為uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
修改后測(cè)試沒有再顯示8
回復(fù)

使用道具 舉報(bào)

ID:513931 發(fā)表于 2019-4-24 22:06 來自觸屏版 | 顯示全部樓層
zjjhtony 發(fā)表于 2019-4-24 20:05
要想解決這個(gè)問題很簡(jiǎn)單!
1)將這個(gè)LED數(shù)碼管有共陽(yáng)極的改為共陰極的。
2)修改uchar code DSY_CODE[] ...

已經(jīng)可以了! 感謝 但是想問下 為啥用共陽(yáng)的他就會(huì)閃8呢?
回復(fù)

使用道具 舉報(bào)

ID:337069 發(fā)表于 2019-4-24 23:29 | 顯示全部樓層
用164 Q3控制數(shù)碼管供電
回復(fù)

使用道具 舉報(bào)

ID:434390 發(fā)表于 2019-4-25 07:44 | 顯示全部樓層
共陰極COM端用個(gè)IO口控制三極管驅(qū)動(dòng),復(fù)位上電的時(shí)候COM端(通過IO口上拉或下拉控制三級(jí)管,非程序控制)輸出高電平
回復(fù)

使用道具 舉報(bào)

ID:521059 發(fā)表于 2019-4-25 09:11 | 顯示全部樓層
zry991122 發(fā)表于 2019-4-24 22:06
已經(jīng)可以了! 感謝 但是想問下 為啥用共陽(yáng)的他就會(huì)閃8呢?

可以嘗試先使164都輸出高電平,這樣用共陽(yáng)的數(shù)碼管也不會(huì)顯示8了。另外,SBUF初始化時(shí)復(fù)值0xff也可以。
回復(fù)

使用道具 舉報(bào)

ID:513931 發(fā)表于 2019-4-25 11:31 來自觸屏版 | 顯示全部樓層
51hei_user 發(fā)表于 2019-4-25 09:11
可以嘗試先使164都輸出高電平,這樣用共陽(yáng)的數(shù)碼管也不會(huì)顯示8了。另外,SBUF初始化時(shí)復(fù)值0xff也可以。

具體要怎么操作呢?
回復(fù)

使用道具 舉報(bào)

ID:513931 發(fā)表于 2019-4-25 13:00 來自觸屏版 | 顯示全部樓層
chtyise 發(fā)表于 2019-4-24 23:29
用164 Q3控制數(shù)碼管供電

啥意思呀?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩精品一区二区三区中文在线 | 日韩一二区在线 | 精品欧美一区二区精品久久久 | 国产在线一级片 | 最新午夜综合福利视频 | 亚洲激情一区二区三区 | 蜜桃av一区二区三区 | 99精品国产一区二区三区 | 国产精品综合 | 国产成人av免费看 | 中文字幕免费在线 | 免费国产视频在线观看 | 男人天堂999 | 999精彩视频 | 欧美一级网站 | 天天干狠狠操 | 一区二区高清 | 日韩精品一区二区三区中文在线 | 性欧美精品一区二区三区在线播放 | 中文字幕1区 | 亚洲精品国产偷自在线观看 | 国产99久久 | 国产91在线 | 欧美 | 国产黄色在线 | 一区二区三区免费 | 国产精品久久久久久久午夜 | 亚洲综合色丁香婷婷六月图片 | 午夜在线小视频 | a级片在线 | 欧美一区二区久久 | 人人色视频 | 日韩在线日韩 | 亚洲成人www| 亚洲欧洲精品一区 | 影音先锋中文字幕在线观看 | 日韩成人影院在线观看 | 欧美日韩一区二区三区四区 | 综合久久99| 亚洲综合大片69999 | 中文字幕一区在线 | 国产精品久久久久久久久久久免费看 |