CN108965488A - I2c通信系统及其控制设备、节点设备、地址管理方法 - Google Patents

I2c通信系统及其控制设备、节点设备、地址管理方法 Download PDF

Info

Publication number
CN108965488A
CN108965488A CN201810564408.XA CN201810564408A CN108965488A CN 108965488 A CN108965488 A CN 108965488A CN 201810564408 A CN201810564408 A CN 201810564408A CN 108965488 A CN108965488 A CN 108965488A
Authority
CN
China
Prior art keywords
address
node
frame
bus
communication system
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
Application number
CN201810564408.XA
Other languages
English (en)
Inventor
宋政斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Firewood Creative Education Service Co Ltd
Original Assignee
Shenzhen Firewood Creative Education Service Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Firewood Creative Education Service Co Ltd filed Critical Shenzhen Firewood Creative Education Service Co Ltd
Priority to CN201810564408.XA priority Critical patent/CN108965488A/zh
Publication of CN108965488A publication Critical patent/CN108965488A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5038Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明涉及了一种I2C通信系统及其控制设备、节点设备、地址管理方法,在该I2C通信系统的地址管理方法中,节点设备进行以下步骤:生成地址请求帧,并在主模式下通过I2C总线向控制设备发送地址请求帧;接收控制设备通过I2C总线发送的地址重置帧,其中,控制设备在收到地址请求帧后,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据节点分配地址生成地址重置帧,地址重置帧包括节点默认地址及节点分配地址;将自身的节点默认地址重置为节点分配地址。实施本发明的技术方案,只要保证同时使用的节点设备不超过I2C地址的限制,就可在少儿科创的STEAM教学中,引入多种多样的输入输出模块(节点设备),并应用I2C通信系统。

Description

