一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

I2C通信開發(fā)障礙以及總結(jié)

硬件設(shè)計解析 ? 來源:愛搞研究的阿燦 ? 作者:愛搞研究的阿燦 ? 2023-04-17 16:35 ? 次閱讀

一、實際應(yīng)用開發(fā)中遇到的“坑”

??(1)不要使用邏輯分析儀的自動分析功能,這款軟件BUG太多,波形的分析還是需要自己根據(jù)時序來,不要依賴工具;

572bfa14-da9f-11ed-a826-dac502259ad0.png


??(2)在I2C的時序通信過程中,從機必然是要有ACK信號回復的,不然整個通信是不可能進行下去。之前以為ACK并非從機發(fā)送的,即使沒有從機也可以在GM5的引腳上觀察到完整的I2C時序圖,卡在這里很久。如果沒有從機,邏輯分析儀只能抓取到主機兩次尋址的波形。

574dce64-da9f-11ed-a826-dac502259ad0.png


??(3)關(guān)于I2C從設(shè)備地址的問題,之前在開發(fā)中是直接把從設(shè)備地址寫上去,后面發(fā)現(xiàn)無論使用任何方法都無法啟動設(shè)備,一度卡了很久,后面在問題的分析過程中發(fā)現(xiàn)原廠的驅(qū)動會把地址左移一位。

57730b98-da9f-11ed-a826-dac502259ad0.png


??所以我們需要把設(shè)備地址右移一位后再使用:

577ce6b8-da9f-11ed-a826-dac502259ad0.png


??(4)關(guān)于外設(shè)的電源供電問題,一定要嚴格按照說明來,比如RTC module的供電是5V,OLED屏幕的供電是3.3V,那么就不能使用GM5的3.8V VDD引腳進行供電,會提高bug出現(xiàn)的幾率或者無法啟動外設(shè)??梢越栌?a target="_blank">DC POWER SUPPLY進行供電。
??(5)由于我拿到手的RTC和OLED只是外設(shè),沒有芯片手冊和說明書,所以在確定外設(shè)的從設(shè)備地址這件事情上耽誤了很長時間。但是同一類型的外設(shè)的從設(shè)備地址也是有規(guī)律的,比如時鐘RTC的地址一般是0X68,OLED的地址一般是0X3C或者0X3D,紅外傳感器的地址是0X60。具體的常見I2C從設(shè)備地址可以參考文章https://www.arduino.cn/thread-84222-1-1.html,一篇非常完整的總結(jié)。

二、I2C開發(fā)總結(jié)

??如果遇到了故障,一般而言排故的方法遵循以下步驟:
??(1)首先檢查硬件本身,如果主設(shè)(GM5)或者外設(shè)(OLED屏幕和RTC時鐘模塊)本身就有問題,模塊本身燒掉了肯定無法實驗成功,所以要確保硬件本身沒有問題,對外設(shè)的檢查可以使用替換法或者讀寄存器的地址。
??(2)第二步就是檢查線路的連接,線路是否正確連接。一般先連線GND,在連接數(shù)據(jù)線(I2C、SPI通信數(shù)據(jù)線),確認無誤后最后再連線VCC進行供電。同時請確保杜邦線的良好。
??(3)最后才是軟件層次的檢查。先要確保你的參數(shù)是正確,比如設(shè)備地址;然后是對空間的申請釋放、野指針的不當操作、一級指針二級指針的錯誤使用;對故障的定位需要使用大量log信息打印來鎖定故障點在哪里,也可以使用ResearchDownload的DBG功能進行調(diào)試。


原文標題:二、I2C開發(fā)總結(jié)

文章出處:【微信公眾號:愛搞研究的阿燦】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    28

    文章

    1514

    瀏覽量

    126551
  • 邏輯分析儀
    +關(guān)注

    關(guān)注

    3

    文章

    216

    瀏覽量

    23545
  • RTC
    RTC
    +關(guān)注

    關(guān)注

    2

    文章

    603

    瀏覽量

    68063
  • I2C通信
    +關(guān)注

    關(guān)注

    0

    文章

    22

    瀏覽量

    9066
