1 / 27

IIC 匯流排

IIC 匯流排. IIC 概念. 用於低速週邊設備傳輸 只用兩條雙向傳輸線,連接所有的設備 Serial Data Line (SDL) 和 Serial Clock Line (SCL) 均各通過一個上拉電阻連接到電源正端 當 IIC 匯流排空閒時 SDL 和 SCL 傳輸線均為高準位 IIC 匯流排的最高資料傳輸速率 可達到 100Kb/S 可連接到匯流排上的 IC 設備數目 受到匯流排電容的限制( 400PF ). IIC 資料傳輸步驟. 第一種情況,主設備要傳送資料到從 IC 設備步驟: 1 、主設備定址從設備 2 、主設備發送資料到從設備

tayte
Download Presentation

IIC 匯流排

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IIC匯流排

  2. IIC概念 • 用於低速週邊設備傳輸 • 只用兩條雙向傳輸線,連接所有的設備 • Serial Data Line (SDL)和Serial Clock Line (SCL) • 均各通過一個上拉電阻連接到電源正端 • 當IIC匯流排空閒時 • SDL和SCL傳輸線均為高準位 • IIC匯流排的最高資料傳輸速率 • 可達到100Kb/S • 可連接到匯流排上的IC設備數目 • 受到匯流排電容的限制(400PF)

  3. IIC資料傳輸步驟 • 第一種情況,主設備要傳送資料到從IC設備步驟: • 1、主設備定址從設備 • 2、主設備發送資料到從設備 • 主設備為發送器,從設備為接收器 • 3、主設備終止資料的傳輸 • 第二種情況,主設備要從從設備獲取資料步驟: • 1、主設備定址從設備 • 2、主IC設備從從IC設備接收資料 • 主設備為接收器,從設備為發送器 • 3、主IC設備終止資料的傳輸 • 即使是在第二種情況 • 主IC設備也可以產生時序信號並終止資料的傳輸

  4. 開始與停止條件(Start and Stop Conditions) • 由主設備產生 • 在開始條件產生後,處於忙狀態 • 在完成資料傳輸產生停止條件後,處於空閒狀態 • 開始條件 • 當SCL為高準位時 • SDA產生由高準位到低準位的跳變。 • 停止條件 • 當SCL為高準位時,SDA產生由低準位到高準位的跳變。

  5. 資料傳輸操作(Data Transfer Operations)-資料位元組格式(Data Byte Format) • SDA的資料位元組必須 • 為8位元的長度 • 每一次傳輸的位元組數沒有限制 • 每傳輸一個位元組必須跟一個回應位元ACK • 傳輸位元組時最高位元在前(MSB-first) • 如果接收器不能接收其他剩餘的資料位元組時 • 接收器就保持SCL為低準位 • 強制發送器進入等待狀態 • 只當接收器準備接收其他位元組並釋放SCL傳輸線時 • 資料傳輸才會繼續進行

  6. 資料傳輸操作(Data Transfer Operations)- 回應過程(Acknowledge Procedure) • 傳輸過程中必須有回應信號 • 回應信號由匯流排主控器產生 • 被定址的接收器在接收到每一個位元組後 • 必須產生一個回應信號 • 當從接收器不能產生回應信號時 • 必須釋放資料線,然後由主控器產生停止條件中止資料傳輸。 • 在回應時脈脈衝期間 • 發送器釋放SDA傳輸線(為高準位) • 但此時接收器必須下拉SDA傳輸線 • 以便在時脈脈衝的高準位期間SDA能夠保持穩定的低準位

  7. 資料傳輸操作(Data Transfer Operations)- 回應過程(Acknowledge Procedure) • The ACK pulse should occur at the ninth clock of the SCL line. • Receiver should send an ACK bit to the transmitter. • The master should generate the clock pulse required to transmit the ACK bit. • Transmitter should release the SDA line by making the SDA line High • when the ACK clock pulse is received.

  8. IIC匯流排定址(IIC-Bus Addressing) • 定址過程 • 在開始條件後發送的第一個位元組 • 該位元組位址決定主控器選擇哪一個從設備 • 第一個位元組總是緊跟在開始過程之後 • 第一個資料位元組的前7位元為從設備位址 • 第8位為方向位元,決定資料的傳輸方向(讀/寫)。 • 當位址位元組發出以後 • 每一個從設備將該位址與自己的位址進行比較 • 若位址匹配 • 被主控器定址為一個從發送器或從接收器。 • 還可以通過“廣播”定址方式 • 同時定址所有的IC設備

  9. IIC廣播定址(General Call Address) • 用於定址連接在IIC匯流排上的每一個設備 • 但當某個設備不需要進行資料傳輸時 • 將忽略廣播定址而不作任何回應。 • 當使用廣播定址時,理論上所有的設備都應該回應回應信號 • 但設備也可以忽略這個這個位址。 • 廣播定址的第二個位元組決定其後的操作

  10. 資料傳輸操作(Data Transfer Operations)-資料傳輸格式(Data Transfer Format) • 當產生開始條件後 • 首先發送7位的從設備位址 • 第八位元為資料方向位元(R/W) • 0”表示發送資料(寫) • “1”表示請求資料(讀) • 資料傳輸在主控器產生停止條件後中止 • 主控器可以在不產生前一個停止條件的情況下 • 再產生開始條件並定址另一個從設備

  11. IIC傳輸資料格式

  12. S3C44B0X IIC介面 • S3C44B0X處理器 • 內建支援多主匯流排的IIC介面。 • 符合IIC協定的設備連接 • 雙向資料線IICSDA和IICSCL • S3C44B0X處理器支援 • 主傳送、主接收、從發送、從接收四種工作模式

  13. S3C44B0X IIC暫存器- 控制暫存器IICCON • ACK Enable • 0:禁止產生ACK; 1:允許產生ACK信號。 • Tx CLK select • 0:IICCLK = fMCLK /16; 1:IICCLK = fMCLK /512。 • Tx/Rx Interrupt • 0:禁止Tx/Rx中斷; 1:允許Tx/Rx中斷。 • INT_PND • 寫0:清除中斷旗標並重新啟動IIC匯流排寫操作; 讀1:中斷旗標置位元。 • Tx Clock Value • IIC發送參加載初始資料,決定了發送頻率;

  14. S3C44B0X IIC暫存器- 控制暫存器IICCON

  15. S3C44B0X IIC暫存器-狀態暫存器IICSTAT • Mode_S • 00:從接收,10:主接收,01:從發送,11:主發送。 • Cond_S • 寫0:產生STOP_C信號,讀0:IIC匯流排空閒,寫1:產生START_C信號,讀1:IIC匯流排忙。 • SOE • 0:禁止Tx/Rx信號傳輸,1:允許Tx/Rx信號傳輸。 • ASF • 0:IIC匯流排仲裁成功 ,1:仲裁不成功,IIC匯流排不能工作。 • ASS • 作為從設備:為0:測試到START_C或STOP_C信號,為1:接收到位址。 • AZS • 作為從設備時:為0:收到START_C或STOP_C信號,為1:IIC匯流排上的位址為0。 • LRB • 接收到的最低資料位元:為0:收到ACK信號,為1:沒有接收到ACK信號。

  16. S3C44B0X IIC暫存器-狀態暫存器IICSTAT

  17. S3C44B0X IIC暫存器- 位址暫存器 IICADD • SlvADDR • 7:1為從設備的設備位址和訊框面位址;0位是讀寫控制(0:寫;1:讀);當SOE=0時可對SlvADDR進行讀寫。

  18. S3C44B0X IIC暫存器 - 發送接收移位暫存器IICDS • ShitDATA • 7:0存放IIC匯流排要移位元傳輸或接收的資料,當SOE=1時可對ShitDATA進行讀寫

  19. IIC內部控制邏輯

  20. S3C44B0X IIC讀寫訊框格式

  21. Operations for Master/Transmitter Mode

  22. Operations for Master/Receiver Mode

  23. 電路設計 • 地S3CEV40實驗平臺中,使用S3C44B0X處理器內置的IIC控制器作為IIC通信主設備,AT24C04 EEPROM為從設備。 • 電路設計如圖所示:

  24. AT24CXX EEPROM • 其常用的協定主要有 • 兩線串列連接協定(IIC)和三線串列連接協定 • 帶IIC 匯流排界面的EEPROM 有許多型號 • 其中AT24CXX 系列使用十分普遍 • 產品包括AT2401/02/04/08/16 等,其容量(位元組數x訊框)分別為 • 28x8/256x8/512x8/1024x8/2048x8 • 適用於2V~5V的低電壓的操作 • 具有低功耗和高可靠性等優點 • 在IIC 匯流排中對AT24C04 內部存儲單元讀寫 • 除了要給出元件的設備位址(DADDR) • 外還須指定讀寫的訊框面位址(PADDR)

  25. AT24系列EEPROM-接腳的功能 • SCL 串列時脈線 • 遵循ISO/IEC7816同步協定 • 漏極開路,需接上拉電阻,在該腳的上升沿 • SDA 串列資料線 • 漏極開路,需接上拉電阻,雙向串列資料線,”Open-Drain” • 可與其他開路元件“Wire-AND”連線 • A0、A1、A2 元件/訊框定址位址 • 在AT24C01/02中,接腳被固定連接 • 其他AT24Cxx均可接定址位址線 • WP 讀防寫 • 接低電位時可對整片空間進行讀寫 • 高電位時不能讀寫受保護區 • Vcc/GND • 一般輸入+5V的工作電壓

  26. AT24CXX的資料操作格式-寫入操作 • 寫任意地址ADDR_W • START_C OPADDR_W ACK ADDR_W ACK data ACK STOP_C • 從位址ADDR_W起連續寫入n個位元組(同一訊框面) • START_C OPADDR_W ACK ADDR_W ACK data1 ACK data2 ACK … dataN ACK STOP_C

  27. AT24CXX的資料操作格式-讀出操作 • 讀任意地址ADDR_R • START_C OPADDR_W ACK ADDR_R ACK OPADDR_R ACK data STOP_C • 從位址ADDR_R起連續讀出n個位元組(同一訊框面) • START_C OPADDR_R ACK data1 ACK data2 ACK … dataN ACK STOP_C

More Related