CN116166594A - 一种单地址多从机的iic总线电路及其传输方法和装置 - Google Patents
一种单地址多从机的iic总线电路及其传输方法和装置 Download PDFInfo
- Publication number
- CN116166594A CN116166594A CN202310459281.6A CN202310459281A CN116166594A CN 116166594 A CN116166594 A CN 116166594A CN 202310459281 A CN202310459281 A CN 202310459281A CN 116166594 A CN116166594 A CN 116166594A
- Authority
- CN
- China
- Prior art keywords
- slave
- data
- computer
- host
- reading
- 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.)
- Granted
Links
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/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- 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/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- 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
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Information Transfer Systems (AREA)
Abstract
本申请提供了一种单地址多从机的IIC总线电路及其传输方法和装置。所述IIC总线电路,包括:主机、时钟线、第一从机和第一数据线;所述第一从机设有至少两台,各台所述第一从机的地址相同;所述第一数据线与所述第一从机一一对应;所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接;当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开。本申请有效降低了所述IIC总线电路的硬件成本,并且缩短了所述IIC总线电路的数据传输时间。
Description
技术领域
本申请涉及数据传输技术领域,特别是一种单地址多从机的IIC总线电路及其传输方法和装置。
背景技术
IIC(Inter-Integrated Circuit,内部集成电路)总线是一种常用的主-从型串行通信总线,接口简单,实现容易,被广泛应用于各类电子产品的硬件设计中。IIC总线可以支持主机设备与多个从机设备进行通信,例如,单个微控制器通过IIC总线可以直接访问实时时钟(Real Time Clock)、温度传感器(Temperature Sensors)和EEPROM存储器(SerialEEPROMs)等设备。
发明内容
鉴于所述问题,提出了本申请以便提供克服所述问题或者至少部分地解决所述问题的一种单地址多从机的IIC总线电路及其传输方法和装置,包括:
一种单地址多从机的IIC总线电路,包括:主机、时钟线、第一从机和第一数据线;所述第一从机设有至少两台,各台所述第一从机的地址相同;所述第一数据线与所述第一从机一一对应;所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接;
当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开。
优选的,还包括:第二从机和第二数据线;所述第二从机设有至少一台,各台所述第二从机的地址不同;所述第二从机分别通过所述时钟线和所述第二数据线与所述主机连接。
优选的,所述主机设有时钟管脚和第一数据管脚;所述第一数据管脚与所述第一数据线一一对应;所述时钟线与所述时钟管脚连接;所述第一数据线与对应的所述第一数据管脚连接。
优选的,所述主机设有第二数据管脚;所述第二数据线与所述第二数据管脚连接。
一种根据上述任一项所述的IIC总线电路的数据传输方法,所述数据传输方法涉及所述主机和至少一台所述第一从机;所述数据传输方法应用于所述主机,包括:向所述第一从机写入数据写和从所述第一从机读取数据;
所述向所述第一从机写入数据的步骤,包括:
所述主机分别发送写入起始信号给所述第一从机;
所述主机分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;
所述主机分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;
所述从所述第一从机读取数据的步骤,包括:
所述主机分别发送读取起始信号给所述第一从机;
所述主机分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;
当从任一所述第一从机接收到一段预设长度的读取数据时,所述主机发送读取数据应答信号给对应的所述第一从机。
优选的,所述向所述第一从机写入数据的步骤,还包括:
当向任一所述第一从机发送出全部写入数据时,所述主机发送写入停止信号给对应的所述第一从机;
优选的,所述从所述第一从机读取数据的步骤,还包括:
当从任一所述第一从机接收到全部读取数据时,所述主机发送读取停止信号给对应的所述第一从机。
一种根据上述任一项所述的IIC总线电路的数据传输装置,所述数据传输装置涉及所述主机和至少一台所述第一从机;所述数据传输装置应用于所述主机,包括:数据写入装置和数据读取装置;
所述数据写入装置,包括:
写入起始发送模块,用于分别发送写入起始信号给所述第一从机;
写入操作发送模块,用于分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;
写入数据发送模块,用于分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;
所述数据读取装置,包括:
读取起始发送模块,用于分别发送读取起始信号给所述第一从机;
读取操作发送模块,用于分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;
读取应答发送模块,用于每当从任一所述第一从机接收到一段预设长度的读取数据时,发送读取数据应答信号给对应的所述第一从机。
一种计算机设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述任一项所述的数据传输方法。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的数据传输方法。
本申请具有以下优点:
在本申请的实施例中,相对于现有的IIC总线电路硬件成本较高,并且数据传输时间较长的问题,本申请提供了复用时钟线而保持数据线相互独立的解决方案,具体为:“一种单地址多从机的IIC总线电路,包括:主机、时钟线、第一从机和第一数据线;所述第一从机设有至少两台,各台所述第一从机的地址相同;所述第一数据线与所述第一从机一一对应;所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接;当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开”。通过设置一条所述时钟线和与所述第一从机一一对应的所述第一数据线,使得所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接,当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开,对于台地址相同的所述第一从机,所述主机仅需使用个管脚即可访问所有所述第一从机,有效降低了所述IIC总线电路的硬件成本;并且,由于所述第一从机的所述第一数据线彼此独立,所述主机可以与各台所述第一从机同时传输数据,假设向每台所述第一从机写入数据所需的时间为/>,则向/>台所述第一从机写入数据所需的时间为向写入数据量最大的所述第一从机写入数据所需的时间,即为/>,假设从每台所述第一从机读取数据所需的时间为,则从/>台所述第一从机读取数据所需的时间为从读取数据量最大的所述第一从机读取数据所需的时间,即为/>,有效缩短了所述IIC总线电路的数据传输时间。
附图说明
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种IIC总线电路的结构示意图;
图2是本申请另一实施例提供的一种IIC总线电路的结构示意图;
图3是本申请又一实施例提供的一种IIC总线电路的结构示意图;
图4是本申请一实施例提供的一种数据写入方法的步骤流程图;
图5是本申请一实施例提供的一种数据读取方法的步骤流程图;
图6是本申请一实施例提供的一种数据写入装置的结构示意图;
图7是本申请一实施例提供的一种数据读取装置的结构示意图;
图8是本申请一实施例提供的一种计算机设备的结构示意图。
说明书附图中的附图标记如下:
12、计算机设备;14、外部设备;16、处理单元;18、总线;20、网络适配器;22、I/O接口;24、显示器;28、内存;30、随机存取存储器;32、高速缓存存储器;34、存储系统;40、程序/实用工具;42、程序模块。
具体实施方式
为使本申请的所述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请做进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
发明人通过分析现有技术发现,通过设计多个从机接口与对应的单地址从机设备连接,也即将总线型连接变成星型连接,失去了总线型硬件连接的优势,导致电路的硬件成本较高;此外,在使用上述电路与多台从机设备传输数据时,只能按顺序与各台从机设备进行数据传输,假设向每台从机写入数据所需的时间为,则向/>台从机写入数据所需的时间为/>,假设从每台从机读取数据所需的时间为,则从/>台从机读取数据所需的时间为/>,造成数据传输时间较长,无法适用于对数据实时性要求较高的场合。
参照图1,示出了本申请一实施例提供的一种单地址多从机的IIC总线电路,包括:主机、时钟线、第一从机和第一数据线;所述第一从机设有至少两台,各台所述第一从机的地址相同;所述第一数据线与所述第一从机一一对应;所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接;具体的,所述主机设有时钟管脚和第一数据管脚;所述第一数据管脚与所述第一数据线一一对应;所述时钟线与所述时钟管脚连接;所述第一数据线与对应的所述第一数据管脚连接;
当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开;具体的,当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别将所述时钟管脚和对应于所述第一从机的所述第一数据管脚配置为输入,并且将其余的所述第一数据管脚配置为高阻。
在本申请的实施例中,相对于现有的IIC总线电路硬件成本较高,并且数据传输时间较长的问题,本申请提供了复用时钟线而保持数据线相互独立的解决方案,具体为:“一种单地址多从机的IIC总线电路,包括:主机、时钟线、第一从机和第一数据线;所述第一从机设有至少两台,各台所述第一从机的地址相同;所述第一数据线与所述第一从机一一对应;所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接;当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开”。通过设置一条所述时钟线和与所述第一从机一一对应的所述第一数据线,使得所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接,当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开,对于台地址相同的所述第一从机,所述主机仅需使用个管脚即可访问所有所述第一从机,有效降低了所述IIC总线电路的硬件成本;并且,由于所述第一从机的所述第一数据线彼此独立,所述主机可以与各台所述第一从机同时传输数据,假设向每台所述第一从机写入数据所需的时间为/>,则向/>台所述第一从机写入数据所需的时间为向写入数据量最大的所述第一从机写入数据所需的时间,即为/>,假设从每台所述第一从机读取数据所需的时间为,则从/>台所述第一从机读取数据所需的时间为从读取数据量最大的所述第一从机读取数据所需的时间,即为/>,有效缩短了所述IIC总线电路的数据传输时间。
下面,将对本示例性实施例中一种单地址多从机的IIC总线电路做进一步地说明。
参照图2,在本申请一实施例中,所述IIC总线电路还包括:第二从机和第二数据线;所述第二从机设有至少一台,各台所述第二从机的地址不同;所述第二从机分别通过所述时钟线和所述第二数据线与所述主机连接。具体的,所述主机设有第二数据管脚;所述第二数据线与所述第二数据管脚连接;
若应用场景中既包含地址相同的所述第一从机,又包含地址不同的所述第二从机,并且所述第二从机均为低速设备(即传输速率为0-1KB/s的设备,例如键盘、鼠标、语音输入/输出等)或中速设备(即传输速率为1-100KB/s的设备,例如行式打印机、激光打印机等),则可以采用串并混合型的硬件连接方式,也即设置一条所述时钟线、多条所述第一数据线和一条所述第二数据线,使得所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接,所述第二从机分别通过所述时钟线和所述第二数据线与所述主机连接,由此可以在满足数据传输速率要求的同时节省所述主机使用的管脚数量,降低所述IIC总线电路的硬件成本。
参照图3,在本申请另一实施例中,所述IIC总线电路还包括:第三从机和第三数据线;所述第三从机设有至少一台,各台所述第三从机的地址不同;所述第三数据线与所述第三从机一一对应;所述第三从机分别通过所述时钟线和对应的所述第三数据线与所述主机连接;具体的,所述主机设有第三数据管脚;所述第三数据管脚与所述第三数据线一一对应;所述第三数据线与对应的所述第三数据管脚连接;
当所述主机与至少一台所述第三从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第三从机的所述第三数据线连通,并且与其余的所述第三数据线断开;具体的,当所述主机与至少一台所述第三从机进行数据传输时,所述主机分别将所述时钟管脚和对应于所述第三从机的所述第三数据管脚配置为输入,并且将其余的所述第三数据管脚配置为高阻。
若应用场景中既包含地址相同的所述第一从机,又包含地址不同的所述第三从机,并且所述第三从机均为高速设备(即传输速率为100KB/s-100MB/s的设备,例如磁带机、磁盘机、光盘机等),则仍采用并联的硬件连接方式,也即设置一条所述时钟线、多条所述第一数据线和多条所述第三数据线,使得所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接,所述第三从机分别通过所述时钟线和对应的所述第三数据线与所述主机连接,由此可以满足数据传输的速率要求。
参照图4,在本申请一实施例中,还提供一种根据上述任一实施例所述的IIC总线电路的数据写入方法,所述数据写入方法涉及所述主机和至少一台所述第一从机;所述数据写入方法应用于所述主机,包括:
S110、所述主机分别发送写入起始信号给所述第一从机;
S120、所述主机分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;
S130、所述主机分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;
S140、当向任一所述第一从机发送出全部写入数据时,所述主机发送写入停止信号给对应的所述第一从机。
参照图5,在本申请一实施例中,还提供一种根据上述任一实施例所述的IIC总线电路的数据读取方法,所述数据读取方法涉及所述主机和至少一台所述第一从机;所述数据读取方法应用于所述主机,包括:
S210、所述主机分别发送读取起始信号给所述第一从机;
S220、所述主机分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;
S230、当从任一所述第一从机接收到一段预设长度的读取数据时,所述主机发送读取数据应答信号给对应的所述第一从机;
S240、当从任一所述第一从机接收到全部读取数据时,所述主机发送读取停止信号给对应的所述第一从机。
需要说明的是,软件设计时,依然严格遵循IIC总线的协议标准,也即起始位/重复起始位(S)、读写标志位(R/W)、数据响应位(ACK/NAK)、结束位(P)等,而与不同所述第一从机交互的地址、数据使用独立的数据缓存,基于独立的硬件数据线进行读写操作。
参照图6,在本申请一实施例中,还提供一种根据上述任一实施例所述的IIC总线电路的数据写入装置,所述数据写入装置涉及所述主机和至少一台所述第一从机;所述数据写入装置应用于所述主机,包括:
写入起始发送模块310,用于分别发送写入起始信号给所述第一从机;
写入操作发送模块320,用于分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;
写入数据发送模块330,用于分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;
写入停止发送模块340、用于当向任一所述第一从机发送出全部写入数据时,发送写入停止信号给对应的所述第一从机。
参照图7,在本申请一实施例中,还提供一种根据上述任一实施例所述的IIC总线电路的数据读取装置,所述数据读取装置涉及所述主机和至少一台所述第一从机;所述数据读取装置应用于所述主机,包括:
读取起始发送模块410,用于分别发送读取起始信号给所述第一从机;
读取操作发送模块420,用于分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;
读取应答发送模块430,用于每当从任一所述第一从机接收到一段预设长度的读取数据时,发送读取数据应答信号给对应的所述第一从机;
读取停止发送模块440、用于当从任一所述第一从机接收到全部读取数据时,发送读取停止信号给对应的所述第一从机。
参照图8,示出了本申请的一种计算机设备,所述计算机设备12以通用计算设备的形式表现;所述计算机设备12包括:一个或者多个处理器或者处理单元16、内存28和连接不同系统组件(包括内存28和处理单元16)的总线18。
总线18可以是几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、音视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
内存28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器30和/或高速缓存存储器32。计算机设备12可以进一步包括其他移动/不可移动的、易失性/非易失性计算机体统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其他光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质界面与总线18相连。存储器可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块42,这些程序模块42被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器中,这样的程序模块42包括操作系统、一个或者多个应用程序、其他程序模块42以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24、摄像头等)通信,还可与一个或者多个使得操作人员能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过I/O接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN)),广域网(WAN)和/或公共网络(例如因特网)通信。如图8所示,网络适配器20通过总线18与计算机设备12的其他模块通信。应当明白,尽管图8中未示出,可以结合计算机设备12使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元16、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统34等。
处理单元16通过运行存储在内存28中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例提供的数据写入方法和/或数据读取方法。
也即,上述处理单元16执行上述程序时可以实现:所述主机分别发送写入起始信号给所述第一从机;所述主机分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;所述主机分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;当向任一所述第一从机发送出全部写入数据时,所述主机发送写入停止信号给对应的所述第一从机;和/或,所述主机分别发送读取起始信号给所述第一从机;所述主机分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;当从任一所述第一从机接收到一段预设长度的读取数据时,所述主机发送读取数据应答信号给对应的所述第一从机;当从任一所述第一从机接收到全部读取数据时,所述主机发送读取停止信号给对应的所述第一从机。
在本申请一实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的数据写入方法和/或数据读取方法。
也即,该程序被处理器执行时可以实现:所述主机分别发送写入起始信号给所述第一从机;所述主机分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;所述主机分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;当向任一所述第一从机发送出全部写入数据时,所述主机发送写入停止信号给对应的所述第一从机;和/或,所述主机分别发送读取起始信号给所述第一从机;所述主机分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;当从任一所述第一从机接收到一段预设长度的读取数据时,所述主机发送读取数据应答信号给对应的所述第一从机;当从任一所述第一从机接收到全部读取数据时,所述主机发送读取停止信号给对应的所述第一从机。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质可以是电、磁、光、电磁、红外线或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言,例如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,例如“C”语言或类似的程序设计语言。程序代码可以完全地在操作人员计算机上执行、部分地在操作人员计算机上执行、作为一个独立的软件包执行、部分在操作人员计算机上部分在远程计算机上执行或者完全在远程计算机或者服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到操作人员计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种单地址多从机的IIC总线电路及其传输方法和装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种单地址多从机的IIC总线电路,其特征在于,包括:主机、时钟线、第一从机和第一数据线;所述第一从机设有至少两台,各台所述第一从机的地址相同;所述第一数据线与所述第一从机一一对应;所述第一从机分别通过所述时钟线和对应的所述第一数据线与所述主机连接;
当所述主机与至少一台所述第一从机进行数据传输时,所述主机分别与所述时钟线和对应于所述第一从机的所述第一数据线连通,并且与其余的所述第一数据线断开。
2.根据权利要求1所述的IIC总线电路,其特征在于,还包括:第二从机和第二数据线;所述第二从机设有至少一台,各台所述第二从机的地址不同;所述第二从机分别通过所述时钟线和所述第二数据线与所述主机连接。
3.根据权利要求1所述的IIC总线电路,其特征在于,所述主机设有时钟管脚和第一数据管脚;所述第一数据管脚与所述第一数据线一一对应;所述时钟线与所述时钟管脚连接;所述第一数据线与对应的所述第一数据管脚连接。
4.根据权利要求2所述的IIC总线电路,其特征在于,所述主机设有第二数据管脚;所述第二数据线与所述第二数据管脚连接。
5.一种根据权利要求1-4任一项所述的IIC总线电路的数据传输方法,其特征在于,所述数据传输方法涉及所述主机和至少一台所述第一从机;所述数据传输方法应用于所述主机,包括:向所述第一从机写入数据写和从所述第一从机读取数据;
所述向所述第一从机写入数据的步骤,包括:
所述主机分别发送写入起始信号给所述第一从机;
所述主机分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;
所述主机分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;
所述从所述第一从机读取数据的步骤,包括:
所述主机分别发送读取起始信号给所述第一从机;
所述主机分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;
当从任一所述第一从机接收到一段预设长度的读取数据时,所述主机发送读取数据应答信号给对应的所述第一从机。
6.根据权利要求5所述的数据传输方法,其特征在于,所述向所述第一从机写入数据的步骤,还包括:
当向任一所述第一从机发送出全部写入数据时,所述主机发送写入停止信号给对应的所述第一从机。
7.根据权利要求5所述的数据传输方法,其特征在于,所述从所述第一从机读取数据的步骤,还包括:
当从任一所述第一从机接收到全部读取数据时,所述主机发送读取停止信号给对应的所述第一从机。
8.一种根据权利要求1-4任一项所述的IIC总线电路的数据传输装置,其特征在于,所述数据传输装置涉及所述主机和至少一台所述第一从机;所述数据传输装置应用于所述主机,包括:数据写入装置和数据读取装置;
所述数据写入装置,包括:
写入起始发送模块,用于分别发送写入起始信号给所述第一从机;
写入操作发送模块,用于分别发送写入设备地址和写入操作给所述第一从机;所述第一从机用于分别发送写入操作应答信号给所述主机;
写入数据发送模块,用于分别发送写入数据给所述第一从机;所述第一从机还用于当从所述主机接收到一段预设长度的写入数据时,发送写入数据应答信号给所述主机;
所述数据读取装置,包括:
读取起始发送模块,用于分别发送读取起始信号给所述第一从机;
读取操作发送模块,用于分别发送读取设备地址和读取操作给所述第一从机;所述第一从机用于分别发送读取操作应答信号给所述主机;所述第一从机还用于分别发送读取数据给所述主机;
读取应答发送模块,用于每当从任一所述第一从机接收到一段预设长度的读取数据时,发送读取数据应答信号给对应的所述第一从机。
9.一种计算机设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求5-7任一项所述的数据传输方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求5-7任一项所述的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310459281.6A CN116166594B (zh) | 2023-04-26 | 2023-04-26 | 一种单地址多从机的iic总线电路及其传输方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310459281.6A CN116166594B (zh) | 2023-04-26 | 2023-04-26 | 一种单地址多从机的iic总线电路及其传输方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116166594A true CN116166594A (zh) | 2023-05-26 |
CN116166594B CN116166594B (zh) | 2023-07-18 |
Family
ID=86411779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310459281.6A Active CN116166594B (zh) | 2023-04-26 | 2023-04-26 | 一种单地址多从机的iic总线电路及其传输方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116166594B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101609440A (zh) * | 2008-06-20 | 2009-12-23 | 华为技术有限公司 | 总线系统和总线从锁定状态中恢复的方法 |
CN102023953A (zh) * | 2009-09-17 | 2011-04-20 | 研祥智能科技股份有限公司 | 具有多路i2c总线的系统的控制方法 |
FR2963449A1 (fr) * | 2010-07-27 | 2012-02-03 | St Microelectronics Rousset | Conversion d'un bus bifilaire en bus unifilaire |
CN103530261A (zh) * | 2013-10-30 | 2014-01-22 | 广东威创视讯科技股份有限公司 | 一种访问多个具有相同i2c地址从机的电路和管理方法 |
CN105279130A (zh) * | 2015-10-22 | 2016-01-27 | 北方工业大学 | 一种对同地址的多个i2c器件进行操作的方法 |
US20170083467A1 (en) * | 2015-09-21 | 2017-03-23 | Qualcomm Incorporated | Enhanced serial peripheral interface |
CN106681953A (zh) * | 2016-12-09 | 2017-05-17 | 杰发科技(合肥)有限公司 | 使用i2c总线与主机连接的从机及其通信方法 |
CN108255760A (zh) * | 2017-12-25 | 2018-07-06 | 北京摩高科技有限公司 | 一种多路i2c系统、及数据读写方法 |
CN109684244A (zh) * | 2018-11-14 | 2019-04-26 | 珠海慧联科技有限公司 | 用于多从机系统的i2c总线主机优化传输方法及装置 |
CN111444128A (zh) * | 2020-03-03 | 2020-07-24 | 福州瑞芯微电子股份有限公司 | 一种支持多设备端数据读写总线及其数据读取、写入方法 |
CN112380157A (zh) * | 2020-11-26 | 2021-02-19 | 北京工业大学 | 一种带fifo缓存和校验功能的iic总线的通信装置 |
CN112416841A (zh) * | 2020-11-10 | 2021-02-26 | 光华临港工程应用技术研发(上海)有限公司 | 基于i2c总线的多机通信的实现方法及多机通信系统 |
CN113961496A (zh) * | 2021-10-22 | 2022-01-21 | 上海商汤阡誓科技有限公司 | 通信电路系统、方法、芯片以及存储介质 |
CN114531422A (zh) * | 2021-12-30 | 2022-05-24 | 如果新能源科技(江苏)股份有限公司 | 一种总线地址自动分配与识别方法、电子设备、存储介质和程序产品 |
CN115543906A (zh) * | 2022-11-23 | 2022-12-30 | 荣耀终端有限公司 | 一种基于i2c总线的数据读写方法和装置 |
CN115695074A (zh) * | 2022-10-20 | 2023-02-03 | 上海艾为电子技术股份有限公司 | 数据传输方法、主机、从机和电子设备 |
-
2023
- 2023-04-26 CN CN202310459281.6A patent/CN116166594B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101609440A (zh) * | 2008-06-20 | 2009-12-23 | 华为技术有限公司 | 总线系统和总线从锁定状态中恢复的方法 |
CN102023953A (zh) * | 2009-09-17 | 2011-04-20 | 研祥智能科技股份有限公司 | 具有多路i2c总线的系统的控制方法 |
FR2963449A1 (fr) * | 2010-07-27 | 2012-02-03 | St Microelectronics Rousset | Conversion d'un bus bifilaire en bus unifilaire |
CN103530261A (zh) * | 2013-10-30 | 2014-01-22 | 广东威创视讯科技股份有限公司 | 一种访问多个具有相同i2c地址从机的电路和管理方法 |
US20170083467A1 (en) * | 2015-09-21 | 2017-03-23 | Qualcomm Incorporated | Enhanced serial peripheral interface |
CN105279130A (zh) * | 2015-10-22 | 2016-01-27 | 北方工业大学 | 一种对同地址的多个i2c器件进行操作的方法 |
CN106681953A (zh) * | 2016-12-09 | 2017-05-17 | 杰发科技(合肥)有限公司 | 使用i2c总线与主机连接的从机及其通信方法 |
CN108255760A (zh) * | 2017-12-25 | 2018-07-06 | 北京摩高科技有限公司 | 一种多路i2c系统、及数据读写方法 |
CN109684244A (zh) * | 2018-11-14 | 2019-04-26 | 珠海慧联科技有限公司 | 用于多从机系统的i2c总线主机优化传输方法及装置 |
CN111444128A (zh) * | 2020-03-03 | 2020-07-24 | 福州瑞芯微电子股份有限公司 | 一种支持多设备端数据读写总线及其数据读取、写入方法 |
CN112416841A (zh) * | 2020-11-10 | 2021-02-26 | 光华临港工程应用技术研发(上海)有限公司 | 基于i2c总线的多机通信的实现方法及多机通信系统 |
CN112380157A (zh) * | 2020-11-26 | 2021-02-19 | 北京工业大学 | 一种带fifo缓存和校验功能的iic总线的通信装置 |
CN113961496A (zh) * | 2021-10-22 | 2022-01-21 | 上海商汤阡誓科技有限公司 | 通信电路系统、方法、芯片以及存储介质 |
CN114531422A (zh) * | 2021-12-30 | 2022-05-24 | 如果新能源科技(江苏)股份有限公司 | 一种总线地址自动分配与识别方法、电子设备、存储介质和程序产品 |
CN115695074A (zh) * | 2022-10-20 | 2023-02-03 | 上海艾为电子技术股份有限公司 | 数据传输方法、主机、从机和电子设备 |
CN115543906A (zh) * | 2022-11-23 | 2022-12-30 | 荣耀终端有限公司 | 一种基于i2c总线的数据读写方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116166594B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8898358B2 (en) | Multi-protocol communication on an I2C bus | |
US10394723B2 (en) | Data accessing method and PCIe storage device | |
US10146715B2 (en) | Techniques for inter-component communication based on a state of a chip select pin | |
US7730245B2 (en) | Method and system for setting addresses for slave devices in data communication system | |
KR100943574B1 (ko) | 서브-디바이스 상태 정보를 전달하기 위한 시스템, 방법,및 컴퓨터 프로그램 제품 | |
US20080320249A1 (en) | Fully buffered dimm read data substitution for write acknowledgement | |
CN102073611B (zh) | 一种i2c总线控制系统及方法 | |
US11030133B2 (en) | Aggregated in-band interrupt based on responses from slave devices on a serial data bus line | |
US10474604B2 (en) | Transmitting universal serial bus (USB) data over alternate mode connection | |
CN116303207A (zh) | 一种总线传输方法、装置、设备及存储介质 | |
CN105681222A (zh) | 一种数据接收缓存方法、装置及通信系统 | |
CN110795369A (zh) | 基于gpio管脚实现mido从机功能的方法及终端 | |
CN109992556A (zh) | 一种i2c驱动方法和装置 | |
CN116166594B (zh) | 一种单地址多从机的iic总线电路及其传输方法和装置 | |
US8347013B2 (en) | Interface card with extensible input/output interface | |
CN111427815A (zh) | 一种基于spi接口的核间通讯方法、终端及存储介质 | |
CN111488307A (zh) | 多处理器串行通信方法、装置、电子终端及存储介质 | |
CN113127399B (zh) | 一种通用串列汇流排装置以及存取方法 | |
CN112256603B (zh) | 一种服务器及基于ocp的扩展设备 | |
US11861232B2 (en) | Storage system and data writing method thereof | |
CN116756078B (zh) | pcie数据包的通知方法、装置及存储介质 | |
CN116828083A (zh) | 协议信号的传输方法、装置、设备及存储介质 | |
CN117061621A (zh) | 总线通信信号的处理方法、系统、装置、设备及介质 | |
CN116680207A (zh) | 数据传输的物理地址管理方法、装置、存储介质和设备 | |
CN114490475A (zh) | 一种pci-e转接卡、网卡访问方法、装置、设备及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |