新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于CPLD的I2C總線接口設(shè)計(jì)

基于CPLD的I2C總線接口設(shè)計(jì)

作者: 時(shí)間:2011-03-21 來(lái)源:網(wǎng)絡(luò) 收藏

3 應(yīng)用實(shí)例
該模塊工作于主模式,主要應(yīng)用于沒(méi)有專(zhuān)用接口的CPU通過(guò)并口方便地與具有接口的外設(shè)連接并交換信息。
圖4給出了CPU通過(guò)該模塊與X24C04E2PROM接口的例子。

本文引用地址:http://butianyuan.cn/article/191294.htm


在圖中,PC104 CPU通過(guò)數(shù)據(jù)、地址、讀、寫(xiě)信號(hào)線與接口模塊相連,I2C接口模塊則通過(guò)SDL、SDA與X24C04相連,PC104CPU輸出的并行數(shù)據(jù),經(jīng)過(guò)I2C接口模塊轉(zhuǎn)換后變成符合I2C模式要求的串行數(shù)據(jù)輸出到X24C04,X24C04輸出的串行數(shù)據(jù)經(jīng)過(guò)I2C接口模塊轉(zhuǎn)換后,變成并行數(shù)據(jù)供PC104CPU讀取。使用該模塊后CPU操作I2C總線就像操作并口一樣方便。該電路的控制軟件流程如圖5所示。


通過(guò)上述應(yīng)用實(shí)例可以看出,本文設(shè)計(jì)的接口模塊只能工作于主機(jī)模式,并且在整個(gè)系統(tǒng)中只能有一個(gè)主機(jī)工作。在從機(jī)因處理其他工作而暫不能響應(yīng)主機(jī)時(shí),模塊沒(méi)有設(shè)計(jì)等待功能,只能發(fā)送總線結(jié)束信號(hào)結(jié)束當(dāng)前操作,待從機(jī)空閑時(shí)再重新開(kāi)始通信。

4 結(jié)論
本設(shè)計(jì)的創(chuàng)新點(diǎn)在于:通過(guò)實(shí)現(xiàn)并口到I2C總線接口的轉(zhuǎn)換,可以使不具備I2C總線接口的CPU通過(guò)并口方便地控制I2C總線設(shè)備,使用該模塊可以簡(jiǎn)化控制軟件的編程,加快系統(tǒng)設(shè)計(jì)的實(shí)現(xiàn),在I2C總線操作過(guò)程中,轉(zhuǎn)換模塊自動(dòng)發(fā)出開(kāi)始信號(hào)、結(jié)束信號(hào),不需要CPU干預(yù)。
本文設(shè)計(jì)的I2C接口模塊只能工作于主模式,只能應(yīng)用于主機(jī)系統(tǒng);在模塊的設(shè)計(jì)中,沒(méi)有考慮多主機(jī)的情況,對(duì)多主機(jī)的總線競(jìng)爭(zhēng)沒(méi)有設(shè)計(jì)仲裁功能;模塊的頁(yè)面讀寫(xiě)數(shù)據(jù)數(shù)不能超過(guò)32個(gè)字節(jié),在32個(gè)字節(jié)之內(nèi),CPU可以通過(guò)主動(dòng)設(shè)置工作模式為“110”而終止當(dāng)前操作,達(dá)到連續(xù)讀寫(xiě)小于32個(gè)字節(jié)數(shù)據(jù)的目的,超過(guò)32個(gè)字節(jié)的連續(xù)數(shù)據(jù)讀寫(xiě)操作將使模塊工作錯(cuò)誤。


上一頁(yè) 1 2 3 4 下一頁(yè)

關(guān)鍵詞: CPLD I2C 總線 接口設(shè)計(jì)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