CN117555838A - 串行通信总线地址配置方法、系统、电子设备和存储介质 - Google Patents
串行通信总线地址配置方法、系统、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117555838A CN117555838A CN202311633276.9A CN202311633276A CN117555838A CN 117555838 A CN117555838 A CN 117555838A CN 202311633276 A CN202311633276 A CN 202311633276A CN 117555838 A CN117555838 A CN 117555838A
- Authority
- CN
- China
- Prior art keywords
- controlled
- chip
- chips
- serial communication
- communication bus
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 118
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000004590 computer program Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 10
- 230000008054 signal transmission Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000007667 floating Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/376—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a contention resolving method, e.g. collision detection, collision avoidance
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Abstract
本申请公开一种串行通信总线地址配置方法、系统、电子设备和计算机存储介质;串行通信总线地址配置方法应用于包括主控芯片的电子设备,包括:S100:当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态;S200:设置主控芯片的通用输入输出端口为输出模式,接收主控芯片的通用输入输出端口输出的第一控制信号,将多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态;S300:通过串行通信总线发送地址配置指令,来配置第一受控芯片的总线地址,以使得第一受控芯片的总线地址与多个受控芯片中除第一受控芯片之外的其他受控芯片的总线地址均不同,本申请能够解决串行通信总线中的地址冲突的问题。
Description
技术领域
本申请涉及通信设备技术领域,具体涉及一种串行通信总线地址配置方法、系统、电子设备和计算机存储介质。
背景技术
串行通信总线主要是用来连接整体电路(ICS),多个芯片可以连接到同一总线结构下,同时每个芯片都可以作为实时数据传输的控制源。这种方式简化了信号传输总线。串行通信总线可以搭载多个芯片。但搭载的芯片的总线地址可能会出现相同的情况,在出现总线地址冲突时,会导致信号传输发生错误。
目前,解决上述问题的方法主要是为搭载的芯片额外设计一个ADD_SEL引脚,通过把该引脚上拉到VDD、浮空或下拉到GND的方式为搭载的芯片选定三个总线地址。
然而,上述解决方案总线地址只能三选一,总线地址的选择性较低,仍有总线地址冲突的可能性。
发明内容
有鉴于此,本申请提供一种串行通信总线地址配置方法、系统、电子设备和存储介质,以解决传统方案中搭载于同一串行通信总线中芯片的总线地址冲突的技术问题。
本申请第一方面提供一种串行通信总线地址配置方法,应用于包括主控芯片的电子设备,包括:S100:当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态;S200:设置所述主控芯片的通用输入输出端口为输出模式,接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态;S300:通过串行通信总线发送地址配置指令,来配置所述第一受控芯片的总线地址,以使得所述第一受控芯片的总线地址与所述多个受控芯片中除所述第一受控芯片之外的其他受控芯片的总线地址均不同。
可选地,所述当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态的过程还可以包括:若所述多个受控芯片中存在处于所述中断状态的受控芯片,通过所述串行通信总线向所述多个受控芯片发送读清指令,以将所述多个受控芯片的中断寄存器清空。
可选地,所述接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态的过程还可以包括:接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中每个受控芯片的第一引脚设置为低电平状态;当所述多个受控芯片中每个受控芯片的第一引脚均设置为低电平状态时,所述第一受控芯片接收所述主控芯片的通用输入输出端口输出的第二控制信号,将所述第一受控芯片的第一引脚设置为高电平状态。
可选地,所述第一引脚复用所述多个受控芯片的漏极开路引脚。
可选地,所述漏极开路引脚包括用于中断信号的引脚、用于充电状态指示的引脚、外部中断请求的引脚或电源状态指示引脚。
可选地,串行通信总线地址配置过程还可以包括:S400:重复S200-S300,直到所有受控芯片的总线地址均完成配置,所述多个受控芯片的总线地址均不相同。
本申请第二方面提供一种串行通信总线地址配置系统,包括:主控芯片,包括多个通用输入输出端口;多个受控芯片,每个所述受控芯片包括第一引脚,所述多个受控芯片的第一引脚分别与所述多个通用输入输出端口连接,所述多个受控芯片共用串行通信总线,所述多个受控芯片还通过所述串行通信总线与所述主控芯片相连接;其中,当所述主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态,之后,所述主控芯片用于将所述通用输入输出端口设置为输出模式,所述多个受控芯片用于接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态;所述主控芯片还用于通过所述串行通信总线发送地址配置指令,来配置所述第一受控芯片的总线地址,以使得所述第一受控芯片的总线地址与所述多个受控芯片中除所述第一受控芯片之外的其他受控芯片的总线地址均不同。
本申请第三方面提供一种电子设备,包括:如实施例第二方面所述的串行通信总线地址配置系统。
本申请第四方面提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如实施例第一方面所述的串行通信总线地址配置方法。
本申请提供的串行通信总线地址配置方法,通过将地址冲突的多个受控设备中除了一个第一受控芯片外的第二受控芯片均调整为不响应串行通信总线发送的指令的状态,同时将第一受控芯片调整为响应串行通信总线发送的指令的状态,此时通过串行通信总线发送地址配置指令,只有第一受控芯片会响应,以更改了第一受控芯片的总线地址,进而解决了串行通信总线中的地址冲突的问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本申请一实施例的串行通信总线地址配置方法的流程图;
图2是本申请一实施例的串行通信总线地址配置系统的结构示意图;
图3是本申请另一实施例的串行通信总线地址配置系统的连接示意图;
图4是本申请一实施例的电子设备的示意图。
具体实施方式
为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
随着科学技术的发展,电子产品的设计复杂度也在日趋升高,这也对多芯片通信带来较大压力,当串行总线接口上挂载的芯片数量越来越多,设备地址冲突的问题便应运而生。当出现设备地址冲突时,向冲突设备发送信号会存在问题。
为了解决设备地址冲突的问题,目前的一种解决方式是为芯片设计一个额外的ADD_SEL引脚,通过对该ADD_SEL引脚进行上拉、浮空或下拉等操作来选定三个总线地址,上拉具体操作是将不确定的信号通过一个电阻嵌位在高电平,把电位拉高到VDD,浮空的具体操作是使ADD_SEL引脚既不接高电平,也不接低电平,由于逻辑器件的内部结构,当它输入引脚悬空时,相当于该引脚接了高电平,但在一般实际运用时,引脚悬空的情况下易受干扰,下拉的具体操作是把电位拉低到GND。
另一种解决方式是基于ADC电路的解决方案,具体是设计一个模拟引脚通过内部ADC采样电路(通常设计为6bit SAR DAC)对该引脚外挂的不同阻值电阻进行电压采样,从而确定芯片的总线地址。
再一种解决方式是在芯片内部预留Efues烧写位,并在通过FT测试的时候烧写不同的Efuse组合,例如,原本芯片的总线地址中的比特位全是0,可以部分烧写为1,进而确定芯片的总线地址。
上述三种解决总线地址冲突的方法中,方法一需要额外设计一个专用引脚,增加了生产成本,且总线地址只能三选一,总线地址的选择性较低,并不能完全解决多个设备的总线地址冲突的问题。方法二需要在芯片内部单独设计一路ADC电路,进而需要增加较大的芯片面积。方法三需要在芯片内部预留Efues烧写位,并且所做出的总线地址更改是永久性的,即烧写后改变的比特位的值无法再次更改。
综上所述,目前解决总线地址冲突的方法并不能很好地解决问题,因此,本方案提出了一种串行通信总线地址配置方法、系统、电子设备和存储介质,以解决上述问题。
下面结合附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,下述各个实施例及其技术特征可以相互组合。
串行通信总线地址配置方法
图1是本申请一实施例的串行通信总线地址配置方法的流程图,如图1所示,该串行通信总线地址配置方法应用于包括主控芯片的电子设备,包括如下步骤:
S100:当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态。
多个受控芯片通过串行通信总线分别与主控芯片相连接,且多个受控芯片具有相同的总线地址,为了解决通信地址冲突的问题,首先将主控芯片的通用输入输出端口设置为输入模式,在主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态,以确保多个受控芯片对串行通信总线发送的指令进行响应。
S200:设置主控芯片的通用输入输出端口为输出模式,接收主控芯片的通用输入输出端口输出的第一控制信号,将多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态。
在确保多个受控芯片均不处于中断状态后,再将主控芯片的通用输入输出端口设置为输出模式,从多个受控芯片中选择一个受控芯片作为第一受控芯片,第一受控芯片为本次操作中进行地址修改的目标受控芯片,之后接收主控芯片的通用输入输出端口输出的第一控制信号,将多个受控芯片中除第一受控芯片之外的其他所有受控芯片的第一引脚设置为低电平状态,当受控芯片的第一引脚为低电平状态时,该受控芯片处于中断状态,能够使该受控芯片认为串行通信总线被其他设备占用,进而不响应通过串行通信总线发送的指令,在电路中,高低电平状态是指第一引脚在正常工作状态下输出的两种电压状态。当输出电压高于某个特定阈值,如VIH(voltage input high)时,第一引脚就被认为是高电平状态;当输出电压低于另一个特定阈值,如VIL(voltage input low)时,第一引脚信号就被认为是低电平状态,VIL和VIH可以自定义设置。
S300:通过串行通信总线发送地址配置指令,来配置第一受控芯片的总线地址,以使得第一受控芯片的总线地址与多个受控芯片中除第一受控芯片之外的其他受控芯片的总线地址均不同。
在多个受控芯片中除第一受控芯片之外的其他所有受控芯片处于中断状态时,主控芯片通过串行通信总线发送地址配置指令。此时由于第一受控芯片的状态为对串行通信总线发送的指令进行响应,其他受控芯片的状态为不对串行通信总线发送的指令进行响应,则仅有第一受控芯片对发送的地址配置指令进行响应,并根据地址配置指令对自身的总线地址进行配置,配置后的第一受控芯片的总线地址具有唯一性,也就是说,第一受控芯片的地址在配置后与连接于串行通信总线上的除第一受控芯片外的多个受控芯片均具有不同的总线地址。
在本申请实施例中,只需通过第一控制信号,将连接于串行通信总线的多个受控芯片中除了一个第一受控芯片外的其他受控芯片均调整为不响应串行通信总线发送的指令的状态,同时将第一受控芯片调整为响应串行通信总线发送的指令的状态,此时通过串行通信总线发送地址配置指令,只有第一受控芯片会响应,降低了修改芯片地址的难度,同时由于更改了第一受控芯片的总线地址,能够解决第一受控芯片的地址冲突问题。
在一种可能实现的方式中,当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态的过程还可以包括:
若多个受控芯片中存在处于中断状态的受控芯片,通过串行通信总线向多个受控芯片发送读清指令,以将多个受控芯片的中断寄存器清空。
在受控芯片需要向主控芯片发送数据等情况时,受控芯片的中断寄存器中会生成中断请求,以使主控芯片在发现受控芯片处于中断状态时主动对受控芯片进行读取等操作,此时受控芯片的第一引脚会被设置为低电平状态,该受控芯片会认为第一引脚与通用输入输出端口的连接不可用,进而无法对串行通信总线进行响应,在多个受控芯片中很可能存在上述情况的受控芯片,为了避免受控芯片主动与串行通信总线中断通信,进而在串行通信总线地址配置的过程中,受控芯片不响应通过串行通信总线发送的指令的情况发生,主控芯片首先通过串行通信总线向多个受控芯片发送读清指令,将多个受控芯片的中断寄存器清空,因此受控芯片不会主动与串行通信总线中断通信而不响应通过串行通信总线发送的指令。
在本申请实施例中,主控芯片通过串行通信总线向多个受控芯片发送清空指令,将多个受控芯片的中断寄存器清空,能够避免受控芯片无法响应地址配置指令的问题。
在一种可能实现的方式中,接收主控芯片的通用输入输出端口输出的第一控制信号,将多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态的过程还可以包括:
接收主控芯片的通用输入输出端口输出的第一控制信号,将多个受控芯片中每个受控芯片的第一引脚设置为低电平状态,当多个受控芯片中每个受控芯片的第一引脚均设置为低电平状态时,第一受控芯片接收主控芯片的通用输入输出端口输出的第二控制信号,将第一受控芯片的第一引脚设置为高电平状态。
主控芯片通过串行通信总线下发指令或信号时,由于串行通信总线下发指令或信号的依据是总线地址,因此会向所有总线地址相同的受控芯片均发送该指令,为了向不同的受控芯片发送指令或信号,可以接收主控芯片中设置的通用输入输出端口输出的第一控制信号将多个受控芯片中每个受控芯片的第一引脚设置为低电平状态,以使多个受控芯片处于中断状态,不对串行通信总线发送的指令进行响应,当多个受控芯片中每个受控芯片的第一引脚均设置为低电平状态时,由于每个受控芯片分别连接于主控芯片的一个通用输入输出端口,第一受控芯片可以接收主控芯片的一个通用输入输出端口输出的第二控制信号,将第一受控芯片的第一引脚设置为高电平状态,以使第一受控芯片处于响应状态,能够对串行通信总线发送的指令进行响应。
在本申请实施例中,通过通用输入输出端口输出的第一控制信号和第二控制信号,分别对第一受控芯片和其他受控芯片的状态进行了配置,使串行通信总线发送地址配置指令时只有第一受控芯片能够进行响应,进而保证了总线地址配置的准确性。
在一种可能实现的方式中,第一引脚复用多个受控芯片的漏极开路引脚。
多个受控芯片的第一引脚可以选取为高阻状态的任意端口,例如漏极开路引脚,漏极开路(Open Drain)引脚可独立输入/输出低电平和高阻状态,若需要产生高电平,则需使用外部上拉电阻或使用如LCX245等电平转换芯片,因此,设置第一引脚复用多个受控芯片的漏极开路引脚,能够避免受控芯片自身将第一引脚拉为高电平,同时在使用时可以直接复用,无需改变结构,利用其具有的独立输出低电平的属性即可实现对第一受控芯片的地址配置,即,受控芯片的第一引脚可以由外部下拉电阻输拉低电平,也可以由内部拉低电平。若要产生高电平,则只能通过外部上拉电阻等方式,无法内部拉高电平。在检测到受控芯片的第一引脚被设置为低电平时,不能确认是由外部拉低或由内部拉低,因此首先将受控芯片的第一引脚配置为高电平,再确保所述多个受控芯片对通过串行通信总线发送的指令进行响应,即确保受控芯片的第一引脚不会由内部拉低,在此种情况下若受控芯片的第一引脚被拉低电平,即可确认是由外部控制拉低电平,进而可以认为被拉低电平的受控芯片的第一引脚所对应的受控芯片是无需响应串行通信总线发送的地址配置指令。
在本申请实施例中,通过设置第一引脚复用多个受控芯片的漏极开路引脚,保证了拉高受控芯片上第一引脚为高电平的操作只能由主控芯片来指示,保证了串行通信总线地址配置的准确性。
在一种可能实现的方式中,漏极开路引脚包括用于中断信号的引脚(Interrupt,INT)、用于充电状态指示的引脚(Status,STAT)、外部中断请求的引脚(InterruptRequest,IRQ)或电源状态指示引脚(Power Good,PG)。
在本申请实施例中,由于用于中断信号的引脚、用于充电状态指示的引脚、外部中断请求的引脚或电源状态指示引脚均为芯片中常用的引脚,因此可以直接复用,无需添加新的引脚,降低了生产成本。
在一种可能实现的方式中,串行通信总线地址配置的过程还可以包括:S400:重复S200-S300,直到所有受控芯片的总线地址均完成配置,多个受控芯片的总线地址均不相同。
由于第一受控芯片为多个受控芯片中的一个受控芯片,当连接于串行通信总线的多个受控芯片中存在多个地址冲突的受控芯片时,上述步骤S100-步骤300只解决了其中一个受控芯片的地址冲突问题,若要解决所有存在总线地址冲突的受控芯片的问题,为了提高效率,只需要重复上述步骤S200-步骤S300,每次从存在地址冲突的受控芯片中选取一个作为第一受控芯片,选取的方式可以是根据存在地址冲突的受控芯片的大小或重要性等进行选取,也可以人为根据业务需求进行选取。当串行通信总线中有N个存在总线地址冲突的受控芯片时,只需重复执行N-1次步骤S200-步骤S300,即可解决存在总线地址冲突的受控芯片的问题,N为大于或等于2的正整数。若需要确保在解决所有存在总线地址冲突的受控芯片的问题的过程中受控芯片一定对通过串行通信总线发送的指令进行响应,则可以选择重复步骤S100-步骤300,但在通常情况下,不会在总线地址配置的过程中发生受控芯片由于发生异常或需要跟主控芯片通信导致主动中断与串行通信总线的通信,因此通常选择重复步骤S200-步骤S300的方式对受控芯片的总线地址进行配置以提高总线地址配置效率。
在本申请实施例中将剩余的受控芯片作为新的多个受控芯片,并重复执行上述方法对应的操作,即可对所有受控芯片的地址进行配置,进而解决了串行通信总线中的地址冲突的问题。
需要说明的是,当剩余的受控芯片只有两个芯片时,只需要重复一次步骤S200-步骤S300,对其中一个剩余的受控芯片的总线地址进行更改后,即可解决串行通信总线中的地址冲突的问题,无需对两个剩余的受控芯片的总线地址均进行修改。
串行通信总线地址配置系统
图2是本申请一实施例的串行通信总线地址配置系统的结构示意图,如图2所示,该串行通信总线地址配置系统300包括:主控芯片301和多个受控芯片302。
主控芯片301,包括多个通用输入输出端口3011。
多个受控芯片302,每个受控芯片302包括第一引脚3021,多个受控芯片302的第一引脚3021分别与多个通用输入输出端口3011连接,多个受控芯片302共用串行通信总线,多个受控芯片302还通过串行通信总线与主控芯片301相连接;
其中,当主控芯片301的通用输入输出端口3011设置为输入模式时,确保多个受控芯片302均不处于中断状态,之后,主控芯片301用于将通用输入输出端口3011设置为输出模式,多个受控芯片302用于接收主控芯片301的通用输入输出端口3011输出的第一控制信号,将多个受控芯片302中除第一受控芯片之外的每个受控芯片的第一引脚3021设置为低电平状态;主控芯片301用于通过串行通信总线发送地址配置指令,来配置第一受控芯片的总线地址,以使得第一受控芯片的总线地址与多个受控芯片中除第一受控芯片之外的其他受控芯片的总线地址均不同。
多个受控芯片302的第一引脚3021通过串行通信总线中的一条信号传输线分别与主控芯片301的通用输入输出端口3011相连接,且多个受控芯片302具有相同的总线地址,为了解决通信地址冲突的问题,首先将主控芯片301的通用输入输出端口3011设置为输入模式,在主控芯片301的通用输入输出端口3011设置为输入模式时,确保多个受控芯片302均不处于中断状态,以确保多个受控芯片302对串行通信总线发送的指令进行响应。
在确保多个受控芯片302均不处于中断状态后,再将主控芯片301的通用输入输出端口301设置为输出模式,从多个受控芯片302中选择一个受控芯片作为第一受控芯片,第一受控芯片为本次操作中进行地址修改的目标受控芯片,之后多个受控芯片302接收主控芯片301的通用输入输出端口301输出的第一控制信号,多个受控芯片302中除第一受控芯片之外的其他所有受控芯片的第一引脚3021在接收到第一控制信号后被设置为低电平状态,当受控芯片302的第一引脚3021为低电平状态时,该受控芯片302处于中断状态,能够使该受控芯片302认为串行通信总线被其他设备占用,进而不响应通过串行通信总线发送的指令,在电路中,高低电平状态是指第一引脚3021在正常工作状态下输出的两种电压状态。当输出电压高于某个特定阈值,如VIH(voltage input high)时,第一引脚3021就被认为是高电平状态;当输出电压低于另一个特定阈值,如VIL(voltage input low)时,第一引脚3021就被认为是低电平状态,VIL和VIH可以自定义设置。
在多个受控芯片302中除第一受控芯片之外的其他所有受控芯片处于中断状态时,主控芯片301通过串行通信总线发送地址配置指令。此时由于第一受控芯片的状态为对串行通信总线发送的指令进行响应,其他受控芯片的状态为不对串行通信总线发送的指令进行响应,则仅有第一受控芯片对发送的地址配置指令进行响应,并根据地址配置指令对自身的总线地址进行配置,配置后的第一受控芯片的总线地址具有唯一性,也就是说,第一受控芯片的地址在配置后与连接于串行通信总线上的除第一受控芯片外的多个受控芯片均具有不同的总线地址。
图2所示的串行通信总线地址配置系统300中包括3个受控芯片302,需要说明的是,上述场景仅为示例,本方法的使用场景并不限于此,串行通信总线至多可以搭载126个芯片,因此本方法的使用场景可以在串行通信总线搭载2—126个芯片,例如,在一个具体的场景中,如图3所示,串行通信总线地址配置系统300中可以包括2个受控芯片302,主控芯片301可以通过串行通信总线中的时钟线和数据线,以及主控芯片301的通用输入输出端口301(GPIO)与每个受控芯片302的第一引脚3021(INT脚)之间用于连接的信号传输线与受控芯片302进行通信。主控芯片301中包括多个GPIO,每个GPIO连接不同的受控芯片302,主控芯片301通过GPIO与每个受控芯片INT脚之间用于连接的信号传输线向串行通信总线中除第一受控芯片外的其他受控芯片发送第一控制信号,其他受控芯片通过INT端口接收第一控制信号,并对第一控制信号进行响应。之后主控芯片301通过GPIO与每个受控芯片301的INT脚通信的信号传输线向第一受控芯片发送地址配置指令,第一受控芯片通过INT脚接收地址配置指令,并对地址配置指令进行响应。
在本申请实施例中,主控芯片301只需通过第一控制信号,即能将连接于串行通信总线的多个受控芯片302中除了一个第一受控芯片外的其他受控芯片均调整为不响应串行通信总线发送的指令的状态,同时将第一受控芯片调整为响应串行通信总线发送的指令的状态,此时主控芯片301通过串行通信总线发送地址配置指令,只有第一受控芯片会响应,降低了修改芯片地址的难度,同时由于更改了第一受控芯片的总线地址,能够解决第一受控芯片的地址冲突问题。
需要说明的是,上述串行通信总线地址配置系统300内的主控芯片301和多个受控芯片302之间的信息交互、执行过程等内容,由于与前述串行通信总线地址配置方法实施例基于同一构思,具体内容可参见前述串行通信总线地址配置方法实施例中的叙述,此处不再赘述。
电子设备
本实施例中,提供一种电子设备400,包括上述实施例的串行通信总线地址配置系统300。
本申请实施例的电子设备,通过第一控制指令和第二控制指令,将地址冲突的多个受控设备中除了一个第一受控芯片外的第二受控芯片均调整为不响应串行通信总线发送的指令的状态,同时将第一受控芯片调整为响应串行通信总线发送的指令的状态,此时通过串行通信总线发送地址配置指令,只有第一受控芯片会响应,同时更改了自身的总线地址,将剩余的第二受控芯片作为新的多个受控芯片,并重复执行上述方法对应的操作,即可对所有受控芯片的地址进行配置,进而解决了串行通信总线中的地址冲突的问题。
计算机存储介质
本实施例中,提供了一种计算机可读存储介质,存储用于使一机器执行如本文的串行通信总线地址配置方法的指令。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本申请的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
应理解,本申请实施例中的具体的例子只是为了帮助本领域技术人员更好地理解本申请实施例,而非限制本申请实施例的范围,本领域技术人员可以在上述实施例的基础上进行各种改进和变形,而这些改进或者变形均落在本申请的保护范围内。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (9)
1.一种串行通信总线地址配置方法,应用于包括主控芯片的电子设备,其特征在于,所述方法包括:
S100:当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态;
S200:设置所述主控芯片的通用输入输出端口为输出模式,接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态;
S300:通过串行通信总线发送地址配置指令,来配置所述第一受控芯片的总线地址,以使得所述第一受控芯片的总线地址与所述多个受控芯片中除所述第一受控芯片之外的其他受控芯片的总线地址均不同。
2.根据权利要求1所述的方法,其特征在于,所述当主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态,包括:
若所述多个受控芯片中存在处于所述中断状态的受控芯片,通过所述串行通信总线向所述多个受控芯片发送读清指令,以将所述多个受控芯片的中断寄存器清空。
3.根据权利要求1所述的方法,其特征在于,所述接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态,包括:
接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中每个受控芯片的第一引脚设置为低电平状态;
当所述多个受控芯片中每个受控芯片的第一引脚均设置为低电平状态时,所述第一受控芯片接收所述主控芯片的通用输入输出端口输出的第二控制信号,将所述第一受控芯片的第一引脚设置为高电平状态。
4.根据权利要求1所述的方法,其特征在于,所述第一引脚复用所述多个受控芯片的漏极开路引脚。
5.根据权利要求4所述的方法,其特征在于,所述漏极开路引脚包括用于中断信号的引脚、用于充电状态指示的引脚、外部中断请求的引脚或电源状态指示引脚。
6.根据权利要求1至5中任一项权利要求所述的方法,其特征在于,所述方法包括:
S400:重复S200-S300,直到所有受控芯片的总线地址均完成配置,所述多个受控芯片的总线地址均不相同。
7.一种串行通信总线地址配置系统,其特征在于,包括:
主控芯片,包括多个通用输入输出端口;
多个受控芯片,每个所述受控芯片包括第一引脚,所述多个受控芯片的第一引脚分别与所述多个通用输入输出端口连接,所述多个受控芯片共用串行通信总线,所述多个受控芯片还通过所述串行通信总线与所述主控芯片相连接;
其中,当所述主控芯片的通用输入输出端口设置为输入模式时,确保多个受控芯片均不处于中断状态,之后,所述主控芯片用于将所述通用输入输出端口设置为输出模式,所述多个受控芯片用于接收所述主控芯片的通用输入输出端口输出的第一控制信号,将所述多个受控芯片中除第一受控芯片之外的每个受控芯片的第一引脚设置为低电平状态;所述主控芯片还用于通过所述串行通信总线发送地址配置指令,来配置所述第一受控芯片的总线地址,以使得所述第一受控芯片的总线地址与所述多个受控芯片中除所述第一受控芯片之外的其他受控芯片的总线地址均不同。
8.一种电子设备,其特征在于,包括:如权利要求7所述的串行通信总线地址配置系统。
9.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311633276.9A CN117555838A (zh) | 2023-11-30 | 2023-11-30 | 串行通信总线地址配置方法、系统、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311633276.9A CN117555838A (zh) | 2023-11-30 | 2023-11-30 | 串行通信总线地址配置方法、系统、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117555838A true CN117555838A (zh) | 2024-02-13 |
Family
ID=89810819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311633276.9A Pending CN117555838A (zh) | 2023-11-30 | 2023-11-30 | 串行通信总线地址配置方法、系统、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117555838A (zh) |
-
2023
- 2023-11-30 CN CN202311633276.9A patent/CN117555838A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5175536A (en) | Apparatus and method for adapting cards designed for a VME bus for use in a VXI bus system | |
EP2899556B1 (en) | Semiconductor device and battery voltage monitoring device | |
US8040215B2 (en) | Address selection for an I2C bus | |
EP2778941B1 (en) | Address translation in i2c data communications system | |
US5758099A (en) | Plug and play protocol for bus adapter card | |
CN102339267A (zh) | I2c地址转换 | |
US9673824B2 (en) | Techniques and circuitry for configuring and calibrating an integrated circuit | |
US7461187B2 (en) | Bus system and data transfer method | |
US20140149617A1 (en) | I2c bus structure and device availability query method | |
CN113396565A (zh) | 一种控制方法及装置 | |
EP3037977A1 (en) | Optical module availability detection method and apparatus | |
US11308021B2 (en) | Methods and apparatus for using an addressable serial peripheral interface | |
US20210064557A1 (en) | Programmable slave circuit on a communication bus | |
CN108694140B (zh) | 用于寻址i2c总线上的非易失性存储器的方法和对应的存储器设备 | |
KR20210075878A (ko) | I2c와의 하위 호환성을 촉진하는 i3c 허브 | |
US20140149616A1 (en) | I2c bus structure and address management method | |
CN117555838A (zh) | 串行通信总线地址配置方法、系统、电子设备和存储介质 | |
CN115328845B (zh) | 一种四线串行外设接口通信协议设计的方法 | |
CN111913904B (zh) | 向利用主从通信协议的多个从属装置自动分配互不相同地址的方法及用于其的装置 | |
US8041868B2 (en) | Bus relay device and bus control system including bus masters, interconnect section, and bridge section | |
CN115840592A (zh) | Flash访问方法、控制器、系统及可读存储介质 | |
JP4806747B2 (ja) | シリアライザ/デシリアライザ・バスコントローラ・インターフェース | |
CN111579973B (zh) | 芯片同步测试方法、芯片、电子设备及存储介质 | |
CN112817893A (zh) | 具备扩充外部装置功能的桥接芯片以及扩充方法 | |
KR20210076533A (ko) | 시스템-온-칩 자동 설계 장치 및 이의 동작 방법 |
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 |