I2C通信系统及其控制设备、节点设备、地址管理方法
技术领域
本发明涉及串行通信领域,尤其涉及一种I2C通信系统及其控制设备、节点设备、地址管理方法。
背景技术
现有集成电路(IC)之间通讯接口中,I2C(Inter-Integrated Circuit)是一种应用极为广泛的总线方式,I2C总线是PHLIPS公司推出的一种串行总线,I2C总线只有两根双向信号线:一根是SDA数据线,另一根是SCL时钟线。由于只占用两个IO脚,时序简单,使用非常广泛。
在实际应用中,常采用一主多从的架构,I2C总线的地址位只有7个BIT,所以最多支持127个设备。对于相同类型的设备,通常的解决办法是由硬件厂家预留几个IO引脚,通过接不同的上下拉电阻来配置。但是,对于一些特殊的应用场合,比如,在少儿科创的STEAM教育中,需要用到各种可拆卸拼接的节点设备,种类多,例如,温度传感器根据原理的不同有很多种类。而且,可能会同时用到几个同类型的节点设备,例如,把多个LED矩阵模块拼接成一块大屏,或,多个按键模块分别映射不同的功能。虽然在实际的一节课程教学中,使用到的节点设备的数量并不多,但它可选的节点设备会超出I2C地址的最大范围,因此,在少儿科创的STEAM教育中应用I2C通信系统,其节点设备的设计/选择会很受限。
另外,若节点设备有数据需要上报控制设备,它要么等待控制设备的轮询读取,要么采用其它的机制,例如使用其它的IO脚触发控制设备的中断。但是,如果采用轮询的方式,一是数据有延迟,二是对低功耗设计不利,会定时轮询,而且每次轮询都会唤醒所有的节点设备;如果采用其它机制主动通知的方式,则会增加系统的复杂度,而且不具备通用性。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述因可选的节点设备会超出I2C地址的限制而导致I2C通信系统无法正常工作的缺陷,提供一种I2C通信系统及其控制设备、节点设备、地址管理方法。
本发明解决其技术问题所采用的技术方案是:构造一种I2C通信系统的地址管理方法,节点设备进行以下步骤:
步骤S11.在复位时,生成地址请求帧,并在主模式下通过I2C总线向控制设备发送地址请求帧,其中,所述地址请求帧包括节点默认地址;
步骤S12.接收控制设备通过I2C总线发送的地址重置帧,其中,控制设备在收到所述地址请求帧后,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据所述节点分配地址生成地址重置帧,所述地址重置帧包括所述节点默认地址及所述节点分配地址;
步骤S13.将自身的所述节点默认地址重置为所述节点分配地址。
优选地,所述地址请求帧及所述地址重置帧中均还包括MAC地址,
而且,在所述步骤S12和所述步骤S13之间,还包括:
步骤S14.比较自身的MAC地址是否与所述地址重置帧中的MAC地址相一致,若一致,则执行步骤S13。
优选地,在所述步骤S11中,在主模式下通过I2C总线向控制设备发送的地址请求帧,包括:
步骤S111.检测I2C总线是否空闲,若是,则执行步骤S112;若否,则执行步骤S113;
步骤S112.在主模式下通过I2C总线向控制设备发送的地址请求帧;
步骤S113.延时一随机时段,然后执行步骤S111。
优选地,所述步骤S11还包括:
在发送所述地址请求帧时,还检测I2C总线上的电平是否与自身发送的电平相一致;
若电平不一致,则停止发送所述地址请求帧,并延时一随机时段,重新通过I2C总线向控制设备发送所述地址请求帧。
本发明还构造一种I2C通信系统的地址管理方法,控制设备进行以下步骤:
步骤S21.接收节点设备在复位时通过I2C总线发送的地址请求帧,所述地址请求帧包括节点默认地址;
步骤S22.从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据所述节点分配地址生成地址重置帧,所述地址重置帧包括所述节点默认地址及所述节点分配地址;
步骤S23.将所述地址重置帧通过I2C总线发送至所述节点设备,以使所述节点设备将自身的所述节点默认地址重置为所述节点分配地址。
优选地,在所述步骤S23中,将所述地址重置帧通过I2C总线发送至所述节点设备,包括:
步骤S231.检测I2C总线是否空闲,若是,则执行步骤S232;若否,则执行步骤S233;
步骤S232.将所述地址重置帧通过I2C总线发送至所述节点设备;
步骤S233.延时一随机时段,然后执行步骤S231。
优选地,在所述步骤S22中,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,包括:
步骤S221.判断所述地址请求帧中的节点默认地址是否被使用,若是,则执行步骤S222;若否,则执行步骤S223;
步骤S222.从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址;
步骤S223.将所述节点默认地址确定为节点分配地址。
本发明还构造一种I2C通信系统的节点设备,通过I2C总线连接控制设备及其它节点设备,其特征在于,包括第一处理器和第一存储器,所述第一处理器用于执行所述第一存储器中存储的计算机程序时实现如以上所述地址管理方法的步骤。
本发明还构造一种I2C通信系统的控制设备,通过I2C总线连接多个节点设备,其特征在于,包括第二处理器和第二存储器,所述第二处理器用于执行所述第二存储器中存储的计算机程序时实现如以上所述地址管理方法的步骤。
本发明还构造一种I2C通信系统,其特征在于,包括以上所述的控制设备及多个以上所述的节点设备。
实施本发明的技术方案,在I2C通信系统中,每个节点设备在复位时,都会向控制设备发送地址重置请求,控制设备会从地址表中查找出一未被使用的地址,并分配给节点设备,节点设备在收到分配地址后,会将自身的默认地址重置为分配地址。因此,本发明的技术方案具有以下有益效果:
1.在少儿科创的STEAM教育中,即使可选的节点设备的数量超过了I2C地址的最大范围,只要保证同时使用的节点设备不超过I2C地址的最大范围即可,因此可在少儿科创的STEAM教学中,引入多种多样的输入输出模块(节点设备),并应用I2C通信系统;
2.即使同时使用到了相同类型的多个节点设备,由于每个节点设备所分配的节点地址都不同,所以不再需要通过预留IO脚来区分不同的节点设备,降低了系统复杂度;
3.不管是控制设备,还是节点设备,都具有主模式与从模式两种工作模式,当节点设备有数据发送需求时,可直接在主模式下发送数据,无需等待控制设备的轮询读取,也无需使用其它的IO脚触发控制设备的中断,因此,可降低功耗及系统复杂度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图中:
图1是本发明I2C通信系统的地址管理方法实施例一的流程图;
图2是本发明I2C通信系统的地址管理方法实施例二的流程图;
图3是本发明I2C通信系统实施例一的结构图。
具体实施方式
图1是本发明I2C通信系统的地址管理方法实施例一的流程图,首先说明的是,I2C通信系统包括控制设备及多个节点设备,且控制设备与多个节点设备通过I2C总线连接,I2C总线包括SDA数据线及SCL时钟线。而且,I2C通信系统中的任一设备都具备两种模式(角色):主(Master)模式、从(Slave)模式。不管是控制设备,还是节点设备,在其需要发送数据时,它的模式为主模式,其它时间则是从模式。该实施例的地址管理方法应用在节点设备中,且具体包括以下步骤:
步骤S11.在复位时,生成地址请求帧,并在主模式下通过I2C总线向控制设备发送地址请求帧,其中,所述地址请求帧包括节点默认地址;
在该步骤中,首先说明的是,不管是节点设备,还是控制设备,其在出厂时都会按设备类别固化自己的节点地址,即,节点默认地址。任意一个节点设备在加入I2C通信系统后,其在复位(包括上电复位)时可向控制设备请求重置地址。
具体地,地址请求帧的格式如下:
CmdTypeFTR+DeviceClass+MAC+HardI2CAdr+SoftI2Cadr
其中,CmdTypeFTR,表示该帧为FTR(Frame To Reset,重置帧)
DeviceClass,表示节点设备的类别;
MAC,表示节点设备的唯一地址;
HardI2CAdr,表示节点设备的节点默认地址;
SoftI2CAdr,表示由主控制设备分配给节点设备的节点分配地址(在地址请求帧中,节点分配地址为空,可填0xFF)。
另外,还需说的是,节点设备在发送地址请求帧时,是处于主模式下的,所以,它自身无需节点地址即可发包。显然,由于控制设备也不是恒处于主模式下,所以其也需要一个固定的节点地址,以将其作为在从模式下的接收地址。
步骤S12.接收控制设备通过I2C总线发送的地址重置帧,其中,控制设备在收到所述地址请求帧后,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据所述节点分配地址生成地址重置帧,所述地址重置帧包括所述节点默认地址及所述节点分配地址;
在该步骤中,首先说明的是,控制设备中预先存储有一地址表,由于I2C通信的地址位有7bit,除去全0及全1为无效地址外,该地址表中共可存储126个有效地址,每分配出一地址,可将该地址所对应的标志位置1。当控制设备收到地址请求帧后,可从地址表中查找出一未使用的地址,即,从标志位为0的地址中确定一地址,并将其作为节点分配填入FTR中,以生成地址重置帧,然后,将其发送至节点设备。
具体地,地址重置帧的格式如下:
CmdTypeFTR+DeviceClass+MAC+HardI2CAdr+SoftI2Cadr
其中,CmdTypeFTR,表示该帧为FTR(Frame To Reset,重置帧)
DeviceClass,表示节点设备的类别;
MAC,表示节点设备的唯一地址;
HardI2CAdr,表示节点设备的节点默认地址;
SoftI2CAdr,表示由主控制设备分配给节点设备的节点分配地址。
另外,还需说明的是,当控制设备发送地址重置帧时,由于节点设备还未被配置新的节点分配地址,所以此时,节点设备的节点地址依然为及节点默认地址。
步骤S13.将自身的所述节点默认地址切换为所述节点分配地址。
在该步骤中,当节点设备收到控制设备发送的地址重置帧后,提取出其中的节点分配地址,并将自身的节点默认地址切换为节点分配地址,而且,在I2C通信系统的后续通信过程中,该节点设备使用该节点分配地址作为自身的节点地址。
进一步地,在一个可选实施例中,地址请求帧及地址重置帧中均还包括MAC地址,而且,在步骤S12和步骤S13之间,还包括:
步骤S14.比较自身的MAC地址是否与地址重置帧中的MAC地址相一致,若一致,则确定该地址重置帧是发给自己的,然后可执行步骤S13。
在该实施例中,假如有多个相同类型的节点设备同时上电发FTR,因为它们属于同类型的设备,FTR中大多数域都相同,但其唯一的MAC地址必然是不同的。在总线竞争仲裁的机制下,有且只有一个节点设备的FTR能正确发到控制设备。当控制设备收到该FTR并确定好节点分配地址后,在返回FTR时,同类型的多个节点设备因为此时还都是使用节点硬件地址,所以都能收到FTR,此时,节点设备通过比较MAC地址来确定该FTR中的节点分配地址是否是分配给自己的,只有在确定是分配给自己的时,才会重置节点地址。
进一步地,在一个可选实施例中,在步骤S11中,在主模式下通过I2C总线向控制设备发送的地址请求帧,包括:
步骤S111.检测I2C总线是否空闲,若是,则执行步骤S112;若否,则执行步骤S113;
步骤S112.在主模式下通过I2C总线向控制设备发送的地址请求帧;
步骤S113.延时一随机时段,然后执行步骤S111。
在该实施例中,节点设备在主模式下通过I2C总线发送数据时,先要检测I2C总线是否空闲,只有在空闲时才能发送,若不空闲,就需等待一个随机延时(例如20-200ms),然后再检测I2C总线是否空闲,直到检测到I2C总线空闲才发送。
进一步地,在一个可选实施例中,步骤S11还包括:
在发送所述地址请求帧时,还检测I2C总线上的电平是否与自身发送的电平相一致;
若电平不一致,则停止发送所述地址请求帧,并延时一随机时段,重新通过I2C总线向控制设备发送所述地址请求帧。
在该实施例中,首先需说明I2C总线的仲裁机制:若有两个以上的节点设备都处于主模式下,且在同一时刻发送数据,则利用I2C总线的线与能力来做总线仲裁,I2C总线的两个引脚(SDA、SCL)均为漏极开路结构,它能实现信号的线与逻辑,即,电平0比电平1的优先级高,如果一节点设备发送电平0,其他节点设备发送电平1,那么,在I2C引脚上电平的是电平0。基于此,节点设备在向I2C总线上发送数据的同时,还会检测I2C总线上的数据,然后判断检测到的电平是否与自身发送的电平相一致,若一致,则表示自己竞争总线成功,可继续发送;若不一致,则表示自己竞争总线失败,需要停止发送,延时一段时间后再次发送。
图2是本发明I2C通信系统的地址管理方法实施例二的流程图,首先说明的是,I2C通信系统包括控制设备及多个节点设备,且控制设备与多个节点设备通过I2C总线连接,I2C总线包括SDA数据线及SCL时钟线。而且,I2C通信系统中的任一设备都具备两种模式(角色):主(Master)模式、从(Slave)模式。不管是控制设备,还是节点设备,在其需要发送数据时,它的模式为主模式,其它时间则是从模式。该实施例的地址管理方法应用在控制设备中,且具体包括以下步骤:
步骤S21.接收节点设备在复位时通过I2C总线发送的地址请求帧,所述地址请求帧包括节点默认地址;
在该步骤中,首先说明的是,不管是节点设备,还是控制设备,其在出厂时都会按设备类别固化自己的节点地址,即,节点默认地址。任意一个节点设备在加入I2C通信系统后,其在复位(包括上电复位)时可向控制设备请求重置地址。
具体地,地址请求帧的格式如下:
CmdTypeFTR+DeviceClass+MAC+HardI2CAdr+SoftI2Cadr
其中,CmdTypeFTR,表示该帧为FTR(Frame To Reset,重置帧)
DeviceClass,表示节点设备的类别;
MAC,表示节点设备的唯一地址;
HardI2CAdr,表示节点设备的节点默认地址;
SoftI2CAdr,表示由主控制设备分配给节点设备的节点分配地址(在地址请求帧中,节点分配地址为空,可填0xFF)。
另外,还需说的是,节点设备在发送地址请求帧时,是处于主模式下的,所以,它自身无需节点地址即可发包。但是,由于控制设备处于从模式下,所以其需要一个固定的节点地址,以将其作为在从模式下的接收地址。
步骤S22.从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据所述节点分配地址生成地址重置帧,所述地址重置帧包括所述节点默认地址及所述节点分配地址;
首先说明的是,控制设备中预先存储有一地址表,由于I2C通信的地址位有7bit,除去全0及全1为无效地址外,该地址表中共可存储126个有效地址,每分配出一地址,可将该地址所对应的标志位置1。当控制设备收到地址请求帧后,可从地址表中查找出一未使用的地址,即,从标志位为0的地址中确定一地址,并将其作为节点分配填入FTR中,以生成地址重置帧,然后,将其发送至节点设备。
具体地,地址重置帧的格式如下:
CmdTypeFTR+DeviceClass+MAC+HardI2CAdr+SoftI2Cadr
其中,CmdTypeFTR,表示该帧为FTR(Frame To Reset,重置帧)
DeviceClass,表示节点设备的类别;
MAC,表示节点设备的唯一地址;
HardI2CAdr,表示节点设备的节点默认地址;
SoftI2CAdr,表示由主控制设备分配给节点设备的节点分配地址。
步骤S23.将所述地址重置帧通过I2C总线发送至所述节点设备,以使所述节点设备将自身的所述节点默认地址重置为所述节点分配地址。
在该步骤中,当控制设备发送地址重置帧时,由于节点设备还未被配置新的节点分配地址,所以此时,节点设备的节点地址依然为节点默认地址。另外,当节点设备收到控制设备发送的地址重置帧后,提取出其中的节点分配地址,并将自身的节点默认地址切换为节点分配地址,而且,在I2C通信系统的后续通信过程中,该节点设备使用该节点分配地址作为自身的节点地址。
进一步地,在一个可选实施例中,在步骤S23中,将所述地址重置帧通过I2C总线发送至所述节点设备,包括:
步骤S231.检测I2C总线是否空闲,若是,则执行步骤S232;若否,则执行步骤S233;
步骤S232.将所述地址重置帧通过I2C总线发送至所述节点设备;
步骤S233.延时一随机时段,然后执行步骤S231。
在该实施例中,控制设备在主模式下通过I2C总线发送数据时,先要检测I2C总线是否空闲,只有在空闲时才能发送,若不空闲,就需等待一个随机延时(例如20-200ms),然后再检测I2C总线是否空闲,直到检测到I2C总线空闲才发送。
进一步地,在一个可选实施例中,在步骤S22中,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,包括:
步骤S221.判断所述地址请求帧中的节点默认地址是否被使用,若是,则执行步骤S222;若否,则执行步骤S223;
步骤S222.从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址;
步骤S223.将所述节点默认地址确定为节点分配地址。
在该实施例中,控制设备在为节点设备确定节点分配地址时,优先考虑该节点设备的节点默认地址,若通过地址表查找确定该节点设备的节点默认地址未被使用,则将其节点默认地址确定为节点分配地址;若通过地址表查找确定该节点设备的节点默认地址已被使用,则重新从地址表中查找出一未被使用的地址作为节点分配地址。
图3是本发明I2C通信系统实施例一的结构图,该实施例的I2C通信系统包括通过I2C总线连接的控制设备及N个节点设备,N为大于1的自然数。而且,节点设备包括第一处理器和第一存储器,第一处理器用于执行第一存储器中存储的计算机程序时实现上述应用在节点设备中的地址管理方法的步骤。控制设备包括第二处理器和第二存储器,第二处理器用于执行第二存储器中存储的计算机程序时实现上述应用在控制设备中的地址管理方法的步骤。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何纂改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

