久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: IIC協(xié)議時序詳解 [打印本頁]

作者: MXWL    時間: 2018-11-26 15:36
標(biāo)題: IIC協(xié)議時序詳解
1、概述:
在使用單片機(jī)或芯片級通信時,I2C是一種必不可少的通信協(xié)議。 I2C只有兩線接口:一條數(shù)據(jù)線 (SDA) ,另一條時鐘線 (SCL),通信方式比較簡單可靠。但由于SDA、SCL為漏極開路結(jié)構(gòu)(OD),因此硬件設(shè)計時必須接有上拉電阻,阻值的大小常為 1k8,2K2,4k7和 10k;當(dāng)I2C線空閑時,兩根線均為高電平。
本文中以自己項目中所用到的具有I2C通信協(xié)議的EEPROM芯片24LC64為例,EEPROM芯片硬件電路如圖1所示,數(shù)據(jù)線和時鐘線處于空閑狀態(tài)時,采用LOTO的OSC802示波器測量空閑時的波形如圖2所示。
               圖1 I2C芯片電路
               圖2 示波器測量I2C空閑時狀態(tài)
2、I2C協(xié)議
快速搭建單片機(jī)和芯片之間通信,首先要熟悉I2C通信協(xié)議,I2C協(xié)議主要是怎樣判斷數(shù)據(jù)的起始、停止、ACK;下面將一一介紹:
起始信號:當(dāng)SCL為高電平期間,SDA由高到低的跳變;啟動信號是一種電平跳變時序信號,而不是一個電平信號。
停止信號:當(dāng)SCL為高電平期間,SDA由低到高的跳變;停止信號也是一種電平跳變時序信號,而不是一個電平信號。
   I2C起始和停止信號示意如圖3所示;
          圖3 I2C起止信號
ACK:單片機(jī)每發(fā)送一個字節(jié),就在時鐘脈沖第9個周期期間釋放數(shù)據(jù)線,由EEPROM芯片發(fā)送一個應(yīng)答信號。 應(yīng)答信號為低電平時,規(guī)定為有效應(yīng)答位(ACK簡稱應(yīng)答位),表示EEPROM已經(jīng)成功地接收了該字節(jié)。
  對于反饋有效應(yīng)答位ACK的要求是,EEPROM在第9個時鐘脈沖之前的低電平期間將SDA線拉低或一直保持低電平;并且確保在該時鐘的高電平期間為穩(wěn)定的低電平。(通過示波器捕捉功能,采集到的波形如圖4所示)
                    圖4 示波器測量I2C總線起始信號
同樣應(yīng)答信號在第9個時鐘脈沖為高電平時,規(guī)定為非應(yīng)答位(NACK),表示EEPROM接收該字節(jié)沒有成功。對于反饋非應(yīng)答位為NACK時,單片機(jī)將會繼續(xù)發(fā)送相同的字節(jié)。(測量波形如圖5所示)              圖5  非應(yīng)答時信號狀態(tài)3、數(shù)據(jù)的有效性
I2C總線進(jìn)行數(shù)據(jù)傳送時,時鐘信號為高電平期間,數(shù)據(jù)線上的數(shù)據(jù)必須保持穩(wěn)定,只有在時鐘線上的信號為低電平期間,數(shù)據(jù)線上的高電平或低電平狀態(tài)才允許變化。
     雖然只要求在高電平期間保持穩(wěn)定,但是數(shù)據(jù)在SCL的上升沿到來之前就需準(zhǔn)備好,數(shù)據(jù)是在SCL的上升沿打入到(EEPROM)中的。
4、數(shù)據(jù)傳輸
在I2C總線上傳送的每一位數(shù)據(jù)都有一個時鐘脈沖相對應(yīng)(或同步控制),即在SCL串行時鐘的配合下,在SDA上逐位地串行傳送每一位數(shù)據(jù)。數(shù)據(jù)位的傳輸是邊沿觸發(fā)。但一般數(shù)據(jù)是以時鐘脈沖高電平時SDA狀態(tài)確定的。
單片機(jī)收到來自EEPROM發(fā)出的應(yīng)答后就可以發(fā)送數(shù)據(jù)。傳送數(shù)據(jù)時,單片機(jī)就逐個發(fā)送數(shù)據(jù)字節(jié),但每發(fā)送一個字節(jié)后都要等待應(yīng)答。
     等待應(yīng)答時,時鐘脈沖將有一定時間處于低電平的延時,為傳輸下一個字節(jié)的數(shù)據(jù)做準(zhǔn)備。采用LOTO示波器捕捉的信號波形如圖8所示   
                     圖7  單片機(jī)傳輸連續(xù)數(shù)據(jù)時序     
                      圖8 示波器捕捉數(shù)據(jù)發(fā)送時序               
◆ 發(fā)送停止位.
·       EEPROM收到停止信號后,進(jìn)入到一個內(nèi)部的寫入周期,需要一定時間(芯片不同時間不同),SCL和SDA被釋放。此時任何操作都不會被EEPROM響應(yīng);(因此以這種方式的兩次寫入之間要插入一個延時,否則會導(dǎo)致失敗)捕捉信號如同9所示






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久久99视频免费观看 | 亚洲不卡在线观看 | 国产免费又黄又爽又刺激蜜月al | 国产福利一区二区 | 国产精品欧美精品 | 久久久久久久一区二区三区 | 欧美韩一区二区 | 男人久久天堂 | 精品国产一区二区三区性色av | 91精品久久久 | 精品国产黄色片 | 婷婷99| 日本一区二区视频 | 精品自拍视频在线观看 | 日韩在线免费视频 | 成人国内精品久久久久一区 | 亚洲欧美在线一区 | 天天拍夜夜爽 | 99九色| 久久久久国产一区二区三区 | 日本久久一区二区三区 | 伊人久久成人 | 粉色午夜视频 | 在线观看国产 | 成人九色| 国产一卡二卡三卡 | 日本一卡精品视频免费 | 四虎影院一区二区 | 亚洲综合大片69999 | 国产成人99久久亚洲综合精品 | 久久久久九九九女人毛片 | 免费视频一区 | 9999久久 | 国产免费看 | 黄色一级视频 | 伊人激情综合网 | 一区二区三区中文字幕 | 亚洲成人动漫在线观看 | 亚洲精品一区二区三区丝袜 | 精品视频一区在线 | 国产美女精品视频免费观看 |