CN109542826B - 一种spi通讯控制方法、装置、设备及系统 - Google Patents
一种spi通讯控制方法、装置、设备及系统 Download PDFInfo
- Publication number
- CN109542826B CN109542826B CN201811463466.XA CN201811463466A CN109542826B CN 109542826 B CN109542826 B CN 109542826B CN 201811463466 A CN201811463466 A CN 201811463466A CN 109542826 B CN109542826 B CN 109542826B
- Authority
- CN
- China
- Prior art keywords
- clock frequency
- actual
- spi
- master device
- actual clock
- 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.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
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)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种SPI通讯控制方法、装置、设备及系统,该方法包括:获取主设备通过SPI链路发送的时钟信号;根据时钟信号,获取对应的实际时钟频率;判断实际时钟频率与主设备的设定时钟频率之间的差值是否处于预设精度范围;若否,则根据实际时钟频率和设定时钟频率,控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围;本发明以从设备的角色对主设备通过SPI链路发送的时钟信号进行解析,调整主设备的输出驱动能力,保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小了SPI无法正常通信的风险,提高了板卡的可靠性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种SPI通讯控制方法、装置、设备及系统。
背景技术
SPI(Serial Peripheral Interface,串行外设接口)传输速率一般受时钟频率、MCU(单片机)处理SPI数据能力、输出端驱动能力等影响,特别是输出端的驱动能力,PCB(Printed Circuit Board,印制电路板)的输出电容和器件总输出阻抗类似一个低通滤波器,这会限制SPI设备间时钟的传输速度。所以同样的原理设计如果呈现在不同PCB板材上可能会导致非预期的效果,带来诸如实际时钟与配置时钟不匹配、SPI无法正常通信等问题,继而影响了板卡的可靠性。
因此,如何能够避免实际时钟与配置时钟不匹配的情况,减少SPI无法正常通信的风险,提高板卡的可靠性,是现今急需解决的问题。
发明内容
本发明的目的是提供一种SPI通讯控制方法、装置、设备及系统,以避免实际时钟与配置时钟不匹配的情况,减少SPI无法正常通信的风险,提高板卡的可靠性。
为解决上述技术问题,本发明提供一种SPI通讯控制方法,包括:
获取主设备通过SPI链路发送的时钟信号;
根据所述时钟信号,获取对应的实际时钟频率;
判断所述实际时钟频率与所述主设备的设定时钟频率之间的差值是否处于预设精度范围;
若否,则根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,以使所述实际时钟频率与所述设定时钟频率之间的差值处于所述预设精度范围。
可选的,所述实际时钟频率小于所述设定时钟频率时,所述根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,包括:
控制所述电阻网络设备,降低所述SPI链路的串阻;和/或
控制所述驱动电流设备,增大所述主设备的驱动电流。
可选的,该方法还包括:
若所述SPI链路的串阻达到最小串阻阈值和/或所述主设备的驱动电流达到最大电流阈值时,所述实际时钟频率与所述设定时钟频率之间的差值不处于所述预设精度范围,则控制所述主设备,调整所述设定时钟频率。
可选的,所述控制所述主设备,调整所述设定时钟频率,包括:
通过串口设备获取操作权限信息;
根据所述操作权限信息,控制所述主设备,调整所述设定时钟频率。
本发明还提供了一种SPI通讯控制装置,包括:
信号获取模块,用于获取主设备通过SPI链路发送的时钟信号;
频率获取模块,用于根据所述时钟信号,获取对应的实际时钟频率;
判断模块,用于判断所述实际时钟频率与所述主设备的设定时钟频率之间的差值是否处于预设精度范围;
第一调整模块,用于若不处于所述预设精度范围,则根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,以使所述实际时钟频率与所述设定时钟频率之间的差值处于所述预设精度范围。
可选的,所述实际时钟频率小于所述设定时钟频率时,所述第一调整模块,包括:
第一控制子模块,用于控制所述电阻网络设备,降低所述SPI链路的串阻;和/或
第二控制子模块,用于控制所述驱动电流设备,增大所述主设备的驱动电流。
可选的,该装置还包括:
第二调整模块,用于若所述SPI链路的串阻达到最小串阻阈值和/或所述主设备的驱动电流达到最大电流阈值时,所述实际时钟频率与所述设定时钟频率之间的差值不处于所述预设精度范围,则控制所述主设备,调整所述设定时钟频率。
可选的,所述第二调整模块,包括:
权限获取子模块,用于通过串口设备获取操作权限信息;
调整子模块,用于根据所述操作权限信息,控制所述主设备,调整所述设定时钟频率。
本发明还提供了一种SPI通讯控制设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述的SPI通讯控制方法的步骤。
此外,本发明还提供了一种SPI通讯控制系统,包括:主设备和与所述主设备通过SPI链路连接的从设备;
与所述主设备通过所述SPI链路连接的SPI通讯控制设备,获取主设备通过SPI链路发送的时钟信号;根据所述时钟信号,获取对应的实际时钟频率;判断所述实际时钟频率与所述主设备的设定时钟频率之间的差值是否处于预设精度范围;若否,则根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,以使所述实际时钟频率与所述设定时钟频率之间的差值处于所述预设精度范围;
与所述SPI通讯控制设备连接的所述电阻网络设备和/或所述驱动电流设备,用于根据所述SPI通讯控制设备的控制,对所述实际时钟频率进行调整。
本发明所提供的一种SPI通讯控制方法,包括:获取主设备通过SPI链路发送的时钟信号;根据时钟信号,获取对应的实际时钟频率;判断实际时钟频率与主设备的设定时钟频率之间的差值是否处于预设精度范围;若否,则根据实际时钟频率和设定时钟频率,控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围;
可见,本发明通过若实际时钟频率与主设备的设定时钟频率之间的差值不处于预设精度范围,则控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围,以从设备的角色对主设备通过SPI链路发送的时钟信号进行解析,调整主设备的输出驱动能力,保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小了SPI无法正常通信的风险,提高了板卡的可靠性。此外,本发明还提供了一种SPI通讯控制装置、设备及系统,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种SPI通讯控制方法的流程图;
图2为本发明实施例所提供的一种SPI通讯控制装置的结构图;
图3为本发明实施例所提供的一种SPI通讯控制系统的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种SPI通讯控制方法的流程图。该方法可以包括:
步骤101:获取主设备通过SPI链路发送的时钟信号。
可以理解的是,本实施例的目的可以为板卡上设置的如BMC(BaseboardManagement Controller,执行伺服器远端管理控制器)或OSES(一种嵌入式管理器)等管理芯片的处理器以从设备的角色对主设备通过SPI链路发送的时钟信号进行解析,对应调整主设备的输出驱动能力,保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小SPI无法正常通信的风险,提高板卡的可靠性。
其中,本步骤的目的可以为与主设备通过SPI链路连接的处理器以从设备的角色获取主设备通过SPI链路发送的时钟信号。具体的,对于本步骤中处理器获取主设备通过SPI链路发送的时钟信号的具体方式,可以由设计人员根据实用场景和用户需求自行设置,可以为按预设时间间隔获取主设备通过SPI链路发送的时钟信号,如处理器可以以从设备的角色实时获取主设备通过SPI链路发送的时钟信号。只要处理器可以获取时钟信号,本实施例对此不做任何限制。
步骤102:根据时钟信号,获取对应的实际时钟频率。
可以理解的是,本步骤的目的可以为处理器利用获取的主设备通过SPI链路发送的时钟信号,解析出对应的实际时钟频率。其中,本步骤中的实际时钟频率可以为SPI链路中的从设备接收的时钟信号对应的时钟频率。
具体的,对于本步骤中处理器根据时钟信号,获取对应的实际时钟频率的具体方式,可以由设计人员自行设置,如可以采用与现有技术相同或相似的方式实现,本实施例对此不做任何限制。
步骤103:判断实际时钟频率与主设备的设定时钟频率之间的差值是否处于预设精度范围;若否,则进入步骤104。
可以理解的是,本步骤的目的可以为通过判断实际时钟频率与主设备的设定时钟频率之间的差值是否处于预设精度范围,利用实际时钟频率与主设备的设定时钟频率的比较,确定是否需要对SPI链路中的主设备的驱动能力进行调整。若实际时钟频率与设定时钟频率之间的差值不处于预设精度范围,则可以通过步骤104对SPI链路中的主设备的驱动能力进行调整;若实际时钟频率与设定时钟频率之间的差值处于预设精度范围,则说明不需要对SPI链路中的主设备的驱动能力进行调整,可以直接结束本流程或返回步骤101,再次获取下一时刻的时钟信号。
其中,本步骤中主设备的设定时钟频率可以为处理器从主设备获取的主设备所配置的时钟频率,也可以为用户或设计人员预先存储的主设备所配置的时钟频率。只要处理器可以获取主设备所配置的设定时钟频率,对于具体的获取方式,本实施例不做任何限制。
对应的,本步骤中的预设精度范围可以为设计人员或用户预先设置的用于确定处理器解析得到的实际时钟频率与主设备所配置的设定时钟频率是否匹配的时钟精度范围。对于预设精度范围的具体范围数值设置,可以由设计人员或用户自行设置,本实施例对此不做任何限制。
步骤104:根据实际时钟频率和设定时主设备钟频率,控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围。
其中,本步骤的目的可以为在实际时钟频率与主设备的设定时钟频率之间的差值不处于预设精度范围时,利用电阻网络设备和/或驱动电流设备,对SPI链路中的主设备的驱动能力进行调整,从而调整处理器和其他的从设备接收时钟信号的时钟频率(实际时钟频率),保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小SPI无法正常通信的风险,提高板卡的可靠性。
需要说明的是,对于本步骤中根据实际时钟频率和设定时主设备钟频率,控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如可以在实际时钟频率小于设定时钟频率时,控制电阻网络设备,降低SPI链路的串阻;和/或控制驱动电流设备,增大主设备的驱动电流,以提高实际时钟频率;在实际时钟频率大于设定时钟频率时,控制电阻网络设备,提高SPI链路的串阻;和/或控制驱动电流设备,减小主设备的驱动电流,以降低实际时钟频率。即利用F=1/(2πRC),其中,F为实际时钟频率,R为SPI链路的串阻,C为SPI链路的电容,在设定时钟频率大于实际时钟频率时,通过电阻网络设备降低SPI链路串阻和/或通过驱动电流设备增大主设备的驱动电流;在设定时钟频率小于实际时钟频率时,通过电阻网络设备增大SPI链路串阻和/或通过驱动电流设备减小主设备的驱动电流,前者一般出现在PCB板材由低损耗材质变为高损耗材质而线路原理设计不变的情况中。本实施例对此不做任何限制。
具体的,对于本步骤中根据实际时钟频率和设定时主设备钟频率,控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整的具体过程,可以设计人员根据实用场景和用户需求自行设置,如可以在实际时钟频率小于设定时钟频率时,控制电阻网络设备,使SPI链路的串阻降低第一预设数值;和/或控制驱动电流设备,使主设备的驱动电流增大第二预设数值,以提高一定数值的实际时钟频率,即每次调整完实际时钟频率后,可以再次返回步骤101再次判断调整后的实际时钟频率是否与设定时钟频率相匹配,若不匹配则继续对实际时钟频率再次进行调整,直至实际时钟频率与设定时钟频率相匹配;也可以在实际时钟频率小于设定时钟频率时,根据实际时钟频率与设定时钟频率,控制电阻网络设备,使SPI链路的串阻降低对应的数值;和/或控制驱动电流设备,使主设备的驱动电流增大对应的数值,即处理器可以根据实际时钟频率与设定时钟频率之间的差值,自动计算需要调整的SPI链路的串阻和/或驱动电流的数值,从而对应控制电阻网络设备和/或驱动电流设备,使调整后的实际时钟频率与设定时钟频率相匹配。本实施例对此不做任何限制。
可以理解的是,本实施例所提供的方法中处理器利用电阻网络设备和/或驱动电流设备,对SPI链路中的主设备的驱动能力进行调整,保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配。对应的,若处理器利用电阻网络设备和/或驱动电流设备,对SPI链路中的主设备的驱动能力进行调整后,还是无法令调整后的实际时钟频率与设定时钟频率相匹配,则本步骤还可以包括:控制主设备,调整设定时钟频率的步骤,进一步保证实际时钟频率可以与设定时钟频率相匹配,即实际时钟频率小于设定时钟频率时,若SPI链路的串阻达到最小串阻阈值和/或主设备的驱动电流达到最大电流阈值时,实际时钟频率与设定时钟频率之间的差值不处于预设精度范围,则控制主设备,调整设定时钟频率;或者实际时钟频率大于设定时钟频率时,若SPI链路的串阻达到最大串阻阈值和/或主设备的驱动电流达到最小电流阈值时,实际时钟频率与设定时钟频率之间的差值不处于预设精度范围,则控制主设备,调整设定时钟频率。
具体的,对于本步骤中处理器控制主设备,调整设定时钟频率的具体情况,即处理器控制主设备重新配置设定时钟频率的具体情况,可以由设计人员自行设置,可以如上述所示,在处理器控制电阻网络设备和/或驱动电流设备使SPI链路的串阻和/或驱动电流达到对应的阈值,且实际时钟频率与设定时钟频率之间的差值不处于预设精度范围的情况下,重新配置设定时钟频率;也可以在处理器控制电阻网络设备和/或驱动电流设备对SPI链路中的主设备的驱动能力进行的调整次数达到对应的阈值,即实际时钟频率的调整次数达到对应的阈值,且实际时钟频率与设定时钟频率之间的差值不处于预设精度范围的情况下,重新配置设定时钟频率。本实施例对此不做任何限制。
具体的,对于上述控制主设备,调整设定时钟频率的具体方式,可以由设计人员自行设置,如处理器可以直接向主设备发送对应的控制指令,控制主设备,调整设定时钟频率,如实际时钟频率始终小于设定时钟频率时,处理器可以向主设备发送对应的控制指令,控制主设备将设定时钟频率调整为更小的时钟频率;处理器也可以先获取对应的操作权限,再向主设备发送对应的控制指令,控制主设备,调整设定时钟频率,如处理器可以通过串口设备获得对应的操作权限后再对主模块的时钟频率进行重新配置,即上述步骤可以包括通过串口设备获取操作权限信息;根据操作权限信息,控制主设备,调整设定时钟频率。只要可以保证处理器可以控制主设备,调整设定时钟频率,保证实际时钟频率与设定时钟频率之间的差值处于预设精度范围,即实现实际时钟频率与设定时钟频率相匹配,本实施例对此不做任何限制。
本实施例中,本发明实施例通过若实际时钟频率与主设备的设定时钟频率之间的差值不处于预设精度范围,则控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围,以从设备的角色对主设备通过SPI链路发送的时钟信号进行解析,调整主设备的输出驱动能力,保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小了SPI无法正常通信的风险,提高了板卡的可靠性。
请参考图2,图2为本发明实施例所提供的一种SPI通讯控制装置的结构图。该装置可以包括:
信号获取模块100,用于获取主设备通过SPI链路发送的时钟信号;
频率获取模块200,用于根据时钟信号,获取对应的实际时钟频率;
判断模块300,用于判断实际时钟频率与主设备的设定时钟频率之间的差值是否处于预设精度范围;
第一调整模块400,用于若不处于预设精度范围,则根据实际时钟频率和设定时钟频率,控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围。
可选的,实际时钟频率小于设定时钟频率时,第一调整模块300,可以包括:
第一控制子模块,用于控制电阻网络设备,降低SPI链路的串阻;和/或
第二控制子模块,用于控制驱动电流设备,增大主设备的驱动电流。
可选的,该装置还可以包括:
第二调整模块,用于若SPI链路的串阻达到最小串阻阈值和/或主设备的驱动电流达到最大电流阈值时,实际时钟频率与设定时钟频率之间的差值不处于预设精度范围,则控制主设备,调整设定时钟频率。
可选的,第二调整模块,可以包括:
权限获取子模块,用于通过串口设备获取操作权限信息;
调整子模块,用于根据操作权限信息,控制主设备,调整设定时钟频率。
本实施例中,本发明实施例通过第一调整模块400若实际时钟频率与主设备的设定时钟频率之间的差值不处于预设精度范围,则控制电阻网络设备和/或驱动电流设备,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围,以从设备的角色对主设备通过SPI链路发送的时钟信号进行解析,调整主设备的输出驱动能力,保证主设备所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小了SPI无法正常通信的风险,提高了板卡的可靠性。
本发明实施例还提供了一种SPI通讯控制设备,包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序时实现如上述实施例所提供的SPI通讯控制方法的步骤。
请参考图3,图3为本发明实施例所提供的一种SPI通讯控制系统的结构图。该系统可以包括:主设备10和与主设备10通过SPI链路连接的从设备20;
与主设备10通过SPI链路连接的SPI通讯控制设备30,获取主设备10通过SPI链路发送的时钟信号;根据时钟信号,获取对应的实际时钟频率;判断实际时钟频率与主设备10的设定时钟频率之间的差值是否处于预设精度范围;若否,则根据实际时钟频率和设定时钟频率,控制电阻网络设备40和/或驱动电流设备50,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围;
与SPI通讯控制设备30连接的电阻网络设备40和/或驱动电流设备50,用于根据SPI通讯控制设备的控制,对实际时钟频率进行调整。
可选的,SPI通讯控制设备30可以具体用于在实际时钟频率小于设定时钟频率时,控制电阻网络设备40,降低SPI链路的串阻;和/或控制驱动电流设备50,增大主设备的驱动电流。
可选的,如图3所示,SPI通讯控制设备30还可以与主设备10通过其他方式连接,用于若SPI链路的串阻达到最小串阻阈值和/或主设备的驱动电流达到最大电流阈值时,实际时钟频率与设定时钟频率之间的差值不处于预设精度范围,则控制主设备10,调整设定时钟频率。
可选的,如图3所示,该系统还可以包括与SPI通讯控制设备30连接的串口设备60,使SPI通讯控制设备30可以与外界进行通信。
对应的,SPI通讯控制设备30可以具体用于通过串口设备60获取操作权限信息;根据操作权限信息,控制主设备10,调整设定时钟频率。
具体的,如图3所示的SPI通讯控制设备30、电阻网络设备40和驱动电流设备50可以均设置在板卡上。其中,电阻网络设备40可以受SPI通讯控制设备30的直接控制,通过电路网络改变SPI通信链路中的串阻;驱动电流设备50可以受SPI通讯控制设备30的直接控制,分三个档位改变主设备10的驱动电流。
本实施例中,本发明实施例通过SPI通讯控制设备30若实际时钟频率与主设备10的设定时钟频率之间的差值不处于预设精度范围,则控制电阻网络设备40和/或驱动电流设备50,对实际时钟频率进行调整,以使实际时钟频率与设定时钟频率之间的差值处于预设精度范围,以从设备的角色对主设备10通过SPI链路发送的时钟信号进行解析,调整主设备10的输出驱动能力,保证主设备10所配置的设定时钟频率与解析得到的实际时钟频率相匹配,减小了SPI无法正常通信的风险,提高了板卡的可靠性。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种SPI通讯控制方法、装置、设备及系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (6)
1.一种SPI通讯控制方法,其特征在于,包括:
获取主设备通过SPI链路发送的时钟信号;
根据所述时钟信号,获取对应的实际时钟频率;
判断所述实际时钟频率与所述主设备的设定时钟频率之间的差值是否处于预设精度范围;
若否,则根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,以使所述实际时钟频率与所述设定时钟频率之间的差值处于所述预设精度范围;
所述实际时钟频率小于所述设定时钟频率时,所述根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,包括:
控制所述电阻网络设备,降低所述SPI链路的串阻;和/或
控制所述驱动电流设备,增大所述主设备的驱动电流;
所述SPI通讯控制方法,还包括:
若所述SPI链路的串阻达到最小串阻阈值和/或所述主设备的驱动电流达到最大电流阈值时,所述实际时钟频率与所述设定时钟频率之间的差值不处于所述预设精度范围,则控制所述主设备,调整所述设定时钟频率。
2.根据权利要求1所述的SPI通讯控制方法,其特征在于,所述控制所述主设备,调整所述设定时钟频率,包括:
通过串口设备获取操作权限信息;
根据所述操作权限信息,控制所述主设备,调整所述设定时钟频率。
3.一种SPI通讯控制装置,其特征在于,包括:
信号获取模块,用于获取主设备通过SPI链路发送的时钟信号;
频率获取模块,用于根据所述时钟信号,获取对应的实际时钟频率;
判断模块,用于判断所述实际时钟频率与所述主设备的设定时钟频率之间的差值是否处于预设精度范围;
第一调整模块,用于若不处于所述预设精度范围,则根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,以使所述实际时钟频率与所述设定时钟频率之间的差值处于所述预设精度范围;
所述实际时钟频率小于所述设定时钟频率时,所述第一调整模块,包括:
第一控制子模块,用于控制所述电阻网络设备,降低所述SPI链路的串阻;和/或
第二控制子模块,用于控制所述驱动电流设备,增大所述主设备的驱动电流;
所述SPI通讯控制装置,还包括:
第二调整模块,用于若所述SPI链路的串阻达到最小串阻阈值和/或所述主设备的驱动电流达到最大电流阈值时,所述实际时钟频率与所述设定时钟频率之间的差值不处于所述预设精度范围,则控制所述主设备,调整所述设定时钟频率。
4.根据权利要求3所述的SPI通讯控制装置,其特征在于,所述第二调整模块,包括:
权限获取子模块,用于通过串口设备获取操作权限信息;
调整子模块,用于根据所述操作权限信息,控制所述主设备,调整所述设定时钟频率。
5.一种SPI通讯控制设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1或2所述的SPI通讯控制方法的步骤。
6.一种SPI通讯控制系统,其特征在于,包括:主设备和与所述主设备通过SPI链路连接的从设备;
与所述主设备通过所述SPI链路连接的SPI通讯控制设备,用于获取所述主设备通过所述SPI链路发送的时钟信号;根据所述时钟信号,获取对应的实际时钟频率;判断所述实际时钟频率与所述主设备的设定时钟频率之间的差值是否处于预设精度范围;若否,则根据所述实际时钟频率和所述设定时钟频率,控制电阻网络设备和/或驱动电流设备,对所述实际时钟频率进行调整,以使所述实际时钟频率与所述设定时钟频率之间的差值处于所述预设精度范围;
与所述SPI通讯控制设备连接的所述电阻网络设备和/或所述驱动电流设备,用于根据所述SPI通讯控制设备的控制,对所述实际时钟频率进行调整;
所述SPI通讯控制设备具体用于若所述实际时钟频率与所述设定时钟频率之间的差值不处于所述预设精度范围,则在所述实际时钟频率小于所述设定时钟频率时,控制所述电阻网络设备,降低所述SPI链路的串阻;和/或控制所述驱动电流设备,增大所述主设备的驱动电流;
所述SPI通讯控制设备还用于若所述SPI链路的串阻达到最小串阻阈值和/或所述主设备的驱动电流达到最大电流阈值时,所述实际时钟频率与所述设定时钟频率之间的差值不处于所述预设精度范围,则控制所述主设备,调整所述设定时钟频率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811463466.XA CN109542826B (zh) | 2018-12-03 | 2018-12-03 | 一种spi通讯控制方法、装置、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811463466.XA CN109542826B (zh) | 2018-12-03 | 2018-12-03 | 一种spi通讯控制方法、装置、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109542826A CN109542826A (zh) | 2019-03-29 |
CN109542826B true CN109542826B (zh) | 2021-10-29 |
Family
ID=65852636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811463466.XA Active CN109542826B (zh) | 2018-12-03 | 2018-12-03 | 一种spi通讯控制方法、装置、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109542826B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115987835B (zh) * | 2022-12-26 | 2024-04-05 | 上海新华控制技术集团科技有限公司 | 通讯状态的检测方法、系统、装置及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07152448A (ja) * | 1993-11-30 | 1995-06-16 | Sanyo Electric Co Ltd | 発振器の制御回路 |
CN101431256A (zh) * | 2008-07-28 | 2009-05-13 | 北京市研祥兴业国际智能科技有限公司 | 断电保护装置 |
CN101458889A (zh) * | 2007-12-13 | 2009-06-17 | 比亚迪股份有限公司 | 一种驱动芯片时钟频率控制方法及驱动芯片 |
CN101835036A (zh) * | 2009-03-13 | 2010-09-15 | 北京北广科技股份有限公司 | 将asi码流转换为spi码流的方法及实现该方法的接口电路 |
CN102207922A (zh) * | 2010-03-30 | 2011-10-05 | 新唐科技股份有限公司 | 总线接口以及总线接口的时钟频率控制方法 |
CN106411449A (zh) * | 2016-10-08 | 2017-02-15 | 广东欧珀移动通信有限公司 | 播放控制方法、装置及终端 |
CN107678855A (zh) * | 2017-09-19 | 2018-02-09 | 中国电子产品可靠性与环境试验研究所 | 处理器动态调节方法、装置及处理器芯片 |
-
2018
- 2018-12-03 CN CN201811463466.XA patent/CN109542826B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07152448A (ja) * | 1993-11-30 | 1995-06-16 | Sanyo Electric Co Ltd | 発振器の制御回路 |
CN101458889A (zh) * | 2007-12-13 | 2009-06-17 | 比亚迪股份有限公司 | 一种驱动芯片时钟频率控制方法及驱动芯片 |
CN101431256A (zh) * | 2008-07-28 | 2009-05-13 | 北京市研祥兴业国际智能科技有限公司 | 断电保护装置 |
CN101835036A (zh) * | 2009-03-13 | 2010-09-15 | 北京北广科技股份有限公司 | 将asi码流转换为spi码流的方法及实现该方法的接口电路 |
CN102207922A (zh) * | 2010-03-30 | 2011-10-05 | 新唐科技股份有限公司 | 总线接口以及总线接口的时钟频率控制方法 |
CN106411449A (zh) * | 2016-10-08 | 2017-02-15 | 广东欧珀移动通信有限公司 | 播放控制方法、装置及终端 |
CN107678855A (zh) * | 2017-09-19 | 2018-02-09 | 中国电子产品可靠性与环境试验研究所 | 处理器动态调节方法、装置及处理器芯片 |
Non-Patent Citations (1)
Title |
---|
射频拉远模块中软件时钟锁相的实现方法;朱进军等;《无线电工程》;20070405(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109542826A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11768736B2 (en) | Storage system boot method and apparatus, and computer-readable storage medium | |
CA2960781C (en) | A method and apparatus to control a mode of a device | |
CN107153553B (zh) | 基于CScripts进行Purley平台CPU端PCIe Tx Eq调整的方法 | |
US20150349777A1 (en) | Switching circuit and electronic device | |
EP3706009A1 (en) | Redriver to autonomously detect cable orientation | |
CN109542826B (zh) | 一种spi通讯控制方法、装置、设备及系统 | |
CN111581043A (zh) | 服务器功耗的监控方法、装置和服务器 | |
CN111211937A (zh) | 服务器链路信号稳定性的测试方法、测试装置及测试系统 | |
CN113422620B (zh) | 通信速率控制方法、装置、设备和可读存储介质 | |
CN114623756A (zh) | 插接到位检测装置及电子设备 | |
US20180143928A1 (en) | Switch system and operation method thereof | |
CN105045697A (zh) | 一种pcie信号完整性测试系统和方法 | |
CN110008165B (zh) | 一种ntb链路管理方法、系统及相关装置 | |
CN108235422B (zh) | 天线功率的设置方法及电子装置 | |
CN113645088B (zh) | 网卡ncsi信号的自动调节方法、系统、装置及介质 | |
CN116305806A (zh) | 仿真模型的验证方法、装置、处理设备及介质 | |
CN116088648A (zh) | 一种服务器机柜、电路控制方法及计算节点 | |
CN113722255B (zh) | 一种信号质量处理方法、装置及系统 | |
CN114063758B (zh) | 一种获取电流值方法、装置以及介质 | |
CN114048160B (zh) | 链路均衡调节系统及链路均衡调节方法 | |
CN115333666A (zh) | 并行总线时序补偿方法、装置以及处理器 | |
CN114442765A (zh) | 计算机设备的风扇控制方法、基板管理控制器及存储介质 | |
CN108388481B (zh) | Olt设备的智能看门狗电路系统 | |
CN112100110A (zh) | 一种i2c上拉电阻自调适电路及自调适方法 | |
CN107783915B (zh) | 用于mcu的端口复用方法和装置 |
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 |