首页> 中国专利> 检测IIC接口器件是否连接的方法、装置以及系统

检测IIC接口器件是否连接的方法、装置以及系统

摘要

本发明公开了一种检测IIC接口器件是否连接的方法、装置以及系统,属于智能识别领域,所述方法包括:发出起始信号;发出从机的设备地址;判断是否在规定时间内接收到从机的应答信号,如果是,则表示连接成功,反之,则表示连接未成功;发出终止信号。与现有技术相比,本发明的检测IIC接口器件是否连接的方法测速度快,通用性好,实时性好。

著录项

  • 公开/公告号CN105446837A

    专利类型发明专利

  • 公开/公告日2016-03-30

    原文格式PDF

  • 申请/专利权人 北京天诚盛业科技有限公司;

    申请/专利号CN201510155517.2

  • 发明设计人 贾天亮;

    申请日2015-04-02

  • 分类号G06F11/22;

  • 代理机构北京恩赫律师事务所;

  • 代理人刘守宪

  • 地址 100085 北京市海淀区上地十街1号院1号楼8层802

  • 入库时间 2023-12-18 15:07:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-05-07

    授权

    授权

  • 2019-04-30

    著录事项变更 IPC(主分类):G06F11/22 变更前: 变更后: 申请日:20150402

    著录事项变更

  • 2016-04-27

    实质审查的生效 IPC(主分类):G06F11/22 申请日:20150402

    实质审查的生效

  • 2016-03-30

    公开

    公开

说明书

技术领域

本发明涉及智能识别领域,特别是指一种检测IIC接口器件是否连接 的方法、装置以及系统。

背景技术

在电路设计或是系统设计的时候,如果有IIC(也称I2C或者I2C以 及I2C等)接口的器件(以下称IIC器件或从机),通常是从机通过IIC接 口连接到主机上(所谓主机是指传送开始时发出启动信号、发出时钟信号 以及传送终止时发出终止信号的设备,通常主机都是处理器(CPU),被 主机寻访的设备称为从机。),在某些时候需要检测从机是否与主机连接或 焊接,并且连接或焊接的是否牢固。如图1所示。器件A焊接在电路板I 上;而器件B焊接在电路板II上,通过排线连接到电路板I上,此时, CPU为主机,器件A和器件B均为从机。

以图1为例,现有的做法是,若器件A或器件B是有ID号的IIC器 件,则读出其ID号和其真实的ID号进行比较,如果相等,就表明器件A 或器件B已与CPU连接或焊接,并且连接或焊接的很牢靠。

若器件A或器件B是没有ID号的IIC器件,则向其内部的某个地址 或寄存器中写入某个值,然后再读出该地址或寄存器中的值,比较写入和 读出的是否一致,如果一致也表明器件A或器件B已与CPU连接或焊接, 并且连接或焊接的很牢固。

现有的技术存在以下问题:

第一、检测速度慢;在IIC器件存在的情况下,需要对IIC器件进行 多次读写操作,才能完成检测;在IIC器件不存在的情况下,更是需要连 续等待多次的超时操作之后,才能完成检测。

第二、通用性差;对于特定的IIC器件还需要考虑用哪种检测方法;

第三、实时性差;只有在设备或系统刚刚上电的时候对IIC器件进行 一次检测,不适合对IIC器件进行实时检测。

发明内容

本发明提供一种检测IIC接口器件是否连接的方法、装置以及系统, 该方法检测速度快,通用性好,实时性好。

为解决上述技术问题,本发明提供技术方案如下:

一种检测IIC接口器件是否连接的方法,包括:

发出起始信号;

发出从机的设备地址;

判断是否在规定时间内接收到从机的应答信号,如果是,则表示连接 成功,反之,则表示连接未成功;

发出终止信号。

一种检测IIC接口器件是否连接的装置,包括:

第一发出模块,用于发出起始信号;

第二发出模块,用于发出从机的设备地址;

第一判断模块,用于判断是否在规定时间内接收到从机的应答信号, 如果是,则表示连接成功,反之,则表示连接未成功;