Claims (10)

1.一种I2C通信系统的地址管理方法,其特征在于,节点设备进行以下步骤:
步骤S11.在复位时,生成地址请求帧,并在主模式下通过I2C总线向控制设备发送地址请求帧,其中,所述地址请求帧包括节点默认地址;
步骤S12.接收控制设备通过I2C总线发送的地址重置帧,其中,控制设备在收到所述地址请求帧后,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据所述节点分配地址生成地址重置帧,所述地址重置帧包括所述节点默认地址及所述节点分配地址;
步骤S13.将自身的所述节点默认地址重置为所述节点分配地址。
2.根据权利要求1所述的I2C通信系统的地址管理方法,其特征在于,所述地址请求帧及所述地址重置帧中均还包括MAC地址,
而且,在所述步骤S12和所述步骤S13之间,还包括:
步骤S14.比较自身的MAC地址是否与所述地址重置帧中的MAC地址相一致,若一致,则执行步骤S13。
3.根据权利要求1所述的I2C通信系统的地址管理方法,其特征在于,在所述步骤S11中,在主模式下通过I2C总线向控制设备发送的地址请求帧,包括:
步骤S111.检测I2C总线是否空闲,若是,则执行步骤S112;若否,则执行步骤S113;
步骤S112.在主模式下通过I2C总线向控制设备发送的地址请求帧;
步骤S113.延时一随机时段,然后执行步骤S111。
4.根据权利要求1所述的I2C通信系统的地址管理方法,其特征在于,所述步骤S11还包括:
在发送所述地址请求帧时,还检测I2C总线上的电平是否与自身发送的电平相一致;
若电平不一致,则停止发送所述地址请求帧,并延时一随机时段,重新通过I2C总线向控制设备发送所述地址请求帧。
5.一种I2C通信系统的地址管理方法,其特征在于,控制设备进行以下步骤:
步骤S21.接收节点设备在复位时通过I2C总线发送的地址请求帧,所述地址请求帧包括节点默认地址;
步骤S22.从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,而且,根据所述节点分配地址生成地址重置帧,所述地址重置帧包括所述节点默认地址及所述节点分配地址;
步骤S23.将所述地址重置帧通过I2C总线发送至所述节点设备,以使所述节点设备将自身的所述节点默认地址重置为所述节点分配地址。
6.根据权利要求5所述的I2C通信系统的地址管理方法,其特征在于,在所述步骤S23中,将所述地址重置帧通过I2C总线发送至所述节点设备,包括:
步骤S231.检测I2C总线是否空闲,若是,则执行步骤S232;若否,则执行步骤S233;
步骤S232.将所述地址重置帧通过I2C总线发送至所述节点设备;
步骤S233.延时一随机时段,然后执行步骤S231。
7.根据权利要求5所述的I2C通信系统的地址管理方法,其特征在于,在所述步骤S22中,从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址,包括:
步骤S221.判断所述地址请求帧中的节点默认地址是否被使用,若是,则执行步骤S222;若否,则执行步骤S223;
步骤S222.从预先存储的地址表中确定一个未使用的地址,并将其作为节点分配地址;
步骤S223.将所述节点默认地址确定为节点分配地址。
8.一种I2C通信系统的节点设备,通过I2C总线连接控制设备及其它节点设备,其特征在于,包括第一处理器和第一存储器,所述第一处理器用于执行所述第一存储器中存储的计算机程序时实现如权利要求1-4任一项所述地址管理方法的步骤。
9.一种I2C通信系统的控制设备,通过I2C总线连接多个节点设备,其特征在于,包括第二处理器和第二存储器,所述第二处理器用于执行所述第二存储器中存储的计算机程序时实现如权利要求5-7任一项所述地址管理方法的步骤。
10.一种I2C通信系统,其特征在于,包括权利要求9所述的控制设备及多个权利要求8所述的节点设备。
CN201810564408.XA 2018-06-04 2018-06-04 I2c通信系统及其控制设备、节点设备、地址管理方法 Pending CN108965488A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810564408.XA CN108965488A (zh) 2018-06-04 2018-06-04 I2c通信系统及其控制设备、节点设备、地址管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810564408.XA CN108965488A (zh) 2018-06-04 2018-06-04 I2c通信系统及其控制设备、节点设备、地址管理方法

