在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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)用 > 向24C02中寫入當(dāng)前的時(shí)間

            向24C02中寫入當(dāng)前的時(shí)間

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

            //1、向24C02寫入當(dāng)前的時(shí)間,下次開機(jī)就會(huì)從
            上次斷電時(shí)的時(shí)間開始計(jì)時(shí)

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

            //2、重點(diǎn)掌握IIC總線幾個(gè)常用信號的寫法;
            //

            */

            #include
            #define uint unsigned int
            #define uchar unsigned char
            sbit sda=P1^0;
            sbit scl=P1^1;
            uchar num1,num1,flag1,flag2,sec;
            void delay();
            void delayms(uint z);
            void start();
            void stop();
            void sck();
            void writebyte(uchar date);
            uchar readbyte();
            void writeaddr(uchar addr,uchar date);
            uchar readaddr(uchar addr);
            void intc();
            void disp();
            //=========================
            void main()
            { uchar temp;
            intc();
            P0=temp;
            sec=readaddr(2);
            if(sec>100)
            sec=0;
            while(1)
            {
            if(flag1==1)
            {flag1=0;
            writeaddr(2,sec);
            }
            disp();

            }
            }
            //-----初始化------
            void intc()
            {
            scl=1;
            delay();
            sda=1;
            delay();
            TMOD=0x01;
            TH0=(65536-10000)/256;
            TL0=(65536-10000)%256;
            EA=1;
            ET0=1;
            TR0=1;
            }
            //----------------
            void delay()
            {;;}
            //-----------------
            void delayms(uint z)
            {
            uint x,y;
            for(x=0;x for(y=0;y<112;y++);

            }
            //-------24C04啟動(dòng)信號---------

            void start()
            {
            sda=1;
            delay();
            scl=1;
            delay();
            sda=0;
            delay();
            }
            //--------24C04停止信號--------
            void stop()
            {
            sda=0;
            delay();
            scl=1;
            delay();
            sda=1;
            delay();

            }

            //-------24C04應(yīng)答信號-------
            void sck()
            { uchar i=0;
            scl=1;
            delay();
            while(sda==1&&i<255)
            i++;
            scl=0;
            delay();
            }
            //-------24C04寫一個(gè)字節(jié)------
            void writebyte(uchar date)
            {
            uchar i;
            for(i=0;i<8;i++)
            {
            date=date<<1;
            scl=0;
            delay();
            sda=CY;
            delay();
            scl=1;
            delay();
            }
            scl=0;//寫完一個(gè)字節(jié)后再把總線拉成接收狀態(tài);
            delay();
            sda=1;
            delay();
            }

            //---------24C04讀一個(gè)字節(jié)---------

            uchar readbyte()
            {
            uchar i,k;
            scl=0;//寫完一個(gè)字節(jié)后再把總線拉成接收狀態(tài);
            delay();
            sda=1;
            delay();
            for(i=0;i<8;i++)
            {
            scl=1;
            delay();
            k=(k<<1)||sda;
            delay();
            scl=0;
            delay();
            }
            delay();
            return k;
            }

            //-------24C04指定地址寫一個(gè)字節(jié)------
            void writeaddr(uchar addr,uchar date)
            {
            star();
            writebyte(0xa0);
            ack();
            writebyte(addr);
            ack();
            writebyte(date);
            ack();
            stop();
            }

            //--------24C04指定地址讀一個(gè)字節(jié)--------
            uchar readaddr(uchar addr)
            {uchar date1;
            star();
            writebyte(0xa0);
            ack();
            writebyte(addr);
            ack();
            writebyte(0xa1);
            ack();
            date1=readbyte();
            stop();
            return date1;
            }

            //===================
            void disp()
            {
            P0=sec/10;
            P2=0xfe;
            delayms(5);
            P0=0;
            delayms(1);
            P0=sec%10;
            P2=0xfd;
            delayms(5);
            P0=0;
            delayms(1);
            }

            //----------------
            void timer0() interrupt 1
            {
            TH0=(65536-10000)/256;
            TL0=(65536-10000)%256;
            num1++;
            if(num1==100)
            {num1=0;flag1=1;sec++;
            if(sec>99)
            sec=0;
            }


            }



            關(guān)鍵詞: 24C02寫

            評論


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

            關(guān)閉