第三发出模块,用于发出终止信号。

一种检测IIC接口器件是否连接的系统,包括上述检测IIC接口器件 是否连接的装置,以及与所述检测IIC接口器件是否连接的装置连接的至 少一个IIC器件。

本发明具有以下有益效果:

与现有技术相比,本发明的检测IIC接口器件是否连接的方法中,首 先,主机在IIC总线上发出起始信号;然后,主机在IIC总线上发出从机 的设备地址;IIC接口的总线协议规定:“每一个被传送的字节后面都必须 跟随一位‘应答位’”,据此可知,从机在收到主机发出的设备地址信号后, 会发出一个应答信号;若主机接收到从机的应答信号,则表示主机与从机 连接成功,否则,表示主机与从机未连接成功(包括没有从机,从机连接 不牢固等多种情况);检测完毕后,终止检测过程。

本发明的检测IIC接口器件是否连接的方法不需要对IIC器件进行读 写操作,也不需要多次超时等待,只需要简单的四步就能实现检测的目的, 检测速度快;

只要是IIC接口的器件,不管其类型如何,不管其有没有自身的ID 号,都能通过本方法检测,通用性好;

本发明的检测IIC接口器件是否连接的方法不需要对IIC器件的地址 或寄存器进行操作,因此不论IIC器件已经配置完毕,都不会对IIC器件 造成影响,不需要先将地址或寄存器中的数值读出保存,检测完毕后,再 写回,故可以在任何时间对IIC器件进行实时检测,应用场景广泛且实时 性好。

附图说明

图1为现有技术中的一个包含有IIC接口的电路图;

图2为IIC总线在进行数据传送时的时序信号图;

图3为IIC总线在起始和终止时的时序信号图;

图4为IIC总线在应答时的时序信号图;

图5为主机检测IIC器件的应答信号的时序信号图;

图6为IIC器件的地址格式示意图;

图7为IIC总线写入数据的流程图;

图8为IIC总线读取数据的流程图;

图9为本发明的检测IIC接口器件是否连接的方法的流程图一;

图10为本发明的检测IIC接口器件是否连接的方法的流程图二;

图11为本发明的检测IIC接口器件是否连接的装置的结构图一;

图12为本发明的检测IIC接口器件是否连接的装置的结构图二;

图13为本发明的检测IIC接口器件是否连接的装置的结构图三;

图14为本发明的检测IIC接口器件是否连接的系统的结构图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结 合附图及具体实施例进行详细描述。

一方面,本发明提供一种检测IIC接口器件是否连接的方法,如图9 所示,包括:

步骤S101:发出起始信号;

本步骤中,主机在IIC总线上发出起始信号;

步骤S102:发出从机的设备地址;

本步骤中,主机在IIC总线上发出从机的设备地址;

步骤S103:判断是否在规定时间内接收到从机的应答信号,如果是, 则表示连接成功,反之,则表示连接未成功;

从机在接收到主机发出的设备地址信息后,会发出一个应答信号,主 机根据是否接收到该应答信号判断是否与从机连接成功;

步骤S104:发出终止信号。

检测完毕后,发出终止信号,释放总线的占用状态,终止上过程。

IIC总线是一种串行总线,是具备多主机系统所需的包括总线裁决和 高低速器件同步功能的高性能串行总线。

IIC总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线 SCL。

IIC总线通过上拉电阻接正电源。当总线空闲时,两根线均为高电平。 连到总线上的任一器件输出的低电平,都将使总线的信号变低,即各器件 的SDA及SCL都是线“与”关系。

每个接到IIC总线上的器件都有唯一的地址。主机与从机间的数据传 送可以是由主机发送数据到从机,这时主机即为发送器,而总线上接收数 据的从机则为接收器。

IIC总线进行数据传送时,时钟线SCL信号为高电平期间,数据线SDA 上的数据必须保持稳定,只有在时钟线SCL上的信号为低电平期间,数 据线SDA上的高电平或低电平状态才允许变化,时序信号如图2所示。

SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信 号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信 号,时序信号如图3所示。

起始和终止信号都是由主机发出的,在起始信号产生后,总线就处于 被占用的状态;在终止信号产生后,总线就处于空闲状态。

IIC总线协议规定,每一个字节必须保证是8位长度。数据传送时, 先传送最高位(MSB),每一个被传送的字节后面都必须跟随一位应答位 (即一帧共有9位)。如果一段时间内没有收到从机的应答信号,则自动 认为从机已正确接收到数据,时序信号如图4所示。

IIC总线数据读写的流程如下:

以图1所示的场景为例,图1中主机为CPU,从机为器件A和器件B。

IIC器件地址格式如图5所示,其中MSB为最高位(第7位),LSB 为最低位(第0位),第7位至第1位为设备的地址,第0位为读写控制 位,用于表示对该器件进行读或写操作,其中,0表示写操作,1表示读 操作。

假设器件A的设备地址为D1。

以CPU向器件A的地址D2中写入数据DAT为例详述IIC总线的写 数据的流程,如图6所示。

以CPU从器件A的地址D2中读出数据DAT为例详述IIC总线的读 数据的流程,如图7所示。

现有的检测IIC接口器件是否连接的方法是,在IIC器件不存在的情 况下,如果IIC器件有自己的ID号的话,就读取其ID号和存储在主机内 的ID号进行比较;此时,需要对IIC器件进行读操作,读操作过程如图7 所示;

如果IIC器件本身没有ID号的话,就对其内部的某个地址或寄存器 写入某个数值,然后再读出该地址或寄存器中的值,两者进行比较;此时, 需要先对IIC器件进行图6所示的写操作,再进行图7所示的读操作。

从图6和图7可知,此种检测方法需要连续多次的对IIC器件进行读 写操作,尤其是“对某个寄存器或地址写入某个数值,再读出比较的方法”, 需要先进行图6的操作,然后再进行图7的操作,操作非常的繁琐复杂。

并且,在IIC器件不存在的情况下,需要多次超时等待之后,才能完 成整个的检测过程,是浪费了大量的时间,极大的延缓了IIC器件的检测 速度。

另外,图7和图6所示的读写流程只是一个最基本的操作流程,对于 IIC器件的设备地址长度是10bit(即10位二进制数)的,由于IIC总线的 地址格式必须是8位长度,主机发出设备地址的操作要分两步完成,每 步又都需要等待应答信号或超时的操作;对于设备内寄存器或地址是16bit 的,主机发出设备内寄存器或地址的操作也要分两步完成,每步都需要等 待应答信号或超时的操作;对于设备内寄存器或地址中的数据是16bit的, 主机在对该寄存器或地址进行读写操作的时候,也要分两步进行,每步都 需要等待应答信号。甚至有些IIC器件需要其它更加复杂的操作,才能完 成整个的检测过程。

并且,现有的检测IIC接口器件是否连接的方法,由于其检测速度慢, 通用性差,其应用场景就受到了极大的限制,通常只用在设备或系统刚刚 上电的时候对IIC器件进行一次检测,不适合对IIC器件进行实时检测。 因为有ID号的IIC器件,需要主机对从机的多次操作之后,才能读出其 ID号,而对于没有ID号的IIC器件,需要向其内部的某个地址或寄存器 写入某个数值,然后再读出比较的方法进行检测,而在设备或系统运行起 来后,IIC器件已经配置完毕,如果要向其内部的某个地址或寄存器写入 某个数值的话,可能会对配置好的IIC器件造成影响,这就需要先将现在 该地址或寄存器中的数值读出保存,检测完毕后,再写回,如此更是一个 繁琐的过程,故现有的检测IIC接口器件是否连接的方法,不适合对IIC 器件进行实时检测。

而对IIC器件的实时检测,在有时是非常必要的,如图1所示,器件 B是通过排线和CPU连接的,在设备或系统刚上电的时候连接是牢固的, 但是在使用过程中难免会出现接触不好的情况,如果此时能检测到其连接 出现了问题,而使问题得到及时处理,那很有可能就会避免更大问题的发 生。而对于焊接于电路板I上的器件A,由于在设备或系统运行过程中由 于焊盘脱落、器件老化等原因而不能正常工作,而它又是设备或系统上的 一个至关重要的器件,如果能及时检测到其问题,将是非常有价值的。

