99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

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

硬件設(shè)計(jì)解析 ? 來(lái)源:愛(ài)搞研究的阿燦 ? 作者:愛(ài)搞研究的阿燦 ? 2023-04-17 16:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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


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

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


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

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


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

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


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

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

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


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

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

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

    關(guān)注

    28

    文章

    1539

    瀏覽量

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

    關(guān)注

    3

    文章

    216

    瀏覽量

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

    關(guān)注

    2

    文章

    619

    瀏覽量

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

    關(guān)注

    0

    文章

    24

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    I2C通信介紹及軟測(cè)方法

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

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

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

    I2C Guid I2C指南

    I2C Guid  I2C指南 The I2C bus is used in a wide rangeof applications because it is simpleand
    發(fā)表于 04-23 13:55 ?36次下載

    labview與i2c通信的編程問(wèn)題

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

    I2C資料總結(jié)

    I2C資料總結(jié)及實(shí)際問(wèn)題解析
    發(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總線的基本通信總結(jié)

    在電子設(shè)計(jì)開(kāi)發(fā)I2C大家已經(jīng)很熟悉了,每一種電子產(chǎn)品小到電子開(kāi)關(guān),大到衛(wèi)星通信都會(huì)利用的I2C總線。據(jù)統(tǒng)計(jì)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實(shí)現(xiàn)I2C通信

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

    硬件I2C與模擬I2C

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

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

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

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

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

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

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

    i2c采樣是上升沿嗎?

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

    簡(jiǎn)單認(rèn)識(shí)I2C通信協(xié)議

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

    I2C總線通信原理 如何設(shè)計(jì)I2C總線電路

    I2C總線通信原理 I2C(Inter-Integrated Circuit)總線是一種用于集成電路之間進(jìn)行通信的串行通信協(xié)議。它最早由飛利
    的頭像 發(fā)表于 01-31 15:01 ?1048次閱讀