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

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

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

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

AS32系列MCU芯片I2C模塊性能解析與調(diào)試

安芯 ? 來(lái)源:jf_29981791 ? 作者:jf_29981791 ? 2025-06-20 16:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

國(guó)科安芯推出的AS32X601內(nèi)置的I2C模塊提供了符合工業(yè)標(biāo)準(zhǔn)的兩線串行制接口,可用于MCU和外部IIC設(shè)備的通訊。IIC總線使用兩條串行線:串行數(shù)據(jù)線SDA和串行時(shí)鐘線SCL。 IIC接口模塊實(shí)現(xiàn)了IIC協(xié)議的標(biāo)準(zhǔn)模式和快速模式,支持多主機(jī)IIC總線架構(gòu)。其中標(biāo)準(zhǔn)模式為100K,快速模式400K。

  • 硬件設(shè)計(jì)

I2C 總線內(nèi)部使用漏極開路輸出驅(qū)動(dòng)器,因此 SDA和 SCL 可以被拉低為低電平,但是不能被驅(qū)動(dòng)為高電平,所以每條線上都要使用一個(gè)4.7K上拉電阻,默認(rèn)情況下將其保持在高電平。

  • I2C時(shí)序

①Start開始信號(hào)、Stop停止信號(hào):

這兩個(gè)信號(hào)由主機(jī)產(chǎn)生,不屬于數(shù)據(jù)域交互:

在SCL的高電平時(shí),主機(jī)將SDA的電平由 高–>低是Start信號(hào)(下降沿);

在SCL的高電平時(shí),主機(jī)將SDA的電平由 低–>高是Stop信號(hào)(上升沿);

②7位尋址

AS32X601的I2C只支持7位尋址模式,配置過(guò)程中從機(jī)地址需要左移1位才為實(shí)際地址。

③數(shù)據(jù)方向

0寫/1讀

④應(yīng)答ACK、非應(yīng)答NACK

在SCL的一個(gè)時(shí)鐘周期內(nèi),從機(jī)在SCL的高電平時(shí),將SDA的電平由高拉低(或者繼續(xù)保持低電平狀態(tài)) 則是ACK信號(hào);

從機(jī)在SCL的高電平時(shí),如果SDA的電平一直是 高電平 則是NACK信號(hào);

  • 時(shí)鐘

I2C0、I2C1時(shí)鐘來(lái)自APB0,I2C2、I2C3時(shí)鐘來(lái)自ABP1。具體配置可見(jiàn)I2C_CTLR寄存器

  1. 配置I2Cx需要的GPIO為復(fù)用功能。
  2. 通過(guò)配置I2C_INITSTRUCT初始化I2Cx,包括時(shí)鐘分頻,從機(jī)地址,ACK,高低電平時(shí)間等。

  1. 按需求配置中斷,并配置IRQ_HANDLER;
  2. 調(diào)用收發(fā)接口,并處理數(shù)據(jù)
  • I2C掛死原因解析

由于I2C采用線與結(jié)構(gòu),只要總線上任何一個(gè)器件拉低了SDA或者SCL,其他器件都無(wú)法拉高它們,看到的都是低電平。如果有器件不釋放總線,則整個(gè)總線上的通訊都會(huì)被暫停 。

在實(shí)際操作中,I2C主是可編程器件,如果主機(jī)主動(dòng)拉低了總線,可以通過(guò)調(diào)試代碼了解原因,也可以通過(guò)復(fù)位I2C外設(shè)或者復(fù)位芯片來(lái)退出。而I2C從機(jī)往往不帶RESET引腳,如果掛死了總線即使整個(gè)系統(tǒng)復(fù)位都無(wú)法解除,僅重新上下電才可以恢復(fù),因此分析I2C從機(jī)掛死。

首先I2C從機(jī)在兩種情況下會(huì)拉低SDA線。

①主機(jī)向從機(jī)寫數(shù)據(jù)或地址時(shí),從機(jī)如果發(fā)出ACK應(yīng)答,則會(huì)第9個(gè)CLK的期間拉低SDA;

②主機(jī)讀數(shù)據(jù)的時(shí)候,從機(jī)會(huì)在bit為0時(shí)對(duì)應(yīng)的CLK期間拉低SDA。

根據(jù)I2C協(xié)議,SCL為高的時(shí)候,SDA電平應(yīng)保持,而等到SCL為低后(也就是下降沿后)才能發(fā)生改變。若SCL拉高后主機(jī)不再拉低,從機(jī)會(huì)持續(xù)拉低SDA,直到見(jiàn)到SDA的下降沿。