Publications (1)

Publication Number Publication Date
CN108965488A true CN108965488A (zh) 2018-12-07

Family

ID=64493254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810564408.XA Pending CN108965488A (zh) 2018-06-04 2018-06-04 I2c通信系统及其控制设备、节点设备、地址管理方法

Country Status (1)

Country Link
CN (1) CN108965488A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115842806A (zh) * 2023-02-23 2023-03-24 深圳市云天数字能源有限公司 总线分配节点地址的方法及相关装置
CN117544598A (zh) * 2024-01-03 2024-02-09 成都电科星拓科技有限公司 一种i2c总线地址自动分配方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745270B1 (en) * 2001-01-31 2004-06-01 International Business Machines Corporation Dynamically allocating I2C addresses using self bus switching device
US20060123168A1 (en) * 2004-12-03 2006-06-08 Yu-Ming Lang System and method for dynamically allocating addresses to devices coupled to an integrated circuit bus
CN101876637A (zh) * 2009-04-29 2010-11-03 北京路捷仪器有限公司 一种模块化的分析仪器体系结构设计方法
CN101894088A (zh) * 2010-07-21 2010-11-24 中兴通讯股份有限公司 一种解决i2c总线上多主机冲突的方法及装置
CN105590548A (zh) * 2014-11-13 2016-05-18 上海闵临机电科技有限公司 一种创意电子万年历
CN106060187A (zh) * 2016-05-26 2016-10-26 杭州华三通信技术有限公司 一种地址分配方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745270B1 (en) * 2001-01-31 2004-06-01 International Business Machines Corporation Dynamically allocating I2C addresses using self bus switching device
US20060123168A1 (en) * 2004-12-03 2006-06-08 Yu-Ming Lang System and method for dynamically allocating addresses to devices coupled to an integrated circuit bus
CN101876637A (zh) * 2009-04-29 2010-11-03 北京路捷仪器有限公司 一种模块化的分析仪器体系结构设计方法
CN101894088A (zh) * 2010-07-21 2010-11-24 中兴通讯股份有限公司 一种解决i2c总线上多主机冲突的方法及装置
CN105590548A (zh) * 2014-11-13 2016-05-18 上海闵临机电科技有限公司 一种创意电子万年历
CN106060187A (zh) * 2016-05-26 2016-10-26 杭州华三通信技术有限公司 一种地址分配方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115842806A (zh) * 2023-02-23 2023-03-24 深圳市云天数字能源有限公司 总线分配节点地址的方法及相关装置
CN115842806B (zh) * 2023-02-23 2023-04-25 深圳市云天数字能源有限公司 总线分配节点地址的方法及相关装置
CN117544598A (zh) * 2024-01-03 2024-02-09 成都电科星拓科技有限公司 一种i2c总线地址自动分配方法
CN117544598B (zh) * 2024-01-03 2024-03-29 成都电科星拓科技有限公司 一种i2c总线地址自动分配方法