IIC串行总线协议规定,每一个被传送的字节后面都必须跟随一位应 答位(该应答位是接收信号的一端发出的,此处指从机)。如果一段时间 内没有收到从机的应答信号,则自动认为从机已正确接收到数据”。IIC总 线协议之所以做如此的规定,是为了避免“主机”一直等待“应答信号”, 而不能跳出的情况出现。

与现有技术相比,本发明的检测IIC接口器件是否连接的方法中,首 先,主机在IIC总线上发出起始信号;然后,主机在IIC总线上发出从机 的设备地址;IIC接口的总线协议规定:“每一个被传送的字节后面都必须 跟随一位‘应答位’”,据此可知,从机在收到主机发出的设备地址信号后, 会发出一个应答信号;若主机接收到从机的应答信号,则表示主机与从机 连接成功,否则,表示主机与从机未连接成功(包括没有从机,从机连接 不牢固等多种情况);检测完毕后,终止检测过程。

本发明的检测IIC接口器件是否连接的方法不需要对IIC器件进行读 写操作,也不需要多次超时等待,只需要简单的四步就能实现检测的目的, 检测速度快;

只要是IIC接口的器件,不管其类型如何,不管其有没有自身的ID 号,都能通过本方法检测,通用性好;

本发明的检测IIC接口器件是否连接的方法不需要对IIC器件的地址 或寄存器进行操作,因此不论IIC器件已经配置完毕,都不会对IIC器件 造成影响,不需要先将地址或寄存器中的数值读出保存,检测完毕后,再 写回,故可以在任何时间对IIC器件进行实时检测,应用场景广泛且实时 性好。

在检测应答信号的时候,现有技术是在SCL的第9个时钟周期的高 电平的某一个时间点检测一次SDA信号线上的信号,根据这一次的检测 结果判断是否收到了应答信号,但是实际上,SDA信号线上的应答信号是 否出现,在SCL的第8个时钟周期的高电平和第9个时钟周期的高电平 之间的低电平已经得以体现,如图4所示。

现有技术对应答信号的检测方式极大的延缓了对IIC器件的操作速 度,因为SCL信号线上的时钟周期是在一定的范围内动态可调的,如果 能提前检测到应答信号,就可以在一定的范围内缩短SCL信号线上第9 个时钟周期的时间。所以如果能缩短SCL信号线上第9个时钟周期(即 应答信号周期)的话,将从总体上提高对IIC器件的检测速度。

因此,判断是否在规定时间内接收到从机的应答信号(步骤S103) 还可以包括:

步骤S1031:在第8个时钟周期的高电平和第9个时钟周期的高电平 之间检测从机的应答信号,检测次数为至少一次。

如图5所示,本发明在SCL信号线上的第8个时钟周期的高电平和 第9个时钟周期的高电平之间的低电平处检测应答信号,优选的,可以从 这个低电平的中心点处开始,分三个(或五个)时间点检测SDA信号线 上的信号,可以提前知道是否有应答信号,并提高了检测应答信号的准确 性。

进一步的,还包括:

步骤S1032:若检测到从机的应答信号,则缩短第9个时钟周期的时 间;缩短第9个时钟周期的时间,提高了检测速度。

作为本发明检测IIC接口器件是否连接的方法的一种改进,当连接未 成功时,重复执行发出起始信号(步骤S101),发出从机的设备地址(步 骤S102)和判断是否在规定时间内接收到从机的应答信号(步骤S103) 一定次数。

当检测结果为连接未成功时,为了使检测结果更为准确,需要主机再 次发出起始信号和从机的设备地址,并再次判断是否在规定时间内接收到 从机的应答信号(即重复执行步骤S101、S102和步骤S103),如此重复 几次,均接收不到从机的应答信号后,才判定连接未成功,这样能够提高 检测结果的准确率。