最常見(jiàn)的情況是主機(jī)在通訊的過(guò)程中產(chǎn)生了復(fù)位。由于復(fù)位動(dòng)作通常會(huì)立刻執(zhí)行,外設(shè)狀態(tài)機(jī)都恢復(fù)到默認(rèn)狀態(tài),也就發(fā)不出完整的CLK。那么等到主機(jī)復(fù)位完成回來(lái)后,SCL為高,SDA被從機(jī)拉低。主機(jī)無(wú)法發(fā)起START起始條件,不能開始下一次與從機(jī)的通訊,這稱為SDA掛死。

我們一般情況下用GPIO在SCL線上模擬一個(gè)下降沿,讓從機(jī)狀態(tài)機(jī)繼續(xù)走下去。只發(fā)一個(gè)下降沿并不一定能將SDA釋放,因?yàn)椴⒉磺宄?dāng)主機(jī)復(fù)位異常發(fā)生時(shí)刻從機(jī)到底處于哪一個(gè)狀態(tài),所以需要逐個(gè)CLOCK去抓波形,直到見(jiàn)到SDA被釋放了,我們才終止并且發(fā)送STOP條件告訴從機(jī)這次通訊結(jié)束。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    463

    文章

    54000

    瀏覽量

    465746
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    147

    文章

    18914

    瀏覽量

    397763
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1556

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    RK平臺(tái)I2C開發(fā):從硬件原理到實(shí)戰(zhàn)排查

    在嵌入式開發(fā)中,I2C 總線是連接外設(shè)的 “橋梁”—— 小到傳感器、EEPROM,大到 LCD 驅(qū)動(dòng)器、音頻芯片,都離不開它的控制。而瑞芯微(Rockchip)系列芯片作為主流嵌入式方
    的頭像 發(fā)表于 02-05 13:42 ?837次閱讀
    RK平臺(tái)<b class='flag-5'>I2C</b>開發(fā):從硬件原理到實(shí)戰(zhàn)排查

    I2C 為什么只要兩根線就能搞定通信?

    到目前為止,我們已經(jīng)討論了SPI通信和UART通信的基礎(chǔ)知識(shí),現(xiàn)在讓我們討論本系列的最后一個(gè)協(xié)議,即集成電路間協(xié)議(I2C)。如果您曾經(jīng)構(gòu)建過(guò)使用OLED顯示器、氣壓傳感器或陀螺儀/加速度計(jì)模塊
    的頭像 發(fā)表于 01-04 09:14 ?1606次閱讀
    <b class='flag-5'>I2C</b> 為什么只要兩根線就能搞定通信?

    基于FPGA的I2C控制模塊設(shè)計(jì)

    I2C_WRITE_WDATA.v模塊實(shí)現(xiàn)I2C寫時(shí)序,I2C_Controller (I2C控制器)例化了
    的頭像 發(fā)表于 12-26 09:48 ?4822次閱讀
    基于FPGA的<b class='flag-5'>I2C</b>控制<b class='flag-5'>模塊</b>設(shè)計(jì)

    深入解析 TCA9539:低電壓 16 位 I2C 和 SMBus I/O 擴(kuò)展器

    深入解析 TCA9539:低電壓 16 位 I2C 和 SMBus I/O 擴(kuò)展器 在電子設(shè)計(jì)的廣闊領(lǐng)域中,I/O 擴(kuò)展器是一款關(guān)鍵的小工具。它能夠?yàn)橄到y(tǒng)提供更多的輸入輸出接口,讓設(shè)計(jì)
    的頭像 發(fā)表于 12-25 09:30 ?336次閱讀

    AS32X601的I2C模塊操作EEPROM詳解

    國(guó)科安芯推出的AS32X601系列MCU芯片內(nèi)置的I2C模塊提供了符合工業(yè)標(biāo)準(zhǔn)的兩線串行制接口,可用于M
    的頭像 發(fā)表于 12-21 21:39 ?944次閱讀
    AS32X601的<b class='flag-5'>I2C</b><b class='flag-5'>模塊</b>操作EEPROM詳解

    OPTIGA? TPM SLB 9673 RaspberryPi?評(píng)估板:I2C TPM HAT的深度解析

    OPTIGA? TPM SLB 9673 RaspberryPi?評(píng)估板:I2C TPM HAT的深度解析 在當(dāng)今的電子設(shè)計(jì)領(lǐng)域,安全芯片的應(yīng)用越來(lái)越廣泛,尤其是在物聯(lián)網(wǎng)(IoT)和嵌入式系統(tǒng)中
    的頭像 發(fā)表于 12-18 15:00 ?809次閱讀

    基于CW32 MCUI2C接口優(yōu)化穩(wěn)定讀寫EEPROM關(guān)鍵技術(shù)

    CW32 MCU優(yōu)化I2C接口,確保在與EEPROM芯片通信時(shí)的穩(wěn)定性。內(nèi)容涵蓋以下幾個(gè)關(guān)鍵技術(shù)點(diǎn): I2C時(shí)序與頻率調(diào)整:介紹如何根據(jù)EEPROM的特性,合理設(shè)置
    發(fā)表于 12-03 07:29

    如何在CW32 MCU上優(yōu)化I2C通信

    實(shí)現(xiàn)高效I2C通信的最佳實(shí)踐,包括頻率配置、信號(hào)完整性優(yōu)化和系統(tǒng)調(diào)試技巧,幫助開發(fā)者在CW32 MCU平臺(tái)上實(shí)現(xiàn)穩(wěn)定、可靠的I2C通信。
    發(fā)表于 11-27 06:25

    AS32系列MCU芯片中CRC計(jì)算模塊的應(yīng)用介紹

    、執(zhí)行器動(dòng)作異常甚至整個(gè)控制系統(tǒng)宕機(jī)。循環(huán)冗余校驗(yàn)(CRC)作為一種高效的錯(cuò)誤檢測(cè)技術(shù),如同數(shù)據(jù)傳輸與存儲(chǔ)過(guò)程中的"安全校驗(yàn)屏障",持續(xù)保障MCU與外部設(shè)備交互數(shù)據(jù)的準(zhǔn)確性。本文將系統(tǒng)闡述國(guó)科安芯推出的AS32系列
    的頭像 發(fā)表于 11-21 15:20 ?1359次閱讀
    <b class='flag-5'>AS32</b><b class='flag-5'>系列</b><b class='flag-5'>MCU</b><b class='flag-5'>芯片</b>中CRC計(jì)算<b class='flag-5'>模塊</b>的應(yīng)用介紹

    FreeRTOS 在 AS32系列RISC-V 架構(gòu)MCU電機(jī)驅(qū)動(dòng)中的應(yīng)用實(shí)踐與優(yōu)化

    一、AS32系列 RISC-V MCU與 FreeRTOS 融合的電機(jī)驅(qū)動(dòng)架構(gòu)解析 1.1 硬件層: AS32
    的頭像 發(fā)表于 11-13 23:33 ?828次閱讀

    深入剖析I2C協(xié)議

    I2C也是一種可以多主設(shè)備,多從設(shè)備的總線協(xié)議,通過(guò)地址索引,I2C可以使能所需從設(shè)備,I2C的出現(xiàn)主要是用來(lái)實(shí)現(xiàn)不同集成電路組件之間的控制功能,比如通過(guò)I2C協(xié)議,連接
    的頭像 發(fā)表于 08-21 15:10 ?3656次閱讀
    深入剖析<b class='flag-5'>I2C</b>協(xié)議

    AS32系列MCU調(diào)試教程 SPI調(diào)試的常見(jiàn)問(wèn)題解析

    簡(jiǎn)介 AS32X601內(nèi)置的I2C模塊提供了支持全雙工的同步串行通信。該接口可配置為主機(jī)或從機(jī)模式,配置為主機(jī)模式時(shí),它可為外部從器件提供通信時(shí)鐘(SCK),6個(gè)SPI每個(gè)都支持8個(gè)從機(jī)。 SPI
    的頭像 發(fā)表于 06-27 18:10 ?753次閱讀
    <b class='flag-5'>AS32</b><b class='flag-5'>系列</b><b class='flag-5'>MCU</b><b class='flag-5'>調(diào)試</b>教程 SPI<b class='flag-5'>調(diào)試</b>的常見(jiàn)問(wèn)題<b class='flag-5'>解析</b>

    簡(jiǎn)單了解I2C接口

    在電子電路的復(fù)雜世界里,各種電路模塊設(shè)備需要相互通信才能協(xié)同工作 ,I2C接口就像是電路模塊設(shè)備間的溝通橋梁,今天就帶大家深入了解它。
    的頭像 發(fā)表于 05-08 14:15 ?2511次閱讀
    簡(jiǎn)單了解<b class='flag-5'>I2C</b>接口

    是德DSOX4034A示波器I2C總線信號(hào)分析

    。然而,隨著系統(tǒng)復(fù)雜度的提升,I2C總線的信號(hào)完整性和時(shí)序分析變得愈發(fā)重要。是德科技(Keysight Technologies)推出的DSOX4034A示波器憑借其高性能和先進(jìn)的分析功能,為工程師提供了強(qiáng)大的工具,以深入分析和調(diào)試
    的頭像 發(fā)表于 03-19 13:47 ?1211次閱讀
    是德DSOX4034A示波器<b class='flag-5'>I2C</b>總線信號(hào)分析

    I2C總線復(fù)用

    帝晶智慧屏I2C總線復(fù)用
    的頭像 發(fā)表于 03-11 17:20 ?2073次閱讀