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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > I2C總線學(xué)習(xí)—查缺補(bǔ)漏—S3C2440的I2C控制器

          I2C總線學(xué)習(xí)—查缺補(bǔ)漏—S3C2440的I2C控制器

          作者: 時間:2016-11-22 來源:網(wǎng)絡(luò) 收藏
          學(xué)習(xí)了IIC總線協(xié)議的理論部分,覺得應(yīng)該學(xué)習(xí)具體操作2440的IIC控制器,畢竟最終都是為了學(xué)習(xí)S3C2440,所以就把這一部分補(bǔ)上。 S3C2440的I2C接口有四種工作模式:主機(jī)發(fā)送器、主機(jī)接收器、從機(jī)發(fā)送器、從機(jī)接收機(jī)。其內(nèi)部結(jié)構(gòu)如下圖所示。
          從上圖可以看出,S3C2440提供4個寄存器來完成所有的IIC操作。SDA線上的數(shù)據(jù)從IICDS寄存器經(jīng)過移位寄存器發(fā)出,或通過移位寄存器傳入IICDS寄存器;IICADD寄存器中保存S3C2440當(dāng)做從機(jī)時的地址;IICCON、IICSTAT兩個寄存器用來控制或標(biāo)識各種狀態(tài),比如選擇工作工作模式,發(fā)出S信號、P信號,決定是否發(fā)出ACK信號,檢測是否接收到ACK信號。下面詳細(xì)接收各寄存器的用法。

          IICCON寄存器IIC-Bus control register

          注意事項:
          1. IIC中斷發(fā)生在以下三種情況:當(dāng)發(fā)出地址信息或接收到一個從機(jī)地址并吻合時,當(dāng)總線總裁失敗時,當(dāng)發(fā)送/接收完一個字節(jié)的數(shù)據(jù)(包括響應(yīng)位)時。當(dāng)發(fā)出地址信息或接收到一個從機(jī)地址并吻合時產(chǎn)生中斷,在中斷處理函數(shù)中要準(zhǔn)備發(fā)送或者接收數(shù)據(jù),即讀取或設(shè)備IICDS寄存器,或者發(fā)出P信號。當(dāng)總線總裁失敗時產(chǎn)生中斷,在中斷處理函數(shù)中決定時候延時后再次競爭總線等。當(dāng)發(fā)送/接收完一個字節(jié)的數(shù)據(jù)(包括響應(yīng)位)時產(chǎn)生中斷,在中斷處理函數(shù)中要準(zhǔn)備下次要發(fā)送或者接收數(shù)據(jù),即讀取或設(shè)備IICDS寄存器,或者發(fā)出P信號。
          2. 基于SDA、SCL線上時間特性的考慮,要發(fā)送數(shù)據(jù)時,先將數(shù)據(jù)寫入IICDS寄存器,然后再清除中斷。清除中斷,即向IICCON[4]寫入0,也就是將SCL線拉高,此時產(chǎn)生一個上升沿,將移位寄存器中的數(shù)據(jù)發(fā)送到SDA線。至于先將數(shù)據(jù)寫入IICDS寄存器,然后再清除中斷,可能是數(shù)據(jù)穩(wěn)定需要一個時間吧。在清除中斷前要數(shù)據(jù)保持問的那個。
          3. 如果IICCON[5]==0,IICCON[4]將不能正常工作。所以,即使不使用IIC中斷,也要將IICCON[5]設(shè)為1。

          IICSTAT寄存器

          IICADD寄存器

          用到IICADD寄存器的位[7:1],表示從機(jī)地址。IICADD寄存器在串行輸出使能位IICSTAT[4]為0時,才可以寫入;在任何時候都可以讀出。IICSTAT[4]為0時,禁止接收/發(fā)送功能,即此時SCL線被拉低。

          本文引用地址:http://www.ex-cimer.com/article/201611/320022.htm

          IICDS寄存器

          用到IICDS寄存器的位[7:0],其中保存的是要發(fā)送或已經(jīng)接收到的數(shù)據(jù)。IICDS寄存器在串行輸出使能位IICSTAT[4]為1時才可以寫入;在任何時候都可以讀出。IICSTAT[4]為1時,使能接收/發(fā)送功能,也就是釋放了SCL線。



          關(guān)鍵詞: I2C總線S3C2440I2C控制

          評論


          技術(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); })();