CN113342725A - 一种用于i2c从机设备地址重置的方法 - Google Patents
一种用于i2c从机设备地址重置的方法 Download PDFInfo
- Publication number
- CN113342725A CN113342725A CN202110641287.6A CN202110641287A CN113342725A CN 113342725 A CN113342725 A CN 113342725A CN 202110641287 A CN202110641287 A CN 202110641287A CN 113342725 A CN113342725 A CN 113342725A
- Authority
- CN
- China
- Prior art keywords
- signal
- address
- address configuration
- detection module
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 14
- 238000001514 detection method Methods 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims abstract description 3
- 238000004891 communication Methods 0.000 claims description 15
- 230000004913 activation Effects 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种用于I2C从机设备地址重置的方法。本发明在现有技术基础上增加地址重配的实现方案,具体为通过I2C信号检测模块用于对主机输出的I2C信号的时脉信号和数据信号进行检测,判断时脉信号和数据信号是否正常,若是,则I2C信号检测模块继续进行检测,并不做其他处理,若否,则I2C信号检测模块输出使能信号到I2C地址配置模块,使I2C地址配置模块进行地址配置。本发明的有益效果是:允许在系统激活的状态下通过检测SCL/SDA状态重新进行地址配置,以纠正地址错误,本发明的实现方式简单。
Description
技术领域
本发明涉及一种用于I2C从机设备地址重置的方法。
背景技术
集成电路总线I2C(Inter-Integrated Circuit)是一种串行通信总线,多主从架构,支持一对多或者多对多通信,现广泛应用于计算机通信设备。图1所示为一对多的应用场景,每个独立的从机设备有自己特定的通信地址,主机通过这一特定地址与目标从机实现通信。如图1所示为一对多的应用场景,每个独立的从机设备有自己特定的通信地址,主机通过这一特定地址与目标从机实现通信。
如图2所示为I2C总线数据传输协议,数据序列的结构为地址位(7 AddressBits)、读写位(R/W)、应答位(ACK)、数据位(8 Data Bits)、应答位(ACK)。从机在收到主机发送的己方地址之后通过SDA对主机做出应答,以及每次数据传输完毕之后对主机做出应答。如果主机寻址后从机没有做出应答,则通信失败。
为了支持一对多或者多对多的应用,从机设备需要内建地址配置功能,通过配置成不同的地址以实现独立通信。如果系统上电之后从机设备地址配置错误,则会导致主从设备之间通信失败。
如图3所示是现有技术中从机设备的I2C地址配置流程,系统上电复位(Power-On-Reset)之后执行I2C地址配置,配置完成之后即可以激活I2C通信。
如果地址配置过程中由于某些原因导致地址配置错误,就会导致主从通信失败,按照现有技术方案则只有使系统下电后再上电,重新执行一遍地址配置流程才可以纠正错误,这一方法涉及系统硬件设计,操作复杂,代价高。
发明内容
针对上述问题,本发明提出一种用于I2C从机设备地址重置的方法,允许在系统激活的状态下通过检测SCL/SDA状态重新进行地址配置,以纠正地址错误。
本发明的技术方案是:
一种用于I2C从机设备地址重置的方法,包括主机和多台从机,主机和多台从机通过I2C总线建立通信连接,每台从机具有I2C地址配置模块,I2C地址配置模块在从机系统上电复位时执行I2C地址配置,其特征在于,从机还包括I2C信号检测模块,所述I2C信号检测模块用于对主机输出的I2C信号的时脉信号和数据信号进行检测,判断时脉信号和数据信号是否正常,若是,则I2C信号检测模块继续进行检测,并不做其他处理,若否,则I2C信号检测模块输出使能信号到I2C地址配置模块,使I2C地址配置模块进行地址配置。
进一步的,所述I2C信号检测模块包括异或门和定时器,所述异或门的两个输入端分别接I2C信号的时脉信号和数据信号,异或门的输出端接定时器的复位信号端,定时器的输出端接I2C地址配置模块;定时器在异或门的输出信号为“1”时触发计时,并设定时间t,当触发计时且计时持续时间等于t后,定时器输出使能信号到I2C地址配置模块,使I2C地址配置模块进行地址配置。
本发明的有益效果是:允许在系统激活的状态下通过检测SCL/SDA状态重新进行地址配置,以纠正地址错误,本发明的实现方式简单。
附图说明
图1为I2C一对多的应用场景;
图2为I2C总线数据传输协议;
图3为现有技术中从机设备的I2C地址配置流程;
图4为本发明的从机设备地址配置流程图;
图5为本发明具体实现方式示意图。
具体实施方式
下面结合附图对本发明进行详细的描述。
现有技术方案中,如果从机设备出现地址错配,则会导致主从通信失败,按照现有技术方案中的流程,则只有系统下电再上电一种方案可以使得从机设备重新进行地址配置。这种方案需要硬件配合,举例在手机生产的过程中,手机电池装配之后则系统上电,各设备执行地址配置流程,之后如出现地址错配导致的通信失败的话,唯一的方案就是拆卸手机电池再重新装配,这一过程繁琐且有成本。
本发明重新设计了从机设备的地址配置流程,允许在系统激活的状态下通过检测SCL/SDA状态重新进行地址配置,以纠正地址错误。具体实现上举例来说,如果从机出现地址错配,主机发出寻址而得不到应答之后,可以操作SDA/SCL进入一定的条件,从机设备检测到这一条件满足之后会重新配置地址以纠正错误。
如图4所示,本发明在现有技术基础上增加地址重配的实现方案,从机检测SCL/SDA状态,当满足一定条件之后则重新配置地址。
如图5所示,为本发明的一种具体的电路实现方式,U1是异或门,当SDA=1/SCL=0或者SDA=0/SCL=1时U1输出1并使能Timer U2的计时功能,当这一条件持续一定时间td之后,U2输出1,重新使能地址配置。
Claims (2)
1.一种用于I2C从机设备地址重置的方法,包括主机和多台从机,主机和多台从机通过I2C总线建立通信连接,每台从机具有I2C地址配置模块,I2C地址配置模块在从机系统上电复位时执行I2C地址配置,其特征在于,从机还包括I2C信号检测模块,所述I2C信号检测模块用于对主机输出的I2C信号的时脉信号和数据信号进行检测,判断时脉信号和数据信号是否正常,若是,则I2C信号检测模块继续进行检测,并不做其他处理,若否,则I2C信号检测模块输出使能信号到I2C地址配置模块,使I2C地址配置模块进行地址配置。
2.根据权利要求1所述的一种用于I2C从机设备地址重置的方法,其特征在于,所述I2C信号检测模块包括异或门和定时器,所述异或门的两个输入端分别接I2C信号的时脉信号和数据信号,异或门的输出端接定时器的复位信号端,定时器的输出端接I2C地址配置模块;定时器在异或门的输出信号为“1”时触发计时,并设定时间t,当触发计时且计时持续时间等于t后,定时器输出使能信号到I2C地址配置模块,使I2C地址配置模块进行地址配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641287.6A CN113342725A (zh) | 2021-06-09 | 2021-06-09 | 一种用于i2c从机设备地址重置的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641287.6A CN113342725A (zh) | 2021-06-09 | 2021-06-09 | 一种用于i2c从机设备地址重置的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113342725A true CN113342725A (zh) | 2021-09-03 |
Family
ID=77475685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110641287.6A Pending CN113342725A (zh) | 2021-06-09 | 2021-06-09 | 一种用于i2c从机设备地址重置的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113342725A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101213535A (zh) * | 2005-04-29 | 2008-07-02 | 皇家飞利浦电子股份有限公司 | 动态i2c从装置地址译码器 |
JP2010055474A (ja) * | 2008-08-29 | 2010-03-11 | Internatl Business Mach Corp <Ibm> | シリアルバスシステム及びハングアップスレーブリセット方法 |
CN102521187A (zh) * | 2011-11-29 | 2012-06-27 | 广东东研网络科技有限公司 | 一种i2c总线通信死锁解决方法 |
CN103123615A (zh) * | 2011-11-18 | 2013-05-29 | 快捷半导体(苏州)有限公司 | 管脚可选的i2c从机地址 |
CN105608038A (zh) * | 2014-11-17 | 2016-05-25 | 罗伯特·博世有限公司 | 用于i2c从机装置的控制装置 |
CN106100621A (zh) * | 2016-07-22 | 2016-11-09 | 天津大学 | 一种用于时钟切换过程的自动复位结构 |
CN108959155A (zh) * | 2018-09-29 | 2018-12-07 | 上海艾为电子技术股份有限公司 | 地址扩展电路和i2c通信接口芯片 |
CN109213718A (zh) * | 2018-11-12 | 2019-01-15 | 上海艾为电子技术股份有限公司 | 一种i2c通信装置及i2c通信设备 |
-
2021
- 2021-06-09 CN CN202110641287.6A patent/CN113342725A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101213535A (zh) * | 2005-04-29 | 2008-07-02 | 皇家飞利浦电子股份有限公司 | 动态i2c从装置地址译码器 |
JP2010055474A (ja) * | 2008-08-29 | 2010-03-11 | Internatl Business Mach Corp <Ibm> | シリアルバスシステム及びハングアップスレーブリセット方法 |
CN103123615A (zh) * | 2011-11-18 | 2013-05-29 | 快捷半导体(苏州)有限公司 | 管脚可选的i2c从机地址 |
CN102521187A (zh) * | 2011-11-29 | 2012-06-27 | 广东东研网络科技有限公司 | 一种i2c总线通信死锁解决方法 |
CN105608038A (zh) * | 2014-11-17 | 2016-05-25 | 罗伯特·博世有限公司 | 用于i2c从机装置的控制装置 |
CN106100621A (zh) * | 2016-07-22 | 2016-11-09 | 天津大学 | 一种用于时钟切换过程的自动复位结构 |
CN108959155A (zh) * | 2018-09-29 | 2018-12-07 | 上海艾为电子技术股份有限公司 | 地址扩展电路和i2c通信接口芯片 |
CN109213718A (zh) * | 2018-11-12 | 2019-01-15 | 上海艾为电子技术股份有限公司 | 一种i2c通信装置及i2c通信设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105703883B (zh) | 在统一协议通信中交换错误信息的装置、方法和系统 | |
US7562172B2 (en) | I2C Slave/master interface enhancement using state machines | |
WO2017061330A1 (ja) | 通信装置、通信方法、プログラム、および、通信システム | |
US20190012291A1 (en) | Method of communication and corresponding device | |
CN103312636B (zh) | 信息处理装置、串行通信系统和装置以及通信初始化方法 | |
CN107066746B (zh) | 基于i2c接口通过cpld来实现pca9555功能的方法 | |
US10609741B2 (en) | Multi-gigabit wireless tunneling system | |
US9292411B2 (en) | Wireless debugging and updating of firmware | |
CN105700732A (zh) | 用于传输触摸传感器信息的装置、系统和方法 | |
CN109074294B (zh) | 通信装置和通信系统 | |
CN111104272B (zh) | 一种基于rx和tx的can总线控制器测试方法 | |
CN110941218A (zh) | 一种can总线控制器测试方法 | |
TWI518500B (zh) | 資料傳輸檢測裝置、資料傳輸檢測方法及其電子裝置 | |
CN106201973B (zh) | 一种单线串行通信接口的方法与系统 | |
US10175296B2 (en) | Testing a board assembly using test cards | |
US8799545B2 (en) | Restoring stability to an unstable bus | |
CN212112457U (zh) | 一种总线控制器 | |
US8560867B2 (en) | Server system and method for processing power off | |
CN113342725A (zh) | 一种用于i2c从机设备地址重置的方法 | |
KR20150061348A (ko) | I2c 통신에서 디바이스 어드레스를 설정하는 방법 및 디바이스 어드레스를 설정하는 장치 | |
WO2017190544A1 (zh) | 一种数据传输线缆和数据传输方法 | |
KR20050046932A (ko) | i2C 버스를 이용한 슬레이브 장치들의 상태 검사 시스템 | |
Carvalho et al. | Enhancing I2C robustness to soft errors | |
CN107783862B (zh) | 一种基于pca9555的8路服务器主从bmc复位控制方法 | |
TWI828043B (zh) | 電腦系統及更新方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Room 214, 1000 Chenhui Road, Pudong New Area, Shanghai, 200120 Applicant after: Shanghai Nanxin Semiconductor Technology Co.,Ltd. Address before: Room 214, 1000 Chenhui Road, Pudong New Area, Shanghai, 200120 Applicant before: SOUTHCHIP SEMICONDUCTOR TECHNOLOGY (SHANGHAI) Co.,Ltd. |
|
CB02 | Change of applicant information |