在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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>

            新聞中心

            I2C總線C語(yǔ)言源程序

            作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏
            /*VIICC.H*/
            #pragmadbcdsmall
            #include
            #include
            #defineNOPnop();nop();nop();nop()
            #defineSDAP1^7
            #defineSCLP1^6

            voidsta();
            voidcack();
            voidstop();
            voidmnack();
            voidmack();
            voidwrbyt(ucharshu);
            voidwrnbyta(ucharslaw,uchargg[],ucharn);
            voidwrnbyt(ucharslaw,ucharff[],ucharnumber);
            ucharrdbyt();
            voidrdnbyt(ucharslar,ucharqq[],ucharnumber);
            源程序由9個(gè)函數(shù)組成,程序清單如下:
            voidsta()/*啟動(dòng)I2C總線*/
            {
            SDA=1;
            SCL=1;
            NOP;
            SDA=0;
            NOP;
            SCL=0;
            }

            voidstop()/*停止I2C總線
            */
            {
            SDA=0;
            SCL=1;
            NOP;
            SDA=1;
            NOP;
            SCL=0;
            }

            voidmack()/*發(fā)送應(yīng)答位*/
            {
            SDA=0;
            SCL=1;
            NOP;
            SCL=0;
            SDA=1;
            }

            voidmnack()/*發(fā)送非應(yīng)答位*/
            {
            SDA=1;
            SCL=1;
            NOP;
            SCL=0;
            SDA=0;
            }

            voidcack()/*應(yīng)答位檢查*/
            {
            SDA=1;
            SCL=1;
            F0=0;
            if(SDA==1)
            F0=1;
            SCL=0;
            nop();
            }
            /*向虛擬I2C總線上發(fā)送1個(gè)數(shù)據(jù)字節(jié)*/
            voidwrbyt(ucharshu)
            {
            uchari;
            for(i=0;i<8;i++){
            if((shu&0x80)>0){
            SDA=1;
            SCL=1;
            NOP;
            SCL=0;
            SDA=0;
            }
            else{
            SDA=0;
            SCL=1;
            NOP;
            SCL=0;
            }
            shu=shu<<1;
            }
            }
            /*從I2C總線上讀取1個(gè)數(shù)據(jù)字節(jié)*/
            ucharrdbyt()
            {
            ucharnn=0xff,mm=0x80,uu=0x7f;
            ucharj;
            for(j=0;j<8;j++){
            SDA=1;
            SCL=1;
            if(SDA==0)
            nn=(nn&uu);
            else
            nn=(nn|mm);。
            nn=crol(nn,1);
            SCL=0;
            }
            return(nn);
            }

            voidwrnbyta(ucharslaw,uchargg[],ucharn)
            {
            do{
            sta();
            wrbyt(slaw);
            cack();
            }while(F0==1);
            wrbyt(gg[n]);
            cack();





            }
            /*向虛擬I2C總線上發(fā)送n個(gè)字節(jié)的數(shù)據(jù)*/
            voidwrnbyt(ucharslaw,ucharff[],ucharnumber)
            {
            ucharidatak;
            do{
            sta();
            wrbyt(slaw);
            ?cack();
            }while(F0==1);
            for(k=0;kwrbyt(ff[k]);
            cack();
            while(F0==1)
            wrnbyta(slaw,ff,k);
            }
            stop();
            }
            /*從虛擬I2C總線上讀取n個(gè)字節(jié)的數(shù)據(jù)*/
            voidrdnbyt(ucharslar,ucharqq[],ucharnumber)
            {
            ucharidatadata0,l;
            do{
            sta();
            wrbyt(slar);
            cack();
            }while(F0==1);?
            for(l=0;ldata0=rdbyt();
            qq[l]=data0;
            mack();
            }
            data0=rdbyt();
            qq[l]=data0;
            mnack();
            stop();
            }


            關(guān)鍵詞: I2C總線C語(yǔ)言源程

            評(píng)論


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

            關(guān)閉