91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

主設(shè)備往從設(shè)備寫數(shù)據(jù)在示波器上能看到波形嗎?

lhl545545 ? 來源:玩轉(zhuǎn)單片機 ? 作者:玩轉(zhuǎn)單片機 ? 2020-06-09 09:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

對于嵌入式開發(fā)的朋友來說,I2C協(xié)議實在是再熟悉不過了,有太多的器件,采用的都是通過I2C來進行相應(yīng)的設(shè)置。今天,我們就隨便聊聊這個I2C協(xié)議。

I2C協(xié)議中最重要的一點是I2C地址。這個地址有7位和10位兩種形式。7位能夠表示127個地址,而在實際使用中基本上不會掛載如此多的設(shè)置,所以很多設(shè)備的地址都采用7位,所以本文接下來的說明都是基于此。

I2C還有一個很重要的概念,就是“主—從”。對于從設(shè)備來說,它是啥都不干的,更不會自動發(fā)送數(shù)據(jù);而主設(shè)備,則是起到控制作用,一切都是從它開始。

除了GND以外,I2C有兩根線,分別是SDA和SCL,所有的設(shè)備都是接到這兩根線上。那么,這些設(shè)備如何知道數(shù)據(jù)是發(fā)送給它們呢?這就得依靠前面所說到的地址了。設(shè)備I2C的地址是固定的,比如0x50,0x60等等。因為只能有127個地址,地址沖突是很常見的,所以一般設(shè)備都會有一個地址選擇PIN,比如拉高時候為0x50,接地為0x60。如果無論拉高還是接地,都和別的芯片有沖突,那該怎么辦呢?答案是:涼拌,沒辦法。遇到這種情況,只能換芯片了。

我們來看I2C協(xié)議中的數(shù)據(jù)傳輸時序圖:

主設(shè)備往從設(shè)備寫數(shù)據(jù)在示波器上能看到波形嗎?

SCL是時鐘,SDA承載的是數(shù)據(jù)。當SDA從1變動到0,而SCL還是1時,表示開始數(shù)據(jù)傳輸。接下來的7位,就是設(shè)備的地址。緊接著的是讀寫標志,其為1時是讀取,為0則是寫。如果I2C總線上存在著和請求的地址相對應(yīng)的設(shè)備,則從設(shè)備會發(fā)送一個ACK信號通知主設(shè)備,可以發(fā)送數(shù)據(jù)了。接到ACK信號后,主設(shè)備則發(fā)送一個8位的數(shù)據(jù)。當傳輸完畢之后,SCL保持為1,SDA從0變換到1時,標明傳輸結(jié)束。

從這個時序圖中可以看到,SCL很重要,并且哪個時鐘沿是干嘛的,都是確定好的。比如,前面7個必定是地址,第8個是讀寫標志,數(shù)據(jù)傳輸必須是8位,必須接個ACK信號等等。

前面的時序圖并沒有標明數(shù)據(jù)傳輸?shù)姆较颍覀儸F(xiàn)在看看寫操作的數(shù)據(jù)流向:

主設(shè)備往從設(shè)備寫數(shù)據(jù)在示波器上能看到波形嗎?

網(wǎng)格的是主設(shè)備發(fā)送的,白色格子是從設(shè)備發(fā)送的。從圖示中可以看到,對于寫操作,從設(shè)備都只是發(fā)送ACK進行確認而已。

而讀操作的數(shù)據(jù)流向,就有所不同,如圖:

主設(shè)備往從設(shè)備寫數(shù)據(jù)在示波器上能看到波形嗎?

這時候,從設(shè)備除了發(fā)送ACK以外,緊跟著的還有數(shù)據(jù)。

我們用示波器來查看波形圖,以便于理解。

將示波器的X和Y分別接到SDA和SCL,得到波形并分析如圖:

I2C的概念原理網(wǎng)上都有就不說了,這里只把我把兩個開發(fā)板通過I2C通訊的調(diào)試經(jīng)驗記錄分享一下。

I2C要求要有一個主設(shè)備,負責(zé)發(fā)起請求和控制時鐘;其它為從設(shè)備,通過設(shè)備ID地址來識別并響應(yīng)主設(shè)備請求。主從設(shè)備要輪流控制SDA。一開始我沒搞明白這一點,直接加了寫I2C數(shù)據(jù)代碼,然后用示波器在SDA和SCL腳測量,卻只能找到些凌亂的波形,沒有預(yù)期的效果。后來把從設(shè)備接上,兩邊寫好代碼,互相有了響應(yīng),這才在示波器上看到波形。

這里我找了一個主設(shè)備往從設(shè)備寫數(shù)據(jù)的例子,代碼如下:

char buf[128];

int len;

strcpy(buf,“。.huz_hello_i2c/n”);

len=strlen(buf);

//deviceid: 0x3c

write_i2c(0x3c, buf , len);

接收端的代碼比較簡單,就不貼了。

將示波器的X和Y分別接到SDA和SCL,得到波形并分析如圖:

主設(shè)備往從設(shè)備寫數(shù)據(jù)在示波器上能看到波形嗎?

從圖中可知時序如下:

由主機發(fā)起,在SCL為高電平時,SDA由高到低切變,形成開始信號;

接著是7位地址和一位讀寫標志,這里7位地址為0111100,即0x3c,正是我們代碼中設(shè)置的地址ID;最后一位為0表示寫操作;

接著在下一個時鐘,主機以高電平狀態(tài)釋放SDA,這時從機響應(yīng),將SDA拉低了;

接著是兩個8位數(shù)據(jù)00101110與響應(yīng),即0x2E,正是“。”號的ASCII碼,符合預(yù)期輸出;

還有其它數(shù)據(jù)和最后的停止位,圖中被截掉了。

從圖中可知,縱向一格是200mV,則SDA和SCL的電平大概就是350mV;由于信號筆上設(shè)置了信號x10,因此實際電平應(yīng)該大概是3.5V(理論上應(yīng)該是3.3V)。橫向一格是25us,10個時鐘周期大概用了4格,即4x25us=100us,平均每個時鐘周期是10us,可算出傳輸頻率為1/10us=100,000/s,即100k bps。

另外,對于讀從設(shè)備內(nèi)容,基本流程是主設(shè)備先往從設(shè)備寫一個命令,然后再輸出讀取命令,然后才由從設(shè)備發(fā)送數(shù)據(jù)。過程類似,不再具體分析了。

下圖示例中,主機先向從機寫了一個地址命令,然后重新開始并進入讀取周期。

主設(shè)備往從設(shè)備寫數(shù)據(jù)在示波器上能看到波形嗎?