Similar Documents

Publication Publication Date Title
US5655083A (en) Programmable rset system and method for computer network
US7069347B1 (en) Device and method for adapting speed of a USB device based on available power
US9645954B2 (en) Embedded microcontroller and buses
EP1253518B1 (en) Memory access arbitration guaranteeing a desired data transfer rate
JPH10116255A (ja) 分散型のコンピュータ・システム
US20150355696A1 (en) Computer port control
JP6538715B2 (ja) ハイブリッド仮想gpio
CN106339058A (zh) 动态管理电力供应的方法和系统
JPH10105486A (ja) 分散型のコンピュータ・システム
JPH10116254A (ja) 分散型のコンピュータ・システム
CN101557379B (zh) 一种pcie接口的链路重组方法和装置
CN104854845B (zh) 使用高效的原子操作的方法和装置
US10699668B1 (en) Configurable video redirection in a data center
CN108965488A (zh) I2c通信系统及其控制设备、节点设备、地址管理方法
CN112753197B (zh) 使用lan唤醒的网络管理
JP4766469B2 (ja) 汎用システムスタッターをインプリメントするための方法及びシステム
US5768543A (en) Slot-token protocol
CN109488631A (zh) 一种风扇控制装置及其方法
CN107479900B (zh) 一种适用于实时操作系统的热插拔软件方案
CN1873586A (zh) 控制计算机系统中的能量消耗的计算机系统和方法
US7464212B2 (en) Method and apparatus for determining compatibility between devices
US6434703B1 (en) Event initiation bus and associated fault protection for a telecommunications device
CN104899164B (zh) 集成电路总线的地址寻址方法、集成电路总线设备和系统
CN102929828B (zh) 同时支持标准和非标准i2c接口的数据传输方法及装置
WO2016186673A1 (en) Video management for compute nodes

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20181207