在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)C語言程序(三)數(shù)碼管

            51單片機(jī)C語言程序(三)數(shù)碼管

            作者: 時(shí)間:2016-11-25 來源:網(wǎng)絡(luò) 收藏

            本文引用地址:http://www.biyoush.com/article/201611/321416.htm

            程序三

            利用動(dòng)態(tài)掃描和定時(shí)器1在數(shù)碼管上顯示
            出從765432開始以1/10秒的速度往下遞減
            直至765398并保持顯示此數(shù),與此同時(shí)利
            用定時(shí)器0以500MS速度進(jìn)行流水燈從上至
            下移動(dòng),當(dāng)數(shù)碼管上數(shù)減到停止時(shí),實(shí)驗(yàn)
            板上流水燈也停止然后全部開始閃爍,3秒
            后(用T0定時(shí))流水燈全部關(guān)閉、數(shù)碼管上
            顯示出"HELLO"。到此保持住。

            #include //52單片機(jī)頭文件
            #include //包含有左右循環(huán)移位子函數(shù)的庫
            #define uint unsigned int //宏定義
            #define uchar unsigned char //宏定義
            sbit dula=P2^6;
            sbit wela=P2^7;
            uchar code table[]={ //顯示數(shù)據(jù)編碼
            0x3f,0x06,0x5b,0x4f,
            0x66,0x6d,0x7d,0x07,
            0x7f,0x6f,0x77,0x7c,
            0x39,0x5e,0x79,0x71,
            0x76,0x79,0x38,0x3f,0};
            uchar temp,t0,t1,bai,shi,ge,flag,flag1;
            uint shu;
            void init(); //函數(shù)聲明
            void display(uchar aa,uchar bb,uchar cc,uchar bai,uchar shi,uchar ge);
            void delay(uint z) //延時(shí)子函數(shù)
            {
            uint x,y;
            for(x=z;x>0;x--)
            for(y=110;y>0;y--);
            }
            void main() //主函數(shù)
            {
            init();
            while(1)
            {
            if(flag1!=1) //如果flagi不再等于1則顯示數(shù)據(jù)
            display(7,6,5,bai,shi,ge);
            else
            display(16,17,18,18,19,20); //否則顯示hello
            }
            }

            void init() //初始化函數(shù)
            {
            shu=432;
            temp=0xfe;
            P1=temp;
            TMOD=0x11;
            TH0=(65536-50000)/256; //定時(shí)器初始化
            TL0=(65536-50000)%256;
            TH1=(65536-50000)/256;
            TL1=(65536-50000)%256;
            EA=1;
            ET0=1;
            ET1=1;
            TR0=1;
            TR1=1;
            }

            void timer0() interrupt 1 //定時(shí)器0中斷
            {
            TH0=(65536-50000)/256;
            TL0=(65536-50000)%256;
            t0++;
            if(flag!=1) //flag不等于1時(shí)進(jìn)行流水燈
            {
            if(t0==10)
            {
            t0=1;
            temp=_crol_(temp,1);
            P1=temp;
            }
            }
            else //否則進(jìn)行燈閃爍
            {
            if(t0%4==0) //小燈每200毫秒變化一次
            P1=~P1;
            if(t0==60)
            {
            TR0=0; //3秒后關(guān)閉定時(shí)器0,關(guān)閉燈,并置flag=1
            P1=0xff;
            flag1=1;
            }
            }
            }

            void timer1() interrupt 3 //定時(shí)器1中斷函數(shù)
            {
            TH1=(65536-50000)/256;
            TL1=(65536-50000)%256;
            t1++;
            if(t1==2)
            {
            t1=0;
            shu--;
            bai=shu/100;
            shi=shu%100/10;
            ge=shu%10;
            if(shu==398) //當(dāng)?shù)?98時(shí)把原來T0中的數(shù)清除,重新加裁初值讓小燈閃爍
            {
            TR0=0;
            TH0=(65536-50000)/256;
            TL0=(65536-50000)%256;
            TR0=1;
            flag=1;
            t0=0;
            P1=0xff;
            TR1=0;
            }
            }
            }

            void display(uchar aa,uchar bb,uchar cc,uchar bai,uchar shi,uchar ge) //顯示子函數(shù)
            {
            dula=1;
            P0=table[aa];
            dula=0;
            P0=0xff;
            wela=1;
            P0=0xfe;
            wela=0;
            delay(1);

            dula=1;
            P0=table[bb];
            dula=0;
            P0=0xff;
            wela=1;
            P0=0xfd;
            wela=0;
            delay(1);

            dula=1;
            P0=table[cc];
            dula=0;
            P0=0xff;
            wela=1;
            P0=0xfb;
            wela=0;
            delay(1);
            dula=1;
            P0=table[bai];
            dula=0;
            P0=0xff;
            wela=1;
            P0=0xf7;
            wela=0;
            delay(1);

            dula=1;
            P0=table[shi];
            dula=0;
            P0=0xff;
            wela=1;
            P0=0xef;
            wela=0;
            delay(1);

            dula=1;
            P0=table[ge];
            dula=0;
            P0=0xff;
            wela=1;
            P0=0xdf;
            wela=0;
            delay(1);
            }


            上一頁 1 2 下一頁

            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