版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
集成電路互連總線IC演示文稿第一頁,共二十四頁。主要內(nèi)容
1.1I2C總線通用知識(shí)1.2I2C總線的硬件相關(guān)術(shù)語與典型電路1.3I2C總線數(shù)據(jù)通信協(xié)議概要1.4主機(jī)向從機(jī)讀/寫1個(gè)字節(jié)數(shù)據(jù)的過程1.5關(guān)于I2C的進(jìn)一步討論第二頁,共二十四頁。1.1I2C總線通用知識(shí)1.1.1I2C總線的歷史概況與特點(diǎn)I2C(Inter-IntegratedCircuit)總線標(biāo)準(zhǔn)的歷史概況1992年P(guān)HILIPS首次發(fā)布I2C總線規(guī)范Version1.01998年P(guān)HILIPS發(fā)布I2C總線規(guī)范Version2.0,至此標(biāo)準(zhǔn)模式和快速模式的I2C總線已經(jīng)獲得了廣泛應(yīng)用,標(biāo)準(zhǔn)模式傳輸速率為100kbps,快速模式400kbps。同時(shí),I2C總線也由7位尋址發(fā)展到10位尋址,滿足了更大尋址空間的需求2001年P(guān)HILIPS又發(fā)布了I2C總線規(guī)范Version2.1,完善和擴(kuò)展了I2C總線的功能,并提出了傳輸速率可達(dá)3.4Mbps的高速模式,這使得I2C總線能夠支持現(xiàn)有及將來的高速串行傳輸,如EEPROM和Flash存儲(chǔ)器等第三頁,共二十四頁。I2C總線特點(diǎn)在硬件上,二線制的I2C串行總線使得各IC只需最簡單的連接,而且總線接口都集成在IC中,不需另加總線接口電路I2C總線還支持多主控(multi-mastering)串行的8位雙向數(shù)據(jù)傳輸位速率在標(biāo)準(zhǔn)模式下可達(dá)100kbps,快速模式下可達(dá)400kbps,高速模式下可達(dá)3.4Mbps連接到相同總線的IC數(shù)量只受到總線最大電容(400pf)的限制。但如果在總線中加上82B715總線遠(yuǎn)程驅(qū)動(dòng)器可以把總線電容限制擴(kuò)展十倍,傳輸距離可增加到15m第四頁,共二十四頁。1.2I2C總線的硬件相關(guān)術(shù)語與典型電路I2C總線硬件相關(guān)術(shù)語主機(jī)(主控器):在I2C總線中,提供時(shí)鐘信號(hào),對(duì)總線時(shí)序進(jìn)行控制的器件從機(jī)(被控器):在I2C系統(tǒng)中,除主機(jī)外的其它設(shè)備均為從機(jī)地址:每個(gè)I2C器件都有自己的地址,以供自身在從機(jī)模式下使用發(fā)送器:發(fā)送數(shù)據(jù)到總線的器件接收器:從總線接收數(shù)據(jù)的器件SDA(SerialDAta):串行數(shù)據(jù)線SCL(SerialCLock):串行時(shí)鐘線第五頁,共二十四頁。I2C總線的典型電路
下圖給出一個(gè)由MCU作為主機(jī),通過I2C總線帶3個(gè)從機(jī)的單主機(jī)I2C總線系統(tǒng)。這是最常用、最典型的I2C總線連接方式
I2C總線的典型連接第六頁,共二十四頁。1.3I2C總線數(shù)據(jù)通信協(xié)議概要I2C總線上數(shù)據(jù)的有效性
I2C總線以串行方式傳輸數(shù)據(jù),從數(shù)據(jù)字節(jié)的最高位開始傳送,每個(gè)數(shù)位在SCL上都有一個(gè)時(shí)鐘脈沖相對(duì)應(yīng)。在一個(gè)時(shí)鐘周期內(nèi),當(dāng)時(shí)鐘線高電平時(shí),數(shù)據(jù)線上必須保持穩(wěn)定的邏輯電平狀態(tài),高電平為數(shù)據(jù)1,低電平為數(shù)據(jù)0。當(dāng)時(shí)鐘信號(hào)為低電平時(shí),才允許數(shù)據(jù)線上的電平狀態(tài)變化I2C總線上數(shù)據(jù)的有效性第七頁,共二十四頁。I2C總線上的信號(hào)類型開始信號(hào)(START):如下(圖1)當(dāng)SCL為高電平時(shí),SDA由高電平向低電平跳變,產(chǎn)生開始信號(hào)。當(dāng)總線空閑的時(shí)候(例如沒有主動(dòng)設(shè)備在使用總線,即SDA和SCL都處于高電平),主機(jī)通過發(fā)送開始信號(hào)(START)建立通信停止信號(hào)(STOP):如下(圖1)當(dāng)SCL為高電平時(shí),SDA由低電平向高電平的跳變,產(chǎn)生停止信號(hào)。主機(jī)通過發(fā)送停止信號(hào),結(jié)束時(shí)鐘信號(hào)和數(shù)據(jù)通信。SDA和SCL都將被復(fù)位為高電平狀態(tài)重新開始信號(hào)(RepeatedSTART):在I2C總線上,由主機(jī)發(fā)送一個(gè)開始信號(hào)啟動(dòng)一次通信后,在首次發(fā)送停止信號(hào)之前,主機(jī)通過發(fā)送重新開始信號(hào),可以轉(zhuǎn)換與當(dāng)前從機(jī)的通信模式,或是切換到與另一個(gè)從機(jī)通信。如下(圖1)所示,當(dāng)SCL為高電平時(shí),SDA由高電平向低電平跳變,產(chǎn)生重新開始信號(hào),它的本質(zhì)就是一個(gè)開始信號(hào)第八頁,共二十四頁。圖1:開始、重新開始和停止信號(hào)第九頁,共二十四頁。應(yīng)答信號(hào)(A):接收數(shù)據(jù)的IC在接收到8位數(shù)據(jù)后,向發(fā)送數(shù)據(jù)的IC發(fā)出的特定的低電平脈沖。每一個(gè)數(shù)據(jù)字節(jié)后面都要跟一位應(yīng)答信號(hào),表示已收到數(shù)據(jù)I2C總線的應(yīng)答信號(hào)第十頁,共二十四頁。I2C總線上數(shù)據(jù)傳輸格式一般情況下,一個(gè)標(biāo)準(zhǔn)的I2C通信由四部分組成:開始信號(hào)、從機(jī)地址傳輸、數(shù)據(jù)傳輸和結(jié)束信號(hào)。I2C總線上傳送的每一個(gè)字節(jié)均為8位,首先發(fā)送的數(shù)據(jù)位為最高位,每傳送一個(gè)字節(jié)后都必須跟隨一個(gè)應(yīng)答位,每次通信的數(shù)據(jù)字節(jié)數(shù)是沒有限制的;在全部數(shù)據(jù)傳送結(jié)束后,由主機(jī)發(fā)送停止信號(hào),結(jié)束通信
I2C總線的數(shù)據(jù)傳輸格式第十一頁,共二十四頁。I2C總線尋址約定為了消除I2C總線系統(tǒng)中主控器與被控器的地址選擇線,最大限度地簡化總線連接線,I2C總線采用了獨(dú)特的尋址約定,規(guī)定了起始信號(hào)后的第一個(gè)字節(jié)為尋址字節(jié),用來尋址被控器件,并規(guī)定數(shù)據(jù)傳送方向。在I2C總線系統(tǒng)中,尋址字節(jié)由被控器的7位地址位(D7~D1位)和一位方向位(D0位)組成。方向位為0時(shí),表示主控器將數(shù)據(jù)寫入被控器,為1時(shí)表示主控器從被控器讀取數(shù)據(jù)。主控器發(fā)送起始信號(hào)后,立即發(fā)送尋址字節(jié),這時(shí)總線上的所有器件都將尋址字節(jié)中的7位地址與自己器件地址比較。如果兩者相同,則該器件認(rèn)為被主控器尋址,并發(fā)送應(yīng)答信號(hào),被控器根據(jù)數(shù)據(jù)方向位(R/W)確定自身是作為發(fā)送器還是接收器。第十二頁,共二十四頁。1.4主機(jī)向從機(jī)讀/寫1個(gè)字節(jié)數(shù)據(jù)的過程主機(jī)向從機(jī)寫1個(gè)字節(jié)數(shù)據(jù)的過程
主機(jī)要向從機(jī)寫1個(gè)字節(jié)數(shù)據(jù)時(shí),主機(jī)首先產(chǎn)生START信號(hào),然后緊跟著發(fā)送一個(gè)從機(jī)地址,這個(gè)地址共有7位,緊接著的第8位是數(shù)據(jù)方向位(R/W),0表示主機(jī)發(fā)送數(shù)據(jù)(寫),1表示主機(jī)接收數(shù)據(jù)(讀),這時(shí)候主機(jī)等待從機(jī)的應(yīng)答信號(hào)(ACK),當(dāng)主機(jī)收到應(yīng)答信號(hào)時(shí),發(fā)送要訪問的地址,繼續(xù)等待從機(jī)的響應(yīng)信號(hào),當(dāng)主機(jī)收到響應(yīng)信號(hào)時(shí),發(fā)送1個(gè)字節(jié)的數(shù)據(jù),繼續(xù)等待從機(jī)的響應(yīng)信號(hào),當(dāng)主機(jī)收到響應(yīng)信號(hào)時(shí),產(chǎn)生停止信號(hào),結(jié)束傳送過程。主機(jī)向從機(jī)寫數(shù)據(jù)第十三頁,共二十四頁。主機(jī)從從機(jī)讀1個(gè)字節(jié)數(shù)據(jù)的過程
當(dāng)主機(jī)要從從機(jī)讀1個(gè)字節(jié)數(shù)據(jù)時(shí),主機(jī)首先產(chǎn)生START信號(hào),然后緊跟著發(fā)送一個(gè)從機(jī)地址,注意此時(shí)該地址的第8位為0,表明是向從機(jī)寫命令,這時(shí)候主機(jī)等待從機(jī)的應(yīng)答信號(hào)(ACK),當(dāng)主機(jī)收到應(yīng)答信號(hào)時(shí),發(fā)送要訪問的地址,繼續(xù)等待從機(jī)的應(yīng)答信號(hào),當(dāng)主機(jī)收到應(yīng)答信號(hào)后,主機(jī)要改變通信模式,所以主機(jī)發(fā)送重新開始信號(hào),然后緊跟著發(fā)送一個(gè)從機(jī)地址,注意此時(shí)該地址的第8位為1,表明將主機(jī)設(shè)置成接收模式開始讀取數(shù)據(jù),這時(shí)主機(jī)等待從機(jī)的應(yīng)答信號(hào),當(dāng)主機(jī)收到應(yīng)答信號(hào)時(shí),就可以接收1個(gè)字節(jié)的數(shù)據(jù),當(dāng)接收完成后,主機(jī)發(fā)送非應(yīng)答信號(hào),表示不再接收數(shù)據(jù),主機(jī)進(jìn)而產(chǎn)生停止信號(hào),結(jié)束傳送過程。主機(jī)從從機(jī)讀數(shù)據(jù)第十四頁,共二十四頁。*AW60的I2C模塊寄存器
AW60的I2C模塊相關(guān)寄存器寄存器名稱縮寫地址訪問權(quán)限基本功能地址寄存器I2C1A0x00000058讀/寫設(shè)置從機(jī)地址分頻寄存器I2C1F0x00000059讀/寫設(shè)置I2C模塊的工作頻率等控制寄存器I2C1C0x0000005A讀/寫設(shè)置傳輸格式、中斷使能等狀態(tài)寄存器I2C1S0x0000005B讀/寫表明I2C模塊的工作狀態(tài)數(shù)據(jù)I/O寄存器I2C1D0x0000005C讀/寫收發(fā)數(shù)據(jù)第十五頁,共二十四頁。I2C地址寄存器
I2C地址寄存器(I2CAddressRegister,I2C1A)D7~D1—ADR7~ADR1為MCU作為從機(jī)時(shí)的從機(jī)地址。當(dāng)主機(jī)在I2C總線上發(fā)送從機(jī)地址尋址從機(jī),MCU作為從機(jī)設(shè)備時(shí),將該地址與I2C1A的高7位比較,查看自己是否被主機(jī)選中D0—保留位。該位是為了將來的兼容性而設(shè)置的保留位,讀出總是0。寫I2C1A時(shí),D0位不使用數(shù)據(jù)位D7D6D5D4D3D2D1D0數(shù)據(jù)地址0/不用復(fù)位00000000第十六頁,共二十四頁。I2C分頻寄存器
I2C分頻寄存器(I2CFrequencyDividerRegister,I2C1F)用于產(chǎn)生相應(yīng)的分頻因子
I2C分頻寄存器的高2位MULT定義了增頻因子a,a和SCL的分頻因子配合使用,產(chǎn)生I2C波特率。當(dāng)MULT為00、01、10時(shí),a的值分別為1、2、4;MULT=11不使用I2C的低6位定義了I2C時(shí)鐘速率(ICR),這6位用來定義SCL分頻因子b和SDA保持值,分頻因子b乘以增頻因子a的值用于產(chǎn)生I2C總線波特率,公式如下:I2C總線波特率=CPU總線頻率(Hz)/(a×b)SDA保持時(shí)間是從SCL線上時(shí)鐘的下降沿開始到SDA線上數(shù)據(jù)穩(wěn)定這段時(shí)間,SDA保持值就是用來計(jì)算SDA保持時(shí)間的,公式如下:SDA保持時(shí)間=CPU總線周期×SDA保持值數(shù)據(jù)位D7D6D5D4D3D2D1D0定義MULTICR復(fù)位00000000第十七頁,共二十四頁。ICR中不同的內(nèi)容對(duì)應(yīng)著不同的SCL分頻因子值和不同的SDA保持值,下面舉例說明I2C總線波特率和SDA保持時(shí)間計(jì)算方法設(shè)CPU總線頻率為8MHz,MULT設(shè)置為01(a=2),要想得到100kbps的I2C總線波特率,則計(jì)算過程如下:根據(jù)公式:I2C總線波特率=CPU總線頻率(Hz)/(a×b),將已知相應(yīng)值帶入得:100000=8000000/(2×b),b=40根據(jù)SCL分頻因子b的值,在表10-2中查找相應(yīng)的ICR值和SDA保持值,可以看到,當(dāng)b=40時(shí),ICR=$07或$0B,而相應(yīng)的SDA保持值=10或9根據(jù)公式:SDA保持時(shí)間=CPU總線周期×SDA保持值,算得:ICR=$07,SDA保持值=10時(shí),SDA保持時(shí)間=1/8000000×10=1.25μsICR=$0B,SDA保持值=9時(shí),SDA保持時(shí)間=1/8000000×9=1.125μs較長的SDA保持時(shí)間,會(huì)降低通信速率,但同時(shí)也增加了穩(wěn)定性,并且能延長設(shè)備間的通信距離。編程時(shí)應(yīng)以通信的可靠性為原則,選擇合適的SDA保持時(shí)間來確定ICR值。如程序中選用SDA保持值=9,就能得到可靠的通信,那么將ICR設(shè)定為$0B即可;如果當(dāng)SDA保持值=9時(shí)通信不穩(wěn),就選擇另一個(gè)為10的值進(jìn)行實(shí)驗(yàn),若通信仍不穩(wěn)定,在保持I2C總線頻率不變的前提下,可通過改變MULT位來調(diào)整SDA保持時(shí)間第十八頁,共二十四頁。I2C控制寄存器
I2C控制寄存器(I2CControlRegister,I2C1C)D7—I2CEN(I2CEnable)為I2C使能位D6—I2CIE(I2CInterruptEnable)為I2C中斷請(qǐng)求允許位D5—MST(MasterModeSelect)為主模式選擇位D4—TX(TransmitModeSelect)為發(fā)送模式選擇位D3—TXAK(TransmitAcknowledgeEnable)為發(fā)送應(yīng)答使能位D2—RSTA(RepeatSTART)位,當(dāng)MCU在主機(jī)模式下,向該位寫1,將產(chǎn)生一個(gè)重新開始信號(hào)。該位讀出時(shí)總是0D1~D0—讀I2C1C時(shí),D1、D0位為0;寫I2C1C時(shí),D1、D0位不使用數(shù)據(jù)位D7D6D5D4D3D2D1D0定義I2CENI2CIEMSTTXTXAK0/RSTA0/不用0/不用復(fù)位00000000第十九頁,共二十四頁。I2C狀態(tài)寄存器
I2C狀態(tài)寄存器(I2CStatusRegister,I2C1S)
D7—TCF(TransferCompleteFlag)為發(fā)送完成標(biāo)志位D6—IAAS(AddressedasaSlave)為地址被選擇標(biāo)志位D5—BUSY(BusBusy)為總線忙標(biāo)志位D4—ARBL(ArbitrationLost)為仲裁丟失標(biāo)志位D3—讀I2C1S時(shí),D3位為0;寫I2C1S時(shí),D3位不使用D2—SRW(SlaveRead/Write)為從機(jī)讀寫標(biāo)志位D1—I2CIF(I2CInterruptFlag)為I2C中斷標(biāo)志位。I2CIF位可讀可寫D0—RXAK(ReceiveAcknowledge)為接收應(yīng)答標(biāo)志位數(shù)據(jù)位D7D6D5D4D3D2D1D0讀TCFIAASBUSYARBL0SRWI2CIFRXAK寫未定義未定義未定義未定義未定義復(fù)位00000000第二十頁,共二十四頁。I2CI/O數(shù)據(jù)寄存器
I2CI/O數(shù)據(jù)寄存器(I2CDataI/ORegister,I2C1D)
在主機(jī)發(fā)送模式下,將數(shù)據(jù)寫入I2C1D就初始化了數(shù)據(jù)發(fā)送,先發(fā)送數(shù)據(jù)字節(jié)的最高位。在主機(jī)接收模式下,讀該寄存器,準(zhǔn)備接收從機(jī)發(fā)往總線上的數(shù)據(jù)字節(jié)。該寄存器在MCU為從機(jī)模式時(shí)仍具有相同功能。值得注意的是,當(dāng)MCU要從主接收模式變?yōu)橹靼l(fā)送模式時(shí),應(yīng)在從I2C1D寄存器讀取數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度××企業(yè)vi設(shè)計(jì)合同
- 2024年度XX影視作品制作合同
- 2024烏魯木齊市國有土地上房屋征收補(bǔ)償合同
- 2024年度智能工廠設(shè)計(jì)與建設(shè)合同
- 公司員工試用期轉(zhuǎn)正個(gè)人工作總結(jié)
- 會(huì)計(jì)專業(yè)頂實(shí)習(xí)報(bào)告錦集五篇
- 中秋節(jié)晚會(huì)精彩致辭范文(6篇)
- 2024年二手房買賣合同模板(含裝修情況)
- 2024年度健身服務(wù)承包經(jīng)營合同協(xié)議書
- 2024年度知識(shí)產(chǎn)權(quán)許可使用合同:含許可范圍、許可費(fèi)用、使用期限
- 社會(huì)體育導(dǎo)論教學(xué)教案
- 廠房物業(yè)管理服務(wù)合同
- 心理健康家長會(huì)(課件)-小學(xué)生主題班會(huì)通用版
- 新生適應(yīng)性成長小組計(jì)劃書
- 08SS523建筑小區(qū)塑料排水檢查井
- 教學(xué)評(píng)一體化的教學(xué)案例 課件
- 父親去世訃告范文(通用12篇)
- 人教版八年級(jí)上Unit 2How often do you exercise Section A(Grammar Focus-3c)
- 導(dǎo)讀工作總結(jié)優(yōu)秀范文5篇
- SB/T 10851-2012會(huì)議中心運(yùn)營服務(wù)規(guī)范
- GB/T 6587-2012電子測量儀器通用規(guī)范
評(píng)論
0/150
提交評(píng)論