在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ATMEGA16控制74LS164驅(qū)動(dòng)數(shù)碼管顯示

            ATMEGA16控制74LS164驅(qū)動(dòng)數(shù)碼管顯示

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

            #include
            #include

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

            #define uchar unsigned char
            #define uint unsigned int

            //共陽(yáng)極數(shù)碼管端碼編碼

            uchar Table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x7b,0x71};

            #define LS164Clk_CLI PORTB&=~BIT(PB0)
            #define LS164Clk_SEI PORTB|=BIT(PB0)
            #define LS164DATA_CLI PORTB&=~BIT(PB1)
            #define LS164FATA_SEI PORTB|=BIT(PB1)

            #define SMGA0_ON PORTA&=~(BIT(PA4))
            #define SMGA0_0FF PORTA|=(BIT(PA4))
            #define SMGA1_ON PORTA&=~(BIT(PA5))
            #define SMGA1_0FF PORTA|=(BIT(PA5))
            #define SMGA2_ON PORTA&=~(BIT(PA6))
            #define SMGA2_0FF PORTA|=(BIT(PA6))
            #define SMGA3_ON PORTA&=~(BIT(PA7))
            #define SMGA3_0FF PORTA|=(BIT(PA7))

            void System_Init(void)
            {
            DDRA|=0XF0;
            PORTA|=0XF0;
            DDRB|=0X03;
            PORTB|=0X03;
            }

            void LS164_SendData(uint data)
            {
            uchar i;
            LS164Clk_SEI;
            for(i=0;i<8;i++)
            {
            if((data&0x80)==0x80)
            LS164FATA_SEI;
            else
            LS164DATA_CLI;
            LS164Clk_CLI;
            NOP();
            LS164Clk_SEI;
            NOP();
            data=data<<1;
            }
            }

            void Display(uint data)
            {
            SMGA0_ON; //開(kāi)顯示,在左邊第一個(gè)數(shù)碼管顯示千位
            LS164_SendData(Table[data/1000]); //取千位
            delay_ms(10); //延時(shí)很重要,要是不加,就會(huì)看上去全部都是滅的
            SMGA0_0FF; //關(guān)顯示

            SMGA1_ON; //開(kāi)顯示,在左邊第二個(gè)數(shù)碼管顯示百位
            LS164_SendData(Table[data00/100]);//取百位
            delay_ms(10); //延時(shí)很重要,要是不加,就會(huì)看上去全部都是滅的
            SMGA1_0FF; //關(guān)顯示

            SMGA2_ON; //開(kāi)顯示,在左邊第三個(gè)數(shù)碼管顯示十位
            LS164_SendData(Table[data0/10]);//取十位
            delay_ms(10); //延時(shí)很重要,要是不加,就會(huì)看上去全部都是滅的
            SMGA2_0FF; //關(guān)顯示

            SMGA3_ON; //開(kāi)顯示,在左邊第四個(gè)個(gè)數(shù)碼管顯示個(gè)位
            LS164_SendData(Table[data]);//取個(gè)位
            delay_ms(10); //延時(shí)很重要,要是不加,就會(huì)看上去全部都是滅的
            SMGA3_0FF; //關(guān)顯示
            }

            void main(void)
            {
            uint data=9956;
            System_Init();
            PORTA=0X30;
            LS164_SendData(Table[0]);
            while(1)
            {
            delay_ms(10);
            data++;
            if(data>9999)
            {
            data=9999;
            while(data--)
            Display(data);//9999-0
            }
            Display(data); //0-9999
            }
            }

            PROTUES仿真圖




            評(píng)論


            技術(shù)專(zhuān)區(qū)

            關(guān)閉