日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

I2C要求要有一個主設(shè)備,負(fù)責(zé)發(fā)起請求和控制時鐘;其它為從設(shè)備,通過設(shè)備ID地址來識別并響應(yīng)主設(shè)備請求。主從設(shè)備要輪流控制SDA。一開始我沒搞明白這一點(diǎn),直接加了寫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ù)在示波器上能看到波形嗎?

從圖中可知時序如下:

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

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

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

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

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

從圖中可知,縱向一格是200mV,則SDA和SCL的電平大概就是350mV;由于信號筆上設(shè)置了信號x10,因此實(shí)際電平應(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ù)。過程類似,不再具體分析了。

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

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

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

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

    關(guān)注

    113

    文章

    7138

    瀏覽量

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

    關(guān)注

    5

    文章

    1035

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    Freescale MC33780:雙DBUS主設(shè)備的技術(shù)剖析與應(yīng)用

    Freescale MC33780:雙DBUS主設(shè)備的技術(shù)剖析與應(yīng)用 分布式系統(tǒng)的設(shè)計中,主設(shè)備的性能和功能對于整個系統(tǒng)的穩(wěn)定運(yùn)行和高效通信至關(guān)重要。Freescale的MC33780作為一款雙
    的頭像 發(fā)表于 04-09 09:55 ?174次閱讀

    數(shù)字示波器觸發(fā)原理深度解析

    ,屏幕的圖像會像來回滾動的混亂線條,無法為我們提供有效的分析依據(jù)。 ? 一、 什么是示波器觸發(fā)? 簡單來說,觸發(fā)就是按照需求設(shè)置一定的條件,當(dāng)波形流中的某一個波形滿足這一條件時,
    的頭像 發(fā)表于 02-02 18:19 ?798次閱讀
    數(shù)字<b class='flag-5'>示波器</b>觸發(fā)原理深度解析

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

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

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

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

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

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

    通信協(xié)議IIC與SPI最全對比分析

    的設(shè)計,線路上不可能出現(xiàn)電平?jīng)_突現(xiàn)象。如果一支設(shè)備發(fā)送邏輯0,其它發(fā)送邏輯1,那么線路看到的只有邏輯0。也就是說,如果出現(xiàn)電平?jīng)_突,發(fā)送邏輯0的始終是“贏家”。 總線的物理結(jié)構(gòu)亦允許主設(shè)備
    發(fā)表于 12-10 06:04

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

    如何在示波器顯示波形

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

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

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

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

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

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

    電子工程與科研實(shí)驗(yàn)中,示波器作為信號分析的核心工具,其波形數(shù)據(jù)的存儲與后續(xù)處理至關(guān)重要。泰克示波器憑借其卓越的性能與豐富的功能,為用戶提供了多種
    的頭像 發(fā)表于 06-07 15:31 ?1587次閱讀
    泰克<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
    伊宁市| 米泉市| 简阳市| 图木舒克市| 吉隆县| 广水市| 阆中市| 镶黄旗| 广东省| 竹北市| 河曲县| 托克托县| 商丘市| 延津县| 奉贤区| 漾濞| 易门县| 确山县| 孝义市| 泸西县| 安丘市| 共和县| 玉山县| 甘德县| 庐江县| 瓮安县| 句容市| 雅江县| 微博| 古丈县| 秦安县| 墨江| 南投市| 鄂伦春自治旗| 闽侯县| 南京市| 博湖县| 隆回县| 清水河县| 景泰县| 丹棱县|