分析波形可檢測出I2C通信工作是否正常,是否符合預(yù)期,對我們編程調(diào)試診斷有輔助作用。
責(zé)任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 示波器
    +關(guān)注

    關(guān)注

    113

    文章

    7100

    瀏覽量

    196417
  • 控制
    +關(guān)注

    關(guān)注

    5

    文章

    1035

    瀏覽量

    125357
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    SCANSTA101:低電壓IEEE 1149.1系統(tǒng)測試訪問主設(shè)備的深度剖析

    SCANSTA101:低電壓IEEE 1149.1系統(tǒng)測試訪問主設(shè)備的深度剖析 電子設(shè)備的測試與驗證領(lǐng)域,IEEE 1149.1(JTAG)標準發(fā)揮著至關(guān)重要的作用。德州儀器(TI
    的頭像 發(fā)表于 12-31 15:00 ?375次閱讀

    請問IIC通信中的主設(shè)備設(shè)備是如何工作的?

    IIC通信中的主設(shè)備設(shè)備是如何工作的?
    發(fā)表于 12-25 06:35

    ZUS示波器如何讓雙脈沖測試波形”走向“數(shù)據(jù)”?

    本文導(dǎo)讀SiC/GaN將開關(guān)速度推向納秒級,800V高壓下的損耗怎么測?ZUS示波器自帶雙脈沖測試功能,通過“兩次脈沖”精準量化開關(guān)損耗與反向恢復(fù)數(shù)據(jù)。告別模糊的波形觀察,用精確數(shù)據(jù)
    的頭像 發(fā)表于 12-24 11:41 ?522次閱讀
    ZUS<b class='flag-5'>示波器</b>如何讓雙脈沖測試<b class='flag-5'>從</b>“<b class='flag-5'>波形</b>”走向“<b class='flag-5'>數(shù)據(jù)</b>”?

    關(guān)于ICB總線的應(yīng)用

    ) ⑤expl_axi_icb_cmd_wdata; (主設(shè)備數(shù)據(jù)通道) ⑥expl_axi_icb_cmd_wmask;(數(shù)據(jù)掩碼
    發(fā)表于 10-29 07:44

    E203外設(shè)——IIC工作原理與軟件應(yīng)用

    輸出。 而主設(shè)備先向設(shè)備發(fā)送數(shù)據(jù)、設(shè)備再向主設(shè)備
    發(fā)表于 10-24 10:36

    MC-LAG主設(shè)備升級備設(shè)備業(yè)務(wù)中斷的案例分析

    某地ZXR10 5960X MC-LAG組網(wǎng),軟件版本V6.00.00.70B18,現(xiàn)場升級版本,先升級MC-LAG主設(shè)備。主設(shè)備重啟時,MC-LAG備設(shè)備業(yè)務(wù)中斷大約3分鐘。
    的頭像 發(fā)表于 10-22 09:19 ?672次閱讀
    MC-LAG<b class='flag-5'>主設(shè)備</b>升級備<b class='flag-5'>設(shè)備</b>業(yè)務(wù)中斷的案例分析

    ch554要作為主設(shè)備跟ch552通信,ch552修改demo作為ch34x

    如題,ch552設(shè)備已經(jīng)做好,插到電腦或手機上可以使用串口助手通信,現(xiàn)在要做個主設(shè)備代替手機跟它通信,沒怎么了解過這些技術(shù),我應(yīng)該學(xué)哪部分知識?554要怎么配置?
    發(fā)表于 10-13 15:40

    如何在示波器顯示波形

    示波器捕獲和分析未知波形的任務(wù),可能是日常操作,也可能像在黑暗中拍攝一樣困難。許多情況下,采取有條不紊的方法設(shè)置
    的頭像 發(fā)表于 09-04 14:06 ?2480次閱讀
    如何在<b class='flag-5'>示波器</b><b class='flag-5'>上</b>顯示<b class='flag-5'>波形</b>

    示波器波形捕獲率的定義和作用

    波形捕獲率(Waveform Capture Rate)是數(shù)字示波器的關(guān)鍵指標之一,指單位時間內(nèi)示波器能夠捕獲并顯示波形的次數(shù),通常以“次/秒”或“幀/秒”為單位。其本質(zhì)是衡量
    的頭像 發(fā)表于 08-04 15:20 ?1629次閱讀

    泰克TBS1052C示波器基礎(chǔ)波形捕獲到FFT頻譜分析實戰(zhàn)

    示波器作為電子工程師的“眼睛”,信號調(diào)試、故障診斷和性能分析中扮演著關(guān)鍵角色。泰克TBS1052C示波器憑借其高精度、多功能和易用性,成為眾多領(lǐng)域的必備工具。本文將深入講解基礎(chǔ)
    的頭像 發(fā)表于 06-09 15:28 ?954次閱讀
    泰克TBS1052C<b class='flag-5'>示波器</b><b class='flag-5'>從</b>基礎(chǔ)<b class='flag-5'>波形</b>捕獲到FFT頻譜分析實戰(zhàn)

    泰克示波器波形數(shù)據(jù)保存為CSV格式的完整指南

    電子工程與科研實驗中,示波器作為信號分析的核心工具,其波形數(shù)據(jù)的存儲與后續(xù)處理至關(guān)重要。泰克示波器憑借其卓越的性能與豐富的功能,為用戶提供了多種
    的頭像 發(fā)表于 06-07 15:31 ?1347次閱讀
    泰克<b class='flag-5'>示波器</b><b class='flag-5'>波形數(shù)據(jù)</b>保存為CSV格式的完整指南

    使用 cy7c65216 作為主設(shè)備, MULTICH_CONNECT_PCB具有不同設(shè)備地址的多個設(shè)備?

    請介紹一下 cy7c65216。 是否可以配置一個電路,使用 cy7c65216 作為主設(shè)備, MULTICH_CONNECT_PCB具有不同設(shè)備地址的多個
    發(fā)表于 05-23 06:33

    AXI協(xié)議規(guī)范總結(jié)

    數(shù)據(jù)通道主設(shè)備傳輸數(shù)據(jù)設(shè)備,
    的頭像 發(fā)表于 05-12 09:44 ?3333次閱讀
    AXI協(xié)議規(guī)范總結(jié)

    CYUSB3014燒錄后設(shè)備丟失

    (img文件) 什么也沒有了。檢查過硬件原理圖和官方的一樣,電壓沒有文波正常,其他各個配置引腳均正確。也能EEPROM里下載程序。使用示波器測試 bootload下 usb2.0的兩根線DP/DM有信號
    發(fā)表于 04-16 14:04

    泰克MDO3052示波器波形捕獲率評測

    泰克MDO3052作為中端混合域示波器的代表型號,其波形捕獲率性能在同類產(chǎn)品中處于領(lǐng)先地位。本文將從技術(shù)原理、實測數(shù)據(jù)、應(yīng)用場景及局限性等多個維度,結(jié)合工程實踐案例,全面解析MDO3052的
    的頭像 發(fā)表于 04-02 11:49 ?1034次閱讀
    泰克MDO3052<b class='flag-5'>示波器</b><b class='flag-5'>波形</b>捕獲率評測