<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > I2C通信模塊c語言庫文件

          I2C通信模塊c語言庫文件

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

          //(主機(jī)接收函數(shù)將要調(diào)用)從設(shè)備發(fā)生的應(yīng)答信號(hào)
          void I2C_Ack()
          {
          SDA=0;
          _nop_();
          _nop_();
          SCL=1;
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          SCL=0;
          _nop_();
          _nop_();
          _nop_();
          }

          //非應(yīng)答信號(hào)產(chǎn)生函數(shù)
          void I2C_NoAck()
          {
          SDA=1;
          _nop_();
          _nop_();
          SCL=1;
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          SCL=0;
          _nop_();
          _nop_();
          _nop_();
          }

          //主機(jī)發(fā)送多字節(jié)函數(shù)
          bit SendString(uint8 address,uint8 *s,uint8 num)
          {
          uint8 i;
          I2C_Start();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          _nop_();
          I2C_SendByte(address);
          if(ACK==0)
          return 0;
          for(i=0;i{
          I2C_SendByte(*s);
          if(ACK==0)
          return 0;
          DelayMs(10);//以等待設(shè)備寫入數(shù)據(jù)處理完成
          s++;
          }
          I2C_Stop();
          DelayUs(10);
          return 1;
          }

          //主機(jī)接收多字節(jié)函數(shù)
          bit ReceiveString(uint8 address,uint8 *s,uint8 num)
          {
          uint8 i;
          I2C_Start();
          I2C_SendByte(address);
          if(ACK==0)
          return 0;
          I2C_Start();
          I2C_SendByte(address+1);
          if(!ACK)
          return 0;
          for(i=0;i{
          *s=I2C_ReceiveByte();
          I2C_Ack();
          DelayMs(10);
          s++;
          }
          *s=I2C_ReceiveByte();
          I2C_NoAck(); //給的非應(yīng)答信號(hào)
          I2C_Stop(); //停止總線
          return 1;
          }

          #endif

          庫文件的調(diào)用例子:http://www.51hei.com/bbs/dpj-20623-1.html


          上一頁 1 2 下一頁

          關(guān)鍵詞: I2C通信模塊c語言庫文

          評(píng)論


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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();