<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>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于VHDL/CPLD的I2C串行總線(xiàn)控制器設計及實(shí)現

基于VHDL/CPLD的I2C串行總線(xiàn)控制器設計及實(shí)現

作者: 時(shí)間:2010-05-25 來(lái)源:網(wǎng)絡(luò ) 收藏
和并行相比具有結構簡(jiǎn)單、占用引腳少、成本低的優(yōu)點(diǎn)。常見(jiàn)的有USB、IEEE1394、等,其中總線(xiàn)具有使用簡(jiǎn)單的特點(diǎn),在單片機、E2PROM、LCD等器件中具有廣泛的應用。

  (Inter IC BUS)是Philips公司開(kāi)發(fā)的用于芯片之間連接的總線(xiàn)。 I2C總線(xiàn)用兩根信號線(xiàn)進(jìn)行數據傳輸,一根為串行數據線(xiàn)(SDA),另一根為串行時(shí)鐘線(xiàn)(SCL)。I2C總線(xiàn)允許若干兼容器件(如存儲器、A/D轉換器、D/A轉換器、LCD驅動(dòng)器等)共享總線(xiàn)。I2C總線(xiàn)理論上可以允許的最大設備數,是以總線(xiàn)上所有器件的總電容(其中包括連線(xiàn)本身的電容和連接端的引出電容)不超過(guò)400pF為限,總線(xiàn)上所有器件依靠SDA線(xiàn)發(fā)送的地址信號尋址,不需要片選線(xiàn)。任何時(shí)刻總線(xiàn)只能由一個(gè)主器件控制,各從器件在總線(xiàn)空閑時(shí)啟動(dòng)數據傳輸。I2C總線(xiàn)數據傳輸的標準模式速率為100kbps,快速模式速率為400kbps,高速模式速率為3.4Mbps。

本文引用地址:http://dyxdggzs.com/article/163062.htm

  用VHDL和CPLD數字系統具有傳統方法無(wú)可比擬的優(yōu)越性,它已經(jīng)成為大規模集成電路最為有效的一種手段。為簡(jiǎn)單起見(jiàn),本文采用VHDL標準模式的I2C總線(xiàn)控制電路。

  1 I2C總線(xiàn)上的數據傳輸

  I2C總線(xiàn)包含時(shí)鐘線(xiàn)SCL和數據線(xiàn)SDA兩條連線(xiàn),SCL由主機產(chǎn)生。I2C總線(xiàn)的數據傳輸流程如圖1所示。其傳輸過(guò)程為:首先主機產(chǎn)生起始位,然后傳送第一個(gè)字節。8位數據中首先傳送的是數據的最高位MSB,最低位LSB為讀寫(xiě)指示位,1表示主機讀,0表示主機寫(xiě),高7位地址可使主機尋址128個(gè)從器件。

基于VHDL/CPLD的I2C串行總線(xiàn)控制器設計及實(shí)現

  從機收到第一字節數據后發(fā)響應位,主機收到響應位后接著(zhù)發(fā)送第二個(gè)字節的數據。數據發(fā)送完畢后產(chǎn)生結束位,數據傳送結束。數據傳送時(shí),只有時(shí)鐘SCL為低電平時(shí)SDA才允許切換,SCL為高電平時(shí)SDA必須穩定,此時(shí)SDA的電平就是總線(xiàn)轉送的數值。

在SCL為高電平時(shí),SDA線(xiàn)由高到低切換表示起始位,SDA線(xiàn)由低到高切換表示停止位。起始位和停止位由主機產(chǎn)生,在起始位產(chǎn)生后總線(xiàn)處于忙狀態(tài),停止位出現并經(jīng)過(guò)一定時(shí)間后總線(xiàn)進(jìn)入空閑狀態(tài)。發(fā)送器每發(fā)送一個(gè)字節后,接收器必須產(chǎn)生一個(gè)響應位。響應位的驅動(dòng)時(shí)鐘由主機產(chǎn)生則接收器將SDA線(xiàn)拉低產(chǎn)生響應位。如果主機是接收器,則接收最后一個(gè)字節時(shí),響應位為1,通知從機結束發(fā)送,否則響應位為0。當從機不能響應從機地址(例如它正在執行一些實(shí)時(shí)函數,不能接收或發(fā)送)時(shí),或響應了從機地址但在傳輸一段時(shí)間后不能接收更多的數據字節,此時(shí)從機可以通過(guò)響應位為1通知主機終止當前的傳輸,于是主機產(chǎn)生一個(gè)停止位終止傳輸,或者產(chǎn)生重復開(kāi)始位開(kāi)始新的傳輸。

  SDA線(xiàn)上傳送的數據必須為8位,每次傳送可以發(fā)送的字節數量不受限制。如果從機要完成一些其他功能(例如執行一個(gè)內部中斷服務(wù)程序)才能接收或發(fā)送下一個(gè)數據字節,則從機可以使SCL維持低電位,迫使主機進(jìn)入等待狀態(tài)。從機準備好接收或發(fā)送下一個(gè)數據字節時(shí),釋放SCL,數據傳輸繼續。

  SDA和SCL都是雙向線(xiàn)路,使用時(shí)通過(guò)上拉電阻連接到電源??偩€(xiàn)空閑時(shí)這兩條線(xiàn)路都是高電平,連接到總線(xiàn)的器件的輸出級必須是漏極開(kāi)路或集電極開(kāi)路,這樣總線(xiàn)才能執行“線(xiàn)與”的功能。


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

評論


相關(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>