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

QQ登錄

只需一步,快速開始

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

8位共陰數(shù)碼管動(dòng)態(tài)掃描顯示計(jì)數(shù)數(shù)字00000000-99999999;沒完成的(程序下載后,顯示...

[復(fù)制鏈接]
ID:59980 發(fā)表于 2015-6-11 09:30 | 顯示全部樓層 |閱讀模式
#include<reg52.h> //8位共陰數(shù)碼管動(dòng)態(tài)掃描顯示計(jì)數(shù)數(shù)字00000000-99999999;沒完成的
#define uchar unsigned char
#define uint unsigned int
unsigned char count;
unsigned char i; //定義一個(gè)無符號(hào)的整數(shù)型單字節(jié)變量        (取值0-255)
unsigned long j;  //定義一個(gè)無符號(hào)的整數(shù)型三字節(jié)變量32位(取值0-4294967295)
sbit du=P2^2;               
sbit we=P2^3;
void  init();
void display();
void delay(uint z) //帶參數(shù)調(diào)整的延時(shí)函數(shù),調(diào)整變量z,可改變延時(shí)時(shí)間
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=0;y>0;y--);        //約0.001ms
}

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
                            0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//0-F共 陰        段碼表


unsigned char code weima[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//開位碼表


unsigned char temp[8];

void main()
{

        count=0;
        while(1)
        {
       
                    /**********************定時(shí)器0初始化程序************************/

               

            TMOD=0X01;//使用模式1,16位定時(shí)器0;
        TH0=(65535-50000)/256;//裝初值
        TL0=(65535-50000)%256;
        EA=1;//開總中斷
        ET0=1;//開定時(shí)器0中斷
        TR0=1;//啟動(dòng)定時(shí)器0
                TH0=(65535-50000)/256;//重裝初值
        TL0=(65535-50000)%256;

            count++;
          if(count==20)
                {  
                    j++;
                        count=0;
                        display();
                 }
          

/***************************重裝初值************************************/

                 
        }

}



       
       
               
                                 
                          

void display()
{

        for(i=0;i<8;i++)
                        {
                                  temp[0]=table[j/10000000]; //分離千萬位數(shù)
                                  temp[1]=table[(j/1000000)%10];//分離百萬位數(shù)
                                  temp[2]=table[(j/100000)%10]; //分離十萬位數(shù)
                              temp[3]=table[(j/10000)%10]; //分離萬位數(shù)
                                  temp[4]=table[(j/1000)%10];//分離千位數(shù)
                                  temp[5]=table[(j/100)%10];//分離百位數(shù)
                                  temp[6]=table[(j/10)%10];//分離十位數(shù)
                                  temp[7]=table[j%10];////分離個(gè)位數(shù)
                                  
                                 P0=weima[i];//"11111110" 送位碼,第一位顯示 0
                                we=1; //開位鎖存使能端
                                we=0; //關(guān)位鎖存使能端
               
                                P0=temp[i];//送段碼“0”
                                du=1; //開段鎖存使能端
                                du=0;//關(guān)段鎖存使能端
                                delay(0); //延時(shí)10ms
                               

                        }
}

評(píng)分

參與人數(shù) 2黑幣 +54 收起 理由
qjzyx + 4 贊一個(gè)!
admin + 50 共享資料的積分獎(jiǎng)勵(lì)!

查看全部評(píng)分

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

ID:82781 發(fā)表于 2015-6-12 01:10 | 顯示全部樓層
太感謝了,按你的程序 修改端口后 試驗(yàn)成功  幫了我的大忙..謝謝 好人一生平安
回復(fù)

使用道具 舉報(bào)

ID:100391 發(fā)表于 2018-1-20 13:44 | 顯示全部樓層
確定可以將定時(shí)器初始化放到while(1)大循環(huán)里嗎??程序是不是不完整的?有沒有完整的附件?我想看看,謝謝。
回復(fù)

使用道具 舉報(bào)

ID:266116 發(fā)表于 2018-1-20 14:32 | 顯示全部樓層
謝謝分享!
回復(fù)

使用道具 舉報(bào)

ID:1082988 發(fā)表于 2023-6-9 16:39 | 顯示全部樓層
有仿真圖嗎 樓主
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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