日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > HOLTEK主I2C的源程序代碼

          HOLTEK主I2C的源程序代碼

          作者: 時間:2012-08-12 來源:網絡 收藏

          本文引用地址:http://yuyingmama.com.cn/article/171051.htm

          /***********************************************
          讀當前1字節(jié)數據函數
          ***********************************************/
          unsigned char cread(uchar addr)
          {
          unsigned char i;
          i2c_start();
          i2c_writ2(CHIP_ADDR); // Write
          i2c_writ2(addr);
          i2c_start(); // Start
          i2c_writ2(CHIP_ADDR+1); // Read
          i = i2c_rea2(0);
          i2c_stop();
          delay(10);
          return(i);
          }

          /***********************************************
          寫當前1字節(jié)數據函數
          ***********************************************/
          void cwrite(uchar addr,uchar dat)
          {
          i2c_start();
          i2c_writ2(CHIP_ADDR); // Write
          i2c_writ2(addr);
          i2c_writ2(dat);
          i2c_stop();
          delay(30);
          }

          /***********************************************
          讀數據
          ***********************************************/
          void read(uchar addr, uchar num, uchar * buf)
          {
          i2c_start();
          i2c_writ2(CHIP_ADDR); // Write
          i2c_writ2(addr);
          i2c_start(); // Start
          i2c_writ2(CHIP_ADDR+1); // Read
          for( ; num>0 ; num--) // 個數
          {
          *buf++ = i2c_rea2(1); // 讀
          }
          i2c_stop();
          delay(10);
          }

          /***********************************************
          寫數據
          ***********************************************/
          void write(uchar addr, uchar num,uchar * buf)
          {
          i2c_start();
          i2c_writ2(CHIP_ADDR); // Write
          i2c_writ2(addr);
          for( ; num>0 ; num--) // 個數
          {
          i2c_writ2(*buf++); // 寫
          }
          i2c_stop();
          delay(30);
          }

          /***********************************************
          讀1字節(jié)函數
          ***********************************************/
          uchar i2c_rea2(bit ack)
          {
          uchar i,j;
          j=0x00;
          SDA=1;
          for(i=0;i8;i++)
          {
          SCL=1;
          j=j1;
          if(SDA) j|=0x01;
          SCL=0;delay_5us();
          }
          if(ack) SDA=0;
          SCL=1;delay_5us();
          SCL=0;delay_5us();
          return j;
          }

          /***********************************************
          延時程序
          ***********************************************/
          void delay_5us()
          {
          uchar i;
          //for(i=0;i2;i++){}
          for(i=0;i4;i++)
          {
          }
          }


          上一頁 1 2 下一頁

          關鍵詞: 代碼 源程序 I2C HOLTEK

          評論


          相關推薦

          技術專區(qū)

          關閉