收藏 人收藏

    評論

    相關(guān)推薦

    I2C通信介紹及軟測方法

    本文主要講解I2C通信介紹以及如何使用軟件工具抓取通信波形,幫助開發(fā)人員更好的去理解I2C
    的頭像 發(fā)表于 04-17 16:35 ?3248次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>介紹及軟測方法

    I2C讀寫時序分析和實現(xiàn)思路

    上篇推文對I2C總線的特性進行了介紹和描述。對于開發(fā)者而言,最重要的是編碼I2C的讀寫時序驅(qū)動。本篇推文主要總結(jié)和分享I2C總線主機端
    發(fā)表于 10-01 16:54 ?2536次閱讀
    <b class='flag-5'>I2C</b>讀寫時序分析和實現(xiàn)思路

    labview與i2c通信的編程問題

    labview與i2c通信的編程問題,適合新手看看
    發(fā)表于 12-09 15:49 ?206次下載

    I2C資料總結(jié)

    I2C資料總結(jié)及實際問題解析
    發(fā)表于 08-16 10:35 ?2次下載

    STM32F2通信接口I2C

    STM32F2通信接口I2C
    發(fā)表于 09-03 11:24 ?31次下載
    STM32F<b class='flag-5'>2</b>—<b class='flag-5'>通信</b>接口<b class='flag-5'>I2C</b>

    i2c通信的詳細講解

    I2C屬于串行通信,所有的數(shù)據(jù)以位為單位在SDA上串行傳輸
    發(fā)表于 11-24 14:09 ?2w次閱讀
    <b class='flag-5'>i2c</b><b class='flag-5'>通信</b>的詳細講解

    I2C通信的詳細講解

    I2C屬于串行通信,所有的數(shù)據(jù)以位為單位在SDA線上串行傳輸。
    的頭像 發(fā)表于 06-25 17:19 ?13.7w次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>的詳細講解

    I2C總線的基本通信總結(jié)

    在電子設(shè)計開發(fā)I2C大家已經(jīng)很熟悉了,每一種電子產(chǎn)品小到電子開關(guān),大到衛(wèi)星通信都會利用的I2C總線。據(jù)統(tǒng)計I2C在電子產(chǎn)品中占據(jù)了93%的
    的頭像 發(fā)表于 08-26 14:08 ?1.9w次閱讀
    <b class='flag-5'>I2C</b>總線的基本<b class='flag-5'>通信</b><b class='flag-5'>總結(jié)</b>

    MCU實現(xiàn)I2C通信

    當時接手這項工作時,對方給我一周的時間,我是自信可以在兩三天內(nèi)完成。因為對I2C通信協(xié)議還是非常熟悉的,看下定時芯片RX-8025SA的規(guī)格書應(yīng)該就可以搞定了。呵呵,又可以提前完成了!現(xiàn)在總結(jié)一下
    發(fā)表于 11-01 16:24 ?5次下載
    MCU實現(xiàn)<b class='flag-5'>I2C</b><b class='flag-5'>通信</b>

    硬件I2C與模擬I2C

    硬件I2C對應(yīng)芯片上的I2C外設(shè),有相應(yīng)I2C驅(qū)動電路,其所使用的I2C管腳也是專用的,因而效率要遠高于軟件模擬的I2C;一般也較為穩(wěn)定,但
    發(fā)表于 12-28 19:14 ?81次下載
    硬件<b class='flag-5'>I2C</b>與模擬<b class='flag-5'>I2C</b>

    一文詳解I2C總結(jié)的基礎(chǔ)知識

    博主將 I2C spec 文章總結(jié)為一篇,目錄如下
    的頭像 發(fā)表于 06-27 15:25 ?6954次閱讀

    I2C通信協(xié)議及其工作原理

    "也許你聽說過I2C,或者你也正在使用I2C,但你有沒有了解過什么是I2C?I2C是如何工作的?讓我們一起了解一下什么是I2C?
    的頭像 發(fā)表于 04-19 09:36 ?5538次閱讀

    I2C通信協(xié)議:了解I2C Primer、 PMBus和SMBus

    I2C,即Inter-Integrated Circuit,是一種常用的串行通信協(xié)議,用于在器件之間——特別是兩個或兩個以上不同電路之間建立通信。I2C Primer是最常用的
    的頭像 發(fā)表于 06-15 15:29 ?7102次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>協(xié)議:了解<b class='flag-5'>I2C</b> Primer、 PMBus和SMBus

    i2c采樣是上升沿嗎?

    數(shù)據(jù)。在本文中,我們將詳細討論I2C采樣的工作原理,采樣時機以及如何進行I2C采樣。 I2C采樣的原理 I2C采樣是基于
    的頭像 發(fā)表于 09-19 17:16 ?3382次閱讀

    簡單認識I2C通信協(xié)議

    I2C(Inter-Integrated Circuit)通信協(xié)議是由飛利浦公司(現(xiàn)為恩智浦半導體)開發(fā)的一種簡單、雙向二線制同步串行總線協(xié)議。自1982年發(fā)布以來,I2C協(xié)議因其高效
    的頭像 發(fā)表于 07-25 18:06 ?2098次閱讀