作为本发明检测IIC接口器件是否连接的方法的另一种改进,如图10 所示,还可以包括:

步骤S105:将连接结果进行输出显示和/或报警提示。将结果输出显 示,通过LED闪烁、蜂鸣器报警或是LCD显示的方式提示故障,以供分 析判断。

另一方面,本发明提供一种检测IIC接口器件是否连接的装置1(此 处所述的检测IIC接口器件是否连接的装置即为前述的主机,下同),如 图11所示,包括:

第一发出模块11,用于发出起始信号;

第二发出模块12,用于发出从机的设备地址;

第一判断模块13,用于判断是否在规定时间内接收到从机的应答信 号,如果是,则表示连接成功,反之,则表示连接未成功;

第三发出模块14,用于发出终止信号。

与上述方法对应的,本发明的检测IIC接口器件是否连接的装置不需 要对IIC器件进行读写操作,也不需要多次超时等待,只需要简单的四步 就能实现检测的目的,检测速度快;

只要是IIC接口的器件,不管其类型如何,不管其有没有自身的ID 号,都能通过本装置检测,通用性好;

本发明的检测IIC接口器件是否连接的装置不需要对IIC器件的地址 或寄存器进行操作,因此不论IIC器件已经配置完毕,都不会对IIC器件 造成影响,不需要先将地址或寄存器中的数值读出保存,检测完毕后,再 写回,故可以在任何时间对IIC器件进行实时检测,应用场景广泛且实时 性好。

如图12所示,上述第一判断模块13包括:

检测单元131,用于在第8个时钟周期的高电平和第9个时钟周期的 高电平之间检测从机的应答信号,检测次数为至少一次。

检测单元在SCL信号线上的第8个时钟周期的高电平和第9个时钟 周期的高电平之间的低电平处检测应答信号,可以提前知道是否有应答信 号,并提高了检测应答信号的准确性。

进一步的,还包括:

调整单元132,用于若检测到从机的应答信号,则缩短第9个时钟周 期的时间。调整单元缩短第9个时钟周期的时间,提高了检测速度。

作为本发明检测IIC接口器件是否连接的装置的一种改进,当连接未 成功时,重复执行第一发出模块11,第二发出模块12和第一判断模块13 一定次数。

当检测结果为连接未成功时,为了使检测结果更为准确,需要主机再 次发出起始信号和从机的设备地址,并再次判断是否在规定时间内接收到 从机的应答信号(即重复执行第一发出模块11,第二发出模块12和第一 判断模块13),如此重复几次,均接收不到从机的应答信号后,才判定连 接未成功,这样能够提高检测结果的准确率。

作为本发明检测IIC接口器件是否连接的装置的另一种改进,如图13 所示,还包括:

输出显示模块15,用于将连接结果进行输出显示和/或报警提示。将 结果输出显示,以供分析判断。

再一方面,本发明还提供一种检测IIC接口器件是否连接的系统,如 图14所示,包括上述检测IIC接口器件是否连接的装置1,以及与检测IIC 接口器件是否连接的装置连接1(主机)的至少一个IIC器件2(从机)。

与上述方法及装置对应的,本发明检测IIC接口器件是否连接的系统 中,首先,主机在IIC总线上发出起始信号;然后,主机在IIC总线上发 出从机的设备地址;IIC接口的总线协议规定:“每一个被传送的字节后面 都必须跟随一位‘应答位’”,据此可知,从机在收到主机发出的设备地址 信号后,会发出一个应答信号;若主机判断接收到从机的应答信号时,则 表示主机与从机连接成功,否则,表示主机与从机未连接成功(包括没有 从机,从机连接不牢固等多种情况。);检测完毕后,终止检测过程。本发 明的检测IIC接口器件是否连接的系统检测速度快,只需要简单的四次操 作就能实现检测的目的;通用性好,只要是IIC接口的器件,不管其类型 如何,不管其有没有自身的ID号,都能通过本装置检测。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普 通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改 进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号