<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > I2C總線(xiàn)通訊接口器件的CPLD實(shí)現

I2C總線(xiàn)通訊接口器件的CPLD實(shí)現

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

I2C(IIC)總線(xiàn)是PHILIPS公司開(kāi)發(fā)的一種簡(jiǎn)單、雙向、二線(xiàn)制、同步串行總線(xiàn)。它只需兩根線(xiàn)(串行時(shí)鐘線(xiàn)和串行數據線(xiàn))即可在連接于總線(xiàn)上的器件之間傳送信息。該總線(xiàn)是高性能串行總線(xiàn),具備多主機系統所需要的裁決和高低速設備同步等功能,應用極為廣泛。目前市場(chǎng)上雖然有專(zhuān)用IIC總線(xiàn)接口芯片,但是地址可選范圍小、性能指標固定、功能單一、使用不方便。根據IIC總線(xiàn)的電氣特性及其通訊協(xié)議,采用ALTERA公司的FLEX10K系列器件EPF10K10LC84-3可以方便地實(shí)現I2C(IIC)總線(xiàn)的,且具有高速、易調試、可以靈活地實(shí)現地在線(xiàn)配置等優(yōu)點(diǎn),同時(shí)大大地減少了系統的開(kāi)發(fā)周期。

1 IIC總線(xiàn)的數據傳輸規范

I2C(IIC)總線(xiàn)主從機之間的一次數據傳送稱(chēng)為一幀,由啟動(dòng)信號、地址碼、若干數據字節、應答位以及停止信號等組成。通訊啟動(dòng)時(shí),主動(dòng)發(fā)送一個(gè)啟動(dòng)信號(當SCL線(xiàn)上是高電平時(shí),SDA線(xiàn)上產(chǎn)生一個(gè)下降沿)、從機的地址碼(8位)和讀寫(xiě)信號;通訊停止時(shí),主機發(fā)送一個(gè)停止信號(當SCL線(xiàn)上是高電平時(shí),SDA線(xiàn)上產(chǎn)生一個(gè)上升沿)。在數據傳送過(guò)程中,當SCL線(xiàn)上是高電平時(shí),必須保證SDA線(xiàn)上的數據穩定;傳送一個(gè)字節的數據,必須由接收機發(fā)一個(gè)應答信號??偩€(xiàn)的傳輸碼速率為100kbps(標準)~400kbps(高速)。采用+5V電源供電時(shí),輸入電平規定為:VILmax=1.5V,VIHmin=3V;采用寬電源電壓時(shí),電平規定為:VILmax=1.5VDD,VIHmin=3VDD。 IIC總線(xiàn)的通訊過(guò)程如圖1所示。

2 ISP的邏輯實(shí)現

基于IIC總線(xiàn)的數據傳輸規范,為完成IIC總線(xiàn)的數據發(fā)送與接收,采用ISP器件實(shí)現的邏輯功能框圖如圖2所示。通過(guò)頻選、控制、可控時(shí)鐘可獲得100kHz、200kHz、300kHz、400kHz的時(shí)鐘頻率。器件退出總線(xiàn)競爭后,時(shí)鐘線(xiàn)置高電平。

2.1 通訊的啟動(dòng)與停止

在主機方式下,接收數據時(shí),ISP器件必須通過(guò)啟動(dòng)信號生成器送出一個(gè)啟動(dòng)信號,然后發(fā)送從機的地址信號和讀寫(xiě)信號。只有這樣,才能在總線(xiàn)上發(fā)送數據。該過(guò)程由控制寄存器啟動(dòng)。VHDL描述如下: PROCESS(WR,CS) ――WR IS CPU WRITE SIGNAL ――CS IS THIS CHIP"S SELECT SIGNAL ADDRS:="0"; IF(Ctrreg(0)="1"AND Ctrreg(3)="1" AND SCL1="1")THEN ――Ctrreg 為控制寄存器 CLK1COUNT:="0"; SDA1:="1"; IF(CLK1 EVENT AND CLK="0")THEN IF(CLK1COUNT="3")THEN SDA1:="1"; ADDRS:="1"; Ctrreg(3):="0"; CSTA:="1"; ELSE CLK1COUNT:=CLK1COUNT+1; END IF; END IF; END IF; IF(ADDRS="1"AND SCL1 "EVENT AND SCL1="1")THEN %26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;――將數據寄存器中的數據 %26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;%26;#183;――及WR信號移位發(fā)出(略) END IF; END PROCESS;當一次通訊結束時(shí),主機要發(fā)送停止信號。該過(guò)程同樣同控制寄存器控制;當控制字第二位為"1"時(shí),ISP器件產(chǎn)生停止信號。VHDL描述與啟動(dòng)類(lèi)似。


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

關(guān)鍵詞: I2C總線(xiàn) 通訊接口 CPLD

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>