CN119166576A - 基于菊花链的spi系统 - Google Patents
基于菊花链的spi系统 Download PDFInfo
- Publication number
- CN119166576A CN119166576A CN202411658690.XA CN202411658690A CN119166576A CN 119166576 A CN119166576 A CN 119166576A CN 202411658690 A CN202411658690 A CN 202411658690A CN 119166576 A CN119166576 A CN 119166576A
- Authority
- CN
- China
- Prior art keywords
- slave device
- microcontroller
- pin
- slave
- data
- 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
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/4247—Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
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)
- Bus Control (AREA)
Abstract
本发明提供一种基于菊花链的SPI系统,该系统包括:微控制器;多个从设备,微控制器与从设备构成菊花链结构,从设备按照与微控制器从近到远的顺序排序;排序中的最后一个从设备的DIN数据输入引脚与微控制器的MOSI引脚连接,用于接收微控制器发送的数据信号;排序中每个当前从设备的DOUT数据输出引脚与前一个从设备的DIN数据输入引脚连接,前一个从设备的DIN数据输入引脚用于接收当前从设备的DOUT数据输出引脚输出的数据信号;排序中第一个从设备的DOUT数据输出引脚与微控制器的MISO引脚连接,微控制器用于读取第一个从设备的DOUT数据输出引脚输出的数据信号。本发明实现低功耗SPI数据读写正常。
Description
技术领域
本发明涉及SPI系统技术领域,尤其涉及一种基于菊花链的SPI系统。
背景技术
在一个主机和多个从器件的典型SPI(Serial Peripheral Interface,串行外设接口)系统中,通常采用专门的片选信号来寻址从器件,随着从器件数量不断增加,片选线也随之增多。这种情况将给电路板布板带来很大的挑战,通常使用菊花链结构的布板方法。
SPI菊花链的拓扑结构中所有从设备按照菊花链的位置排列,最靠近微控制器的从设备标记为从设备一,次靠近微控制器的从设备标记为从设备二,距离微控制器最远的从设备标记为从设备N。微控制器的数据输出MOSI引脚连接从设备一的DI引脚,从设备N的DO引脚连接微控制器的MISO引脚。因此从设备N的DO引脚到微控制器的MISO引脚走线很长,当使用低功耗设计的从设备时,由于注重对设备功耗的优化,DO引脚的驱动能力设计的比较弱,在经过长距离的走线后由于等效容性负载的增加,在SPI时钟速率高的情况下容易造成DO引脚数据的建立时间和保持时间无法满足芯片的要求,导致微控制器无法正常读取从设备的数据。
发明内容
本发明提供一种基于菊花链的SPI系统,用以解决现有技术中低功耗设计的从设备DO引脚驱动能力弱,导致长菊花链数据回读异常的缺陷,实现缩短最后一个从设备距离微控制器的物理距离,使微控制器正常读取从设备的数据。
本发明提供一种基于菊花链的SPI系统,包括:
微控制器;
多个从设备,所述微控制器与所述多个从设备构成菊花链结构,所述多个从设备按照与所述微控制器从近到远的顺序排序;
排序中的最后一个从设备的DIN数据输入引脚与所述微控制器的MOSI引脚连接,所述最后一个从设备的DIN数据输入引脚用于接收所述微控制器的MOSI引脚输出的数据信号;
排序中每个当前从设备的DOUT数据输出引脚与前一个从设备的DIN数据输入引脚连接,所述前一个从设备的DIN数据输入引脚用于接收所述当前从设备的DOUT数据输出引脚输出的数据信号;
排序中第一个从设备的DOUT数据输出引脚与所述微控制器的MISO引脚连接,所述微控制器用于读取所述第一个从设备的DOUT数据输出引脚输出的数据信号。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器的CS引脚与各从设备的CS片选输入引脚连接,所述从设备的CS片选输入引脚用于接收所述微控制器输出的片选信号;
在向所述从设备写入所述数据信号的过程中,所述微控制器输出的片选信号为低电平,所述微控制器发送所述数据信号到所述最后一个从设备的DIN数据输入引脚。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器的SCK时钟引脚与各从设备连接,所述从设备用于接收所述微控制器输出的时钟信号;
对于接收数据信号的当前从设备,所述数据信号在所述时钟信号的上升沿进入所述当前从设备的内部移位寄存器,在所述时钟信号的下降沿通过所述当前从设备的DOUT数据输出引脚输出,通过所述前一个从设备的DIN数据输入引脚传送到所述前一个从设备。
根据本发明提供的一种基于菊花链的SPI系统,在所述最后一个从设备的前一个从设备接收所述最后一个从设备发送的数据信号的同时,所述微控制器同时向所述最后一个从设备发送新的数据信号。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器用于根据每个从设备的序号和内部移位寄存器的剩余容量,更新所述从设备的挂载数量。
根据本发明提供的一种基于菊花链的SPI系统,所述从设备的序号越大且内部移位寄存器的剩余容量越小,所述从设备的挂载数量越多。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器用于将每个从设备的序号的倒数作为每个从设备的内部移位寄存器的剩余容量的权重,根据所述权重对所述内部移位寄存器的剩余容量进行加权求和,根据所述剩余容量的加权求和结果更新所述从设备的挂载数量。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器用于通过以下步骤根据所述剩余容量的加权求和结果更新所述从设备的挂载数量:
将每个从设备的序号的倒数作为每个从设备的内部移位寄存器的实际容量的权重,根据所述权重对所述内部移位寄存器的实际容量进行加权求和得到所述实际容量的加权求和结果;
确定所述剩余容量的加权求和结果与所述实际容量的加权求和结果之间的比值;
在所述比值小于第一预设阈值的情况下,增加所述从设备的挂载数量;
在所述比值大于第二预设阈值的情况下,减少所述从设备的挂载数量。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器用于将增加的从设备挂载在所述剩余容量的权重与所述剩余容量的乘积最小的一个或多个从设备之后。
根据本发明提供的一种基于菊花链的SPI系统,所述微控制器用于将所述剩余容量的权重与所述剩余容量的乘积最大的一个或多个从设备取消挂载。
本发明提供的基于菊花链的SPI系统,通过按照新的菊花链走线方案,微控制器的数据会先送至距离微控制器物理位置最远的从设备,菊花链中最后一个从设备的数据输出引脚距离微控制器的物理距离达到最短,相比传统的菊花链中最后一个从设备距离微控制器物理距离大大缩短,减少了PCB走线的负载电容,可以在保证所有从设备满足最高操作时钟频率的情况下,建立时间和保持时间依然满足低功耗从设备的要求,通过创新性的电路布局布线,在使用低功耗设计工艺的从设备导致的驱动能力弱情况下,依然可以保证多个从设备在菊花链互联拓扑结构下的数据读写正常,实现低功耗SPI芯片控制,提高SPI芯片的应用范围。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的基于菊花链的SPI系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本领域内的技术人员应当理解的是,在本发明的申请文件中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合图1描述本发明的一种基于菊花链的SPI系统,包括:
微控制器;
多个从设备,所述微控制器与所述多个从设备构成菊花链结构,所述多个从设备按照与所述微控制器从近到远的顺序排序;
排序中的最后一个从设备的DIN数据输入引脚与所述微控制器的MOSI引脚连接,所述最后一个从设备的DIN数据输入引脚用于接收所述微控制器的MOSI引脚输出的数据信号;
排序中每个当前从设备的DOUT数据输出引脚与前一个从设备的DIN数据输入引脚连接,所述前一个从设备的DIN数据输入引脚用于接收所述当前从设备的DOUT数据输出引脚输出的数据信号;
排序中第一个从设备的DOUT数据输出引脚与所述微控制器的MISO引脚连接,所述微控制器用于读取所述第一个从设备的DOUT数据输出引脚输出的数据信号。
为了保证通用性,微控制器的IO(Input and Output,输入和输出)驱动能力设计比较强,可以容易的通过长距离的PCB(Printed Circuit Board,印刷电路板)走线且不会产生信号完整性问题。
DIN(Data Input)数据输入引脚,该引脚或接口专门用于接收来自其他设备、传感器或内部处理单元的数据。在数据传输过程中,DIN数据输入引脚作为接收端,负责捕获并处理输入的数据信号。
DIN引脚的主要功能是接收数据,在串行通信、并行通信或其他数据传输协议中,DIN引脚负责捕获并识别输入的数据流;DIN引脚还可以是信号转换,例如,将模拟信号转换为数字信号,或将不同电平标准的信号转换为系统可识别的信号;DIN引脚还可以是需要与时钟信号(如CLK引脚)配合,以确保数据的正确接收和同步处理。
MOSI(Master Output, Slave Input)引脚,是SPI通信中用于从主机(Master)向从机(Slave)传输数据的信号线。主机的数据通过这条信号线输出,而从机则通过这条信号线读入主机发送的数据。SPI通信使用SCK(Serial Clock,串行时钟)信号线进行数据同步。MOSI和MISO数据线在SCK的每个时钟周期传输一位数据,且数据输入输出是同时进行的。
在通信开始时,SCK时钟开始运行。MOSI将发送缓冲区中的数据一位一位地传输出去,而MISO则同时将数据一位一位地存储进接收缓冲区中。当发送完一帧数据时,状态寄存器中的相应标志位会被置位,表示传输完成。
DOUT数据输出引脚是Digital Output(数字输出),代表一个引脚或接口,该引脚或接口能够将数字信号从内部电路传输到外部电路。
DOUT引脚的主要功能是输出数据。它可以将内部处理单元(如微控制器、处理器等)处理后的数据以数字信号的形式发送到外部设备。这些数据可能包括计算结果、传感器读数、控制指令等。
在数字电路中,DOUT引脚还负责控制输出信号的电平状态。它可以根据内部逻辑或外部指令,输出高电平或低电平信号,以控制外部设备的状态或执行特定的操作。
在需要同步传输的系统中,DOUT引脚可能还需要与时钟信号(如SCK引脚)配合,以确保数据的正确输出和同步处理。时钟信号为DOUT引脚提供了数据输出的时序基准,使得数据能够按照预定的时间顺序进行传输。
为了解决低功耗设计的从设备DOUT引脚驱动能力弱导致的长菊花链数据回读异常问题,提出一种新的菊花链走线方案。新菊花链走线方案如图1所示。
所有从设备按照菊花链的位置排列,在PCB布局上最靠近微控制器的从设备标记为从设备一,次靠近微控制器的从设备标记为从设备二,距离微控制器最远的从设备标记为从设备N。微控制器的数据输出MOSI引脚连接从设备N的DIN引脚,从设备一的DOUT引脚接微控制器的MISO引脚。
图1中的21代表微控制器,负责控制所有从设备,向所有从设备写入数据和读取数据。213代表微控制器的MISO引脚,负责读取菊花链最后一个从设备的数据信号。214代表微控制器的MOSI引脚,负责给菊花链的第一个从设备输出数据信号。
24代表距离微控制器物理距离最远的从设备,命名为从设备N,负责接收微控制器的时钟、片选和数据信号,并输出内部移位寄存器的数据信号。
23代表距离微控制器物理距离次近的从设备,命名为从设备二,负责接收微控制器的时钟和片选信号,接收从设备N的数据输出信号,并输出内部移位寄存器的数据信号。
22代表距离微控制器物理距离最近的从设备,命名为从设备一,负责接收微控制器的时钟和片选信号,接收从设备二的数据输出信号,并输出内部移位寄存器的数据信号。
243代表从设备N的DIN数据输入引脚,负责接收微控制器输出的数据信号。244代表从设备N的DOUT数据输出引脚,负责输出从设备N内部移位寄存器的数据信号。
233代表从设备二的DIN数据输入引脚,负责接收从设备N输出的数据信号。234代表从设备二的DOUT数据输出引脚,负责输出从设备二内部移位寄存器的数据信号。
223代表从设备一的DIN数据输入引脚,负责接收从设备二输出的数据信号。224代表从设备一的DOUT数据输出引脚,负责输出从设备一的内部移位寄存器的数据信号。
本实施例通过按照新的菊花链走线方案,微控制器的数据会先送至距离微控制器物理位置最远的从设备,菊花链中最后一个从设备的数据输出引脚距离微控制器的物理距离达到最短,相比传统的菊花链中最后一个从设备距离微控制器物理距离大大缩短,减少了PCB走线的负载电容,可以在保证所有从设备满足最高操作时钟频率的情况下,建立时间和保持时间依然满足低功耗从设备的要求,通过创新性的电路布局布线,在使用低功耗设计工艺的从设备导致的驱动能力弱情况下,依然可以保证多个从设备在菊花链互联拓扑结构下的数据读写正常,实现低功耗SPI芯片控制,提高SPI芯片的应用范围。
在上述实施例的基础上,本实施例中所述微控制器的CS引脚与各从设备的CS片选输入引脚连接,所述从设备的CS片选输入引脚用于接收所述微控制器输出的片选信号;
在向所述从设备写入所述数据信号的过程中,所述微控制器输出的片选信号为低电平,所述微控制器发送所述数据信号到所述最后一个从设备的DIN数据输入引脚。
SPI菊花链的拓扑结构采用一个CS信号控制所有从器件的CS 输入。在菊花链中写入数据过程,微控制器保持CS信号低电平,微控制器直接发送数据到从设备N的DIN引脚。
图1中的211代表微控制器的CS引脚,负责控制所有从设备的片选信号引脚。
241代表从设备N的CS片选输入引脚,负责接收微控制器输出的片选信号。
231代表从设备二的CS片选输入引脚,负责接收微控制器输出的片选信号。
221代表从设备一的CS片选输入引脚,负责接收微控制器输出的片选信号。
在上述实施例的基础上,本实施例中所述微控制器的SCK时钟引脚与各从设备连接,所述从设备用于接收所述微控制器输出的时钟信号;
对于接收数据信号的当前从设备,所述数据信号在所述时钟信号的上升沿进入所述当前从设备的内部移位寄存器,在所述时钟信号的下降沿通过所述当前从设备的DOUT数据输出引脚输出,通过所述前一个从设备的DIN数据输入引脚传送到所述前一个从设备。
SPI菊花链的拓扑结构采用一个CLK信号控制所有从器件的CLK输入。数据在时钟上升沿进入从设备N的内部移位寄存器。数据在时钟下降沿通过从设备N的DOUT引脚输出,从设备N的DOUT引脚连接从设备N-1的DNI引脚,在下一个时钟上升沿被移入从设备N-2的内部移位寄存器。
图1中的212代表微控制器的SCK时钟引脚,负责控制所有从设备的时钟引脚。242代表从设备N的SCK时钟输入引脚,负责接收微控制器输出的时钟信号。232代表从设备二的SCK时钟输入引脚,负责接收微控制器输出的时钟信号。222代表从设备一的SCK时钟输入引脚,负责接收微控制器输出的时钟信号。
在上述实施例的基础上,本实施例中在所述最后一个从设备的前一个从设备接收所述最后一个从设备发送的数据信号的同时,所述微控制器同时向所述最后一个从设备发送新的数据信号。
当从设备N-1接收来自从设备N的数据的时候,微控制器可同时向从设备N发送新的数据,新数据进入从设备N的移位寄存器,数据会在整条菊花链上传递,直到每一个从器件都接收了相应的数据。存储在每一个从器件移位寄存器中的数据在CS信号的上升沿执行。
同时菊花链中从设备一的DO引脚接微控制器的MISO引脚,通过往菊花链写入读取的命令,可以将所有从设备的寄存器数据回读。
在上述实施例的基础上,本实施例中所述微控制器用于根据每个从设备的序号和内部移位寄存器的剩余容量,更新所述从设备的挂载数量。
从设备的序号与从设备距离微控制器的远近相关。例如,与微控制器距离最近的从设备的序号为一,与微控制器距离次近的从设备的序号为二,以此类推。根据从设备距离微控制器从近到远的顺序,对从设备依次顺序编号。
在从设备的内部移位寄存器的剩余容量不足的情况下,新数据信号会覆盖先前的数据信号,从而影响数据的完整性,需要增加从设备的挂载数量。
从设备距离微控制器的远近和从设备的内部移位寄存器的剩余容量均与从设备的挂载数量相关。在从设备的传输距离较远的情况下,即使从设备的内部移位寄存器的剩余容量不足,新数据信号传输到该从设备需要一定时间,在新数据信号传输到该从设备之前,可能从设备的内部移位寄存器中的数据信号已被读出。
在上述实施例的基础上,本实施例中所述从设备的序号越大且内部移位寄存器的剩余容量越小,所述从设备的挂载数量越多。
由于数据是以从设备N为起始点开始传递的,因此从设备的序号越大,从设备传输距离越近,数据信号传输到该从设备的时间越短,数据信号被读出的可能性越小,存储在该从设备的内部移位寄存器中的数据信号越可能出现覆盖,因此增加从设备的挂载数量,使得从设备的内部移位寄存器的剩余容量增大,数据信号被覆盖的可能性变小,保证数据的完整性。
在上述实施例的基础上,本实施例中所述微控制器用于将每个从设备的序号的倒数作为每个从设备的内部移位寄存器的剩余容量的权重,根据所述权重对所述内部移位寄存器的剩余容量进行加权求和,根据所述剩余容量的加权求和结果更新所述从设备的挂载数量。
通过以下公式计算内部移位寄存器的剩余容量的加权求和结果:
)
其中,f为所述剩余容量的加权求和结果,N为所述从设备的总个数,i为从设备的序号,Ci为第i个从设备的剩余容量。
在上述实施例的基础上,本实施例中根据加权求和结果更新从设备的挂载数量。可在加权求和结果小于一定值时,增加从设备的挂载数量。从设备挂载数量的增加量可为预设值,也可为根据加权求和结果得到的计算值,加权求和结果越小,从设备挂载数量的增加量越大。
在上述实施例的基础上,本实施例中所述微控制器用于通过以下步骤根据所述剩余总容量更新所述从设备的挂载数量:
将每个从设备的序号的倒数作为每个从设备的内部移位寄存器的实际容量的权重,根据所述权重对所述内部移位寄存器的实际容量进行加权求和得到所述实际容量的加权求和结果;
确定所述剩余容量的加权求和结果与所述实际容量的加权求和结果之间的比值;
在所述比值小于第一预设阈值的情况下,增加所述从设备的挂载数量;
在所述比值大于第二预设阈值的情况下,减少所述从设备的挂载数量。
通过以下公式计算内部移位寄存器的实际容量的加权求和结果:
)
其中,f1为所述实际容量的加权求和结果,N为所述从设备的总个数,i为从设备的序号,Ci为第i个从设备的剩余容量。
确定剩余容量的加权求和结果f与。实际容量的加权求和结果f1之间的比值。在比值小于第一预设阈值的情况下,说明剩余容量过小,增加所述从设备的挂载数量,使得数据不容易被覆盖,保证数据的完整性。在比值大于第二预设阈值的情况下,说明内部移位寄存器没有被充分利用,减少从设备的挂载数量,从而提高资源利用率。第二预设阈值低于第一预设阈值。
在上述实施例的基础上,本实施例中所述微控制器用于将增加的从设备挂载在所述剩余容量的权重与所述剩余容量的乘积最小的一个或多个从设备之后。
例如,5个从设备从按照与微控制器从近到远的顺序排序,对应的剩余容量分别为20、40、30、60和70,则剩余容量的权重与剩余容量的乘积分别为20、20、10、15和14,则乘积最小的一个从设备为从设备三,乘积为10,增加的从设备可挂载在从设备三和从设备四之间,或从设备四和从设备五之间,或从设备五之后,从而使得从设备三的内部移位寄存器数据不容易被覆盖,保证数据的完整性。
或者,乘积最小的两个从设备为从设备三和从设备五,则增加的从设备挂载在从设备五之后,从而使得从设备三和设备五的内部移位寄存器数据不容易被覆盖,保证数据的完整性。
在上述实施例的基础上,本实施例中所述微控制器用于将所述剩余容量的权重与所述剩余容量的乘积最大的一个或多个从设备取消挂载。
例如,5个从设备从按照与微控制器从近到远的顺序排序,对应的剩余容量分别为40、60、60、80和120,则剩余容量的权重与剩余容量的乘积分别为40、30、20、20和24。乘积最大的一个从设备为从设备一,乘积为40,可将从设备一取消挂载,从而使得其他从设备充分利用。
或者,乘积最大的两个从设备为从设备一和从设备二,可将从设备一和从设备二取消挂载,从而使得其他从设备充分利用。
本发明提供的基于菊花链的SPI系统,通过按照新的菊花链走线方案,微控制器的数据会先送至距离微控制器物理位置最远的从设备,菊花链中最后一个从设备的数据输出引脚距离微控制器的物理距离达到最短,相比传统的菊花链中最后一个从设备距离微控制器物理距离大大缩短,减少了PCB走线的负载电容,可以在保证所有从设备满足最高操作时钟频率的情况下,建立时间和保持时间依然满足低功耗从设备的要求,通过创新性的电路布局布线,在使用低功耗设计工艺的从设备导致的驱动能力弱情况下,依然可以保证多个从设备在菊花链互联拓扑结构下的数据读写正常,实现低功耗SPI芯片控制,提高SPI芯片的应用范围。
以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
本发明的说明书中,说明了大量具体细节。然而应当理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于菊花链的SPI系统,其特征在于,包括:
微控制器;
多个从设备,所述微控制器与所述多个从设备构成菊花链结构,所述多个从设备按照与所述微控制器从近到远的顺序排序;
排序中的最后一个从设备的DIN数据输入引脚与所述微控制器的MOSI引脚连接,所述最后一个从设备的DIN数据输入引脚用于接收所述微控制器的MOSI引脚输出的数据信号;
排序中每个当前从设备的DOUT数据输出引脚与前一个从设备的DIN数据输入引脚连接,所述前一个从设备的DIN数据输入引脚用于接收所述当前从设备的DOUT数据输出引脚输出的数据信号;
排序中第一个从设备的DOUT数据输出引脚与所述微控制器的MISO引脚连接,所述微控制器用于读取所述第一个从设备的DOUT数据输出引脚输出的数据信号。
2.根据权利要求1所述的基于菊花链的SPI系统,其特征在于,所述微控制器的CS引脚与各从设备的CS片选输入引脚连接,所述从设备的CS片选输入引脚用于接收所述微控制器输出的片选信号;
在向所述从设备写入所述数据信号的过程中,所述微控制器输出的片选信号为低电平,所述微控制器发送所述数据信号到所述最后一个从设备的DIN数据输入引脚。
3.根据权利要求1所述的基于菊花链的SPI系统,其特征在于,所述微控制器的SCK时钟引脚与各从设备连接,所述从设备用于接收所述微控制器输出的时钟信号;
对于接收数据信号的当前从设备,所述数据信号在所述时钟信号的上升沿进入所述当前从设备的内部移位寄存器,在所述时钟信号的下降沿通过所述当前从设备的DOUT数据输出引脚输出,通过所述前一个从设备的DIN数据输入引脚传送到所述前一个从设备。
4.根据权利要求1所述的基于菊花链的SPI系统,其特征在于,在所述最后一个从设备的前一个从设备接收所述最后一个从设备发送的数据信号的同时,所述微控制器同时向所述最后一个从设备发送新的数据信号。
5.根据权利要求1所述的基于菊花链的SPI系统,其特征在于,所述微控制器用于根据每个从设备的序号和内部移位寄存器的剩余容量,更新所述从设备的挂载数量。
6.根据权利要求5所述的基于菊花链的SPI系统,其特征在于,所述从设备的序号越大且内部移位寄存器的剩余容量越小,所述从设备的挂载数量越多。
7.根据权利要求6所述的基于菊花链的SPI系统,其特征在于,所述微控制器用于将每个从设备的序号的倒数作为每个从设备的内部移位寄存器的剩余容量的权重,根据所述权重对所述内部移位寄存器的剩余容量进行加权求和,根据所述剩余容量的加权求和结果更新所述从设备的挂载数量。
8.根据权利要求7所述的基于菊花链的SPI系统,其特征在于,所述微控制器用于通过以下步骤根据所述剩余总容量更新所述从设备的挂载数量:
将每个从设备的序号的倒数作为每个从设备的内部移位寄存器的实际容量的权重,根据所述权重对所述内部移位寄存器的实际容量进行加权求和得到所述实际容量的加权求和结果;
确定所述剩余容量的加权求和结果与所述实际容量的加权求和结果之间的比值;
在所述比值小于第一预设阈值的情况下,增加所述从设备的挂载数量;
在所述比值大于第二预设阈值的情况下,减少所述从设备的挂载数量。
9.根据权利要求8所述的基于菊花链的SPI系统,其特征在于,所述微控制器用于将增加的从设备挂载在所述剩余容量的权重与所述剩余容量的乘积最小的一个或多个从设备之后。
10.根据权利要求8所述的基于菊花链的SPI系统,其特征在于,所述微控制器用于将所述剩余容量的权重与所述剩余容量的乘积最大的一个或多个从设备取消挂载。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411658690.XA CN119166576B (zh) | 2024-11-20 | 2024-11-20 | 基于菊花链的spi系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202411658690.XA CN119166576B (zh) | 2024-11-20 | 2024-11-20 | 基于菊花链的spi系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN119166576A true CN119166576A (zh) | 2024-12-20 |
CN119166576B CN119166576B (zh) | 2025-04-15 |
Family
ID=93888452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202411658690.XA Active CN119166576B (zh) | 2024-11-20 | 2024-11-20 | 基于菊花链的spi系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN119166576B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104515A (zh) * | 2009-12-18 | 2011-06-22 | 英飞凌科技股份有限公司 | 耦合装置、包括耦合装置的系统和用于该系统的方法 |
US20180276157A1 (en) * | 2017-03-24 | 2018-09-27 | Analog Devices Global | Serial peripheral interface daisy chain mode system and apparatus |
CN114286991A (zh) * | 2019-08-29 | 2022-04-05 | 微芯片技术股份有限公司 | 菊花链流传输模式 |
US20230195672A1 (en) * | 2021-12-16 | 2023-06-22 | Himax Technologies Limited | Daisy-chain spi integrated circuit and operation method thereof |
-
2024
- 2024-11-20 CN CN202411658690.XA patent/CN119166576B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104515A (zh) * | 2009-12-18 | 2011-06-22 | 英飞凌科技股份有限公司 | 耦合装置、包括耦合装置的系统和用于该系统的方法 |
US20180276157A1 (en) * | 2017-03-24 | 2018-09-27 | Analog Devices Global | Serial peripheral interface daisy chain mode system and apparatus |
CN114286991A (zh) * | 2019-08-29 | 2022-04-05 | 微芯片技术股份有限公司 | 菊花链流传输模式 |
US20230195672A1 (en) * | 2021-12-16 | 2023-06-22 | Himax Technologies Limited | Daisy-chain spi integrated circuit and operation method thereof |
Also Published As
Publication number | Publication date |
---|---|
CN119166576B (zh) | 2025-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7603501B2 (en) | Communication circuit of serial peripheral interface devices | |
EP2869168B1 (en) | Touch sensing system and display apparatus | |
JP4621604B2 (ja) | バス装置、バスシステムおよび情報転送方法 | |
US8352774B2 (en) | Inter-clock domain data transfer FIFO circuit | |
US9448960B2 (en) | Address translation in I2C data communications system | |
US8719476B2 (en) | Communication system, master device and slave device, and communication method, configured to handle plural concurrent requests | |
US10216678B2 (en) | Serial peripheral interface daisy chain communication with an in-frame response | |
US8943250B2 (en) | Systems and methods for concatenating multiple devices | |
US9672182B2 (en) | High-speed serial ring | |
JP2009525625A (ja) | シリアル相互接続の多数レーン用の装置及びデスキュー | |
CN109359073B (zh) | 一种基于spi总线的设备间通信方法及装置 | |
CN103729333A (zh) | 多路时隙共享的背板总线结构及其实现方法 | |
CN112445740A (zh) | 一种数据异步采集方法、系统和设备 | |
CN119166576B (zh) | 基于菊花链的spi系统 | |
US8510485B2 (en) | Low power digital interface | |
JP2008041022A (ja) | I/o装置、通信装置、サーボモータ制御装置、制御システムおよびロボットシステム | |
CN102902647B (zh) | 设置在i2c从机印刷电路板的asic芯片和印刷电路板 | |
US20080091788A1 (en) | Controller, address control method, and data transmission system using the same | |
CN113590524A (zh) | 跨单板菊花链传输结构、master单板、slave单板和系统 | |
WO2008001433A1 (fr) | Appareil de communication de données | |
CN108933882B (zh) | 相机模组及电子设备 | |
US20030061527A1 (en) | Method and apparatus for realigning bits on a parallel bus | |
WO1982001607A1 (en) | Data communication bus structure | |
JP2015043170A (ja) | インターフェース回路及びシステム | |
TWI559147B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |