資料介紹
I2C是由Philips公司發(fā)明的一種串行數(shù)據(jù)通信協(xié)議,僅使用兩根信號線:SerialClock(簡稱SCL)和SerialData(簡稱 SDA)。I2C是總線結(jié)構(gòu),1個Master,1個或多個Slave,各Slave設(shè)備以7位地址區(qū)分,地址后面再跟1位讀寫位,表示讀(=1)或者寫(=0),所以我們有時也可看到8位形式的設(shè)備地址,此時每個設(shè)備有讀、寫兩個地址,高7位地址其實是相同的。 I2C數(shù)據(jù)格式如下:無數(shù)據(jù):SCL=1,SDA=1;開始位(Start):當(dāng)SCL=1時,SDA由1向0跳變;停止位(Stop):當(dāng)SCL=1時,SDA由0向1跳變;數(shù)據(jù)位:當(dāng)SCL由0向1跳變時,由發(fā)送方控制SDA,此時SDA為有效數(shù)據(jù),不可隨意改變SDA;當(dāng)SCL保持為0時,SDA上的數(shù)據(jù)可隨意改變;地址位:定義同數(shù)據(jù)位,但只由Master發(fā)給Slave;應(yīng)答位(ACK):當(dāng)發(fā)送方傳送完8位時,發(fā)送方釋放SDA,由接收方控制SDA,且SDA=0;否應(yīng)答位(NACK):當(dāng)發(fā)送方傳送完8位時,發(fā)送方釋放SDA,由接收方控制SDA,且SDA=1。當(dāng)數(shù)據(jù)為單字節(jié)傳送時,格式為:開始位,8位地址位(含1位讀寫位),應(yīng)答,8位數(shù)據(jù),應(yīng)答,停止位。當(dāng)數(shù)據(jù)為一串字節(jié)傳送時,格式為:開始位,8位地址位(含1位讀寫位),應(yīng)答,8位數(shù)據(jù),應(yīng)答,8位數(shù)據(jù),應(yīng)答,……,8位數(shù)據(jù),應(yīng)答,停止位。需要注意的是:
1,SCL一直由Master控制,SDA依照數(shù)據(jù)傳送的方向,讀數(shù)據(jù)時由Slave控制SDA,寫數(shù)據(jù)時由Master控制SDA。當(dāng)8位數(shù)據(jù)傳送完畢之后,應(yīng)答位或者否應(yīng)答位的SDA控制權(quán)與數(shù)據(jù)位傳送時相反。
2,開始位“Start”和停止位“Stop”,只能由Master來發(fā)出。
3,地址的8位傳送完畢后,成功配置地址的Slave設(shè)備必須發(fā)送“ACK”。否則否則一定時間之后Master視為超時,將放棄數(shù)據(jù)傳送,發(fā)送“Stop”。
4,當(dāng)寫數(shù)據(jù)的時候,Master每發(fā)送完8個數(shù)據(jù)位,Slave設(shè)備如果還有空間接受下一個字節(jié)應(yīng)該回答“ACK”,Slave設(shè)備如果沒有空間接受更多的字節(jié)應(yīng)該回答“NACK”,Master當(dāng)收到“NACK”或者一定時間之后沒收到任何數(shù)據(jù)將視為超時,此時 Master放棄數(shù)據(jù)傳送,發(fā)送“Stop”。
5,當(dāng)讀數(shù)據(jù)的時候,Slave設(shè)備每發(fā)送完8個數(shù)據(jù)位,如果Master希望繼續(xù)讀下一個字節(jié),Master應(yīng)該回答“ACK”以提示 Slave準(zhǔn)備下一個數(shù)據(jù),如果Master不希望讀取更多字節(jié),Master應(yīng)該回答“NACK”以提示Slave設(shè)備準(zhǔn)備接收Stop信號。
6,當(dāng)Master速度過快Slave端來不及處理時,Slave設(shè)備可以拉低SCL不放(SCL=0將發(fā)生“線與”)以阻止Master發(fā)送更多的數(shù)據(jù)。此時Master將視情況減慢或結(jié)束數(shù)據(jù)傳送。在實際應(yīng)用中,并沒有強制規(guī)定數(shù)據(jù)接收方必須對于發(fā)送的8位數(shù)據(jù)做出回應(yīng),尤其是在Master和Slave端都是用GPIO軟件模擬的方法來實現(xiàn)的情況下,編程者可以事先約定數(shù)據(jù)傳送的長度,slave不檢查NACK,有時可以起到減少系統(tǒng)開銷的效果。但是如果slave方是硬件i2c要求一定要標(biāo)準(zhǔn)的NACK,master方是GPIO軟件模擬i2c并沒有正確的發(fā)送NACK,就會出現(xiàn)“slave收不到 stop”導(dǎo)致i2c掛死。
- STC單片機IO口模擬I2C(主從)文件資料 12次下載
- 使用單片機實現(xiàn)I2C總線的實驗文件免費下載 7次下載
- 使用51單片機實現(xiàn)PCF8591 I2C串行AD的仿真文件免費下載 16次下載
- 51單片機的I2C總線驅(qū)動程序免費下載
- 使用C語言模擬51單片機的I2C總線的資料和程序免費下載
- 使用51單片機IO模擬I2C的程序免費下載
- STC89C52單片機的I2C使用程序免費下載
- 如何使用STM32單片機的硬件I2C讀取MPU6050的數(shù)據(jù)資料和程序免費下載 0次下載
- 使用51單片機模擬I2C的原理和程序免費下載
- 使用51單片機模擬I2C總線的程序免費下載
- 51單片機的I2C總線的資料介紹和示例程序免費下載
- 使用51單片機模擬I2C總線的驅(qū)動程序免費下載
- I2C總線的51單片機通用驅(qū)動程序 28次下載
- 基于51的I2c總線 34次下載
- 億恒C166 系列單片機I2C 總線的軟件模擬
- i2c總線用來做什么_i2c總線數(shù)據(jù)傳輸過程 7086次閱讀
- 使用51單片機讀寫AT29C040的C語言程序免費下載 4529次閱讀
- HD44780讀寫單片機C51程序免費下載 4146次閱讀
- 使用HD44780讀寫單片機的C51程序詳細(xì)概述 3112次閱讀
- I2C總線驅(qū)動的C語言源程序詳細(xì)說明 5050次閱讀
- I2C總線的基礎(chǔ)知識 1860次閱讀
- 如何使用C語言實現(xiàn)51單片機模擬I2C總線 4268次閱讀
- 單片機的I2C通信設(shè)計 2871次閱讀
- 基于MCS-51單片機I2C總線接口電路的設(shè)計 3245次閱讀
- AT89S52單片機并行端口模擬I2C總線協(xié)議讀寫AT24C04的設(shè)計 2584次閱讀
- I2C接口與單片機之間的通信設(shè)計 7990次閱讀
- 80C51單片機模擬I2C總線的主機程序分享 3232次閱讀
- I2C總線的特點、控制技術(shù)與傳輸分析 9911次閱讀
- 《振南電子STM32視頻教程》第八講:I2C總線 1077次閱讀
- 基于GAL的I2C總線時序模擬 2817次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
- 0.63 MB | 3次下載 | 免費
- 89天練會電子電路識圖
- 5.91 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設(shè)計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多