CN105808492B - 一种信息处理方法及串行***设备接口主控制器 - Google Patents
一种信息处理方法及串行***设备接口主控制器 Download PDFInfo
- Publication number
- CN105808492B CN105808492B CN201410838461.6A CN201410838461A CN105808492B CN 105808492 B CN105808492 B CN 105808492B CN 201410838461 A CN201410838461 A CN 201410838461A CN 105808492 B CN105808492 B CN 105808492B
- Authority
- CN
- China
- Prior art keywords
- serial peripheral
- equipment
- peripheral interface
- master controller
- spi
- 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
Landscapes
- Selective Calling Equipment (AREA)
Abstract
本发明提供一种信息处理方法及SPI主控制器,其中信息处理方法包括:获取第一控制信息;基于第一控制信息,获取第一寄存器中的第一指令信息;将第一指令信息发送至SPI从设备;基于第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互。因此对于任意一个与SPI主控制器相连接的SPI从设备,SPI主控制器都可以基于与其相连接的SPI从设备对应的第一控制信息,获取第一指令信息,并基于第一控制信息和第一指令信息控制SPI主控制器与SPI从设备进行数据交互,使得一个SPI主控制器可以被多个SPI从设备共用,提高SPI主控制器的通用性。
Description
技术领域
本发明涉SPI(Serial Peripheral interface,串行***设备接口)设备技术领域,特别涉及一种信息处理方法及SPI主控制器。
背景技术
SPI接口是一种常用的串行接口,由于其使用简单方便且占用硬件资源较少,很多设备都支持SPI接口,通过SPI接口经过SPI总线传输。其中SPI接口最典型的应用是SPI主控制器连接在微控制器与SPI从设备之间,以完成微控制器与SPI从设备之间数据的双向传输,一个SPI主控制器可以通过SPI接口连接多个SPI从设备,通过SPI选择信号(ss)来使能一个SPI从设备。
目前支持SPI接口的SPI从设备有很多,例如SPI flash以及各种传感器,但是由于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主控制器可以被多个SPI从设备共用,提高SPI主控制器的通用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的信息处理方法的第一种流程图;
图2是本发明实施例提供的信息处理方法的第二种流程图;
图3是本发明实施例提供的信息处理方法中数据交互的一种流程图;
图4是本发明实施例提供的信息处理方法中数据交互的另一种流程图;
图5是本发明实施例提供的信息处理方法中数据交互的再一种流程图;
图6是本发明实施例提供的信息处理方法的第三种流程图;
图7是本发明实施例提供的信息处理装置的第一种结构示意图;
图8是本发明实施例提供的信息处理装置的第二种结构示意图;
图9是本发明实施例提供的信息处理装置中控制单元的一种结构示意图;
图10是本发明实施例提供的信息处理装置中控制单元的另一种结构示意图;
图11是本发明实施例提供的信息处理装置中控制子单元的一种结构示意图;
图12是本发明实施例提供的信息处理装置的第三种结构示意图。
具体实施方式
为了使本领域技术人员更好的理解本发明,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,其示出了本发明实施例提高的信息处理方法的第一种流程图,应用于SPI主控制器中,用于阐述SPI主控制器对任意一个SPI从设备的控制过程以提高SPI主控制器的通用性。图1所示信息处理方法可以包括以下步骤:
101:获取第一控制信息,其中第一控制信息与SPI从设备相对应,用于控制SPI主控制器与SPI从设备之间的通信,SPI从设备与SPI主控制器相连接。
在本发明实施例中,第一控制信息包括SPI主控制器与SPI从设备通信时所使用的各种字段,例如包括命令格式、命令个数、传输数据个数和SPI时钟等字段,该第一控制信息可以记录在控制寄存器中,如表1所示。
表1 第一控制信息中的字段表
data_cnt | cmd_cnt | start | response | write | read | cpha | cpol |
其中,data_cnt:指示spi数据传输比特个数。
cmd_cnt:指示spi命令比特个数。
start:使能spi传输,在idle状态的情况下,跳过spi命令写入直接进入数据传输。
response:用于指示从从设备接收响应。
write:指示主控制器向slave设备写数据。
read:指示主控制器从slave中读数据。
cpha:指示spi时钟相位。
cpol:指示spi时钟极性。
上述这些字段的取值可以预先根据SPI从设备的参数要求写入到控制寄存器中,这样SPI主控制器在和某一个SPI从设备通信时,可以从控制寄存器中获取预先写入的当前与SPI主控制器进行通信的SPI从设备的第一控制信息。在获取第一控制信息时,需要从多个第一控制信息中查找到当前与SPI主控制器进行通信的SPI从设备的第一控制信息,因此控制寄存器除记录上述第一控制信息之外,还要为每个控制信息分配一个唯一标识符,以通过唯一标识符来从多个第一控制信息中查找到当前与SPI主控制器进行通信的SPI从设备的第一控制信息。
当然上述这些字段的取值也可以在SPI主控制器在和某一个SPI从设备通信时,实时写入控制寄存器中,并且控制寄存器中每次仅记录一个SPI从设备的第一控制信息,这样SPI主控制器在和某一个SPI从设备通信时,从控制寄存器中获取到的第一控制信息即是当前与SPI主控制器进行通信的SPI从设备的第一控制信。
102:基于第一控制信息,获取第一寄存器中的第一指令信息。目前SPI主控制器和SPI从设备之间的通信包括命令周期和数据传输周期,其中命令周期主要用于在SPI主控制器和SPI从设备之间传输命令,并根据传输的命令以及第一控制信息判断是否进入数据传输周期,数据传输周期则是用于在SPI主控制器和SPI从设备之间传输数据。
在本发明实施例中,从第一寄存器中获取的第一指令信息携带有SPI主控制器和SPI从设备之间的传输的命令内容。
103:将第一指令信息发送至SPI从设备。
104:基于第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互。在发送第一指令信息至SPI从设备后,会进一步判断是否接收到SPI从设备的反馈信息,以此判断结果决定是否进入数据传输周期。
从上述技术方案可以看出,第一控制信息与SPI从设备相对应,那么基于第一控制信息获取的第一指令信息也与SPI从设备相对应,通过与SPI从设备相对应的第一控制信息和第一指令信息控制SPI主控制器与SPI从设备进行数据交互可以使数据交互满足SPI从设备的要求,这样每个与SPI主控制器相连接的SPI从设备进行通信时,都可以基于自身的第一控制信息和第一指令信息来控制SPI主控制器与SPI从设备进行数据交互,以使数据交互满足自身要求,因此SPI主控制器在使用本发明实施例提供的信息处理方法时可以使其被多个SPI从设备共用,提高SPI主控制器的通用性。
请参阅图2,其示出了本发明实施例提供的信息处理方法的第二种流程图,同样可以应用于SPI主控制器中,可以包括以下步骤:
201:获取第一控制信息,其中第一控制信息与SPI从设备相对应,用于控制SPI主控制器与SPI从设备之间的通信,SPI从设备与SPI主控制器相连接。对于第一控制信息的说明及获取过程可以参阅步骤101,对此本发明实施例不再阐述。
202:基于第一控制信息,生成与SPI从设备相对应的时钟信号。其中时钟信号用于控制SPI主控制器与SPI从设备进行数据交互的时机,如在时钟信号的上升沿到达时SPI主控制器与SPI从设备开始进行数据交互。
203:将时钟信号发送至SPI从设备。
204:基于第一控制信息,获取第一寄存器中的第一指令信息。目前SPI主控制器和SPI从设备之间的通信包括命令周期和数据传输周期,其中命令周期主要用于在SPI主控制器和SPI从设备之间传输命令,并根据传输的命令以及第一控制信息判断是否进入数据传输周期,数据传输周期则是用于在SPI主控制器和SPI从设备之间传输数据,因此从第一寄存器中获取的第一指令信息携带有SPI主控制器和SPI从设备之间的传输的命令内容。
205:将第一指令信息发送至SPI从设备。
206:基于第一控制信息以及第一指令信息,选择时钟信号的跳变沿,在选择的跳变沿下控制SPI主控制器与SPI从设备进行数据交互,跳变沿为时钟信号的上升沿或下降沿。这样当时钟信号达到上升沿或者下降沿时,基于第一控制信息以及第一指令信息控制SPI主控制器与SPI从设备进行数据交互。
并且跳变沿的选择可以基于第一控制信息中的cpha和cpol这两个字段进行选择,例如:如果cpol=0,时钟信号的空闲状态为低电平,此时选择的跳变沿为上升沿;如果cpol=1,时钟信号的空闲状态为高电平,此时选择的跳变沿为下降沿。而cpha则用于指示在第几个跳变沿采样数据。如果cpha=0,在时钟信号的第一个跳变沿采样数据;如果cpha=1,在时钟信号的第二个跳变沿采样数据。
通过上述技术方案,在选择的跳变沿下控制SPI主控制器与SPI从设备进行数据交互可以使双方交互满足SPI从设备每次传输数据时的时钟要求,进一步提高SPI主控制器的通用性。
前已述及,目前SPI主控制器和SPI从设备之间的通信包括命令周期和数据传输周期,下面则分别从这两个周期来阐述基于第一控制信息以及第一指令信息,如何控制SPI主控制器和SPI从设备之间的数据交互。请参阅3,其示出了本发明实施例提供的信息处理方法在命令周期时SPI主控制器和SPI从设备之间的数据交互过程,可以包括以下步骤:
301:基于第一控制信息,确定是否有针对第一指令信息的反馈信息。其中针对第一指令信息的反馈信息用于指示在发送第一指令信息至SPI从设备后,SPI从设备是否需要向SPI主控制器反馈。
在本发明实施例中,第一指令信息携带的命令内容的比特数由第一控制信息中的cmd_cnt决定。确定是否有针对第一指令信息的反馈信息可以通过对上述response字段判断来确定,当response字段的取值为1时,表明有针对第一指令信息的反馈信息,且在发送第一指令信息至SPI从设备后立刻接收SPI从设备的反馈信息,此时需要继续检测是否接收到SPI从设备的反馈信息来决定是否进入数据传输周期。当response字段的取值为0时,表明没有针对第一指令信息的反馈信息,且在发送第一指令信息至SPI从设备后,SPI从设备未发送SPI从设备的反馈信息或者会在一定时间之后发送SPI从设备的反馈信息。
302:当确定有反馈信息时,检测是否接收到SPI从设备的反馈信息,获得第一检测结果。
303:当第一检测结果表明接收到SPI从设备的反馈信息时,基于第一控制信息,控制SPI主控制器与SPI从设备进行数据交互。在接收到SPI从设备的反馈信息后,可以根据第一控制信息中的write和read字段的取值进入数据传输周期,以根据write和read字段的取值控制SPI主控制器与SPI从设备进行数据交互。
例如:当write字段的取值为1时,控制SPI主控制器向SPI从设备中传输数据;当read字段的取值为1时,则控制SPI主控制器从SPI从设备中读取数据。并且判断SPI主控制器与SPI从设备进行数据交互的数据量大小是否满足预设条件,当数据量大小满足预设条件时,控制SPI主控制器进入空闲状态,继续等待下一个第一控制信息和第一指令信息。
其中判断SPI主控制器与SPI从设备进行数据交互的数据量是否满足预设条件的过程可以是:SPI主控制器与SPI从设备每交互一次数据,将第一控制信息中的data_cnt的取值加一,当data_cnt的取值达到预设数值时表明SPI主控制器与SPI从设备进行数据交互的数据量满足预设条件。在本发明实施例中,data_cnt的初始值为0,预设数值用于指示SPI主控制器与SPI从设备进行数据交互的最大数据量。
进一步在进行数据交互时可以根据第一控制信息中的cpha和cpol两个字段的取值选择基于第一控制信息生成的时钟信号的跳变沿,在跳变沿下控制SPI主控制器与SPI从设备进行数据交互。
304:当确定没有反馈信息时,基于第一控制信息,控制SPI主控制器与SPI从设备进行数据交互。
当确定没有反馈信息时,可以根据第一控制信息中的write和read字段的取值进入数据传输周期,以根据write和read字段的取值控制SPI主控制器与SPI从设备进行数据交互。
例如:当write字段的取值为1时,控制SPI主控制器向SPI从设备中传输数据;当read字段的取值为1时,则控制SPI主控制器从SPI从设备中读取数据。而当write和read字段的取值均为0时,则控制SPI主控制器和SPI从设备进入空闲状态,等待获取下一个第一指令信息。
请参阅图4,其示出了本发明实施例提供的信息处理方法在数据传输周期时SPI主控制器和SPI从设备之间的数据交互过程,可以包括以下步骤:
401:依据第一控制信息,判断SPI主控制器是否需要向SPI从设备传输数据和/或从SPI从设备读取数据,获得第一判断结果。具体可以通过对第一控制信息中的write和read字段的取值进行判断,当write字段的取值为1时,SPI主控制器需要向SPI从设备传输数据;当read字段的取值为1时,SPI主控制器需要从SPI从设备读取数据。
402:基于第一判断结果、第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互。
在本发明实施例中,通过第一控制信息中的start字段使能进入数据传输周期。当第一判断结果表明SPI主控制器需要向SPI从设备传输数据和/或从SPI从设备读取数据时,依据第一控制信息中的write和read字段的取值来控制SPI主控制器与SPI从设备之间的数据交互。并且还可以进一步判断SPI主控制器与SPI从设备进行数据交互的数据量大小是否满足预设条件,当数据量大小满足预设条件时,控制SPI主控制器进入空闲状态,继续等待下一个第一控制信息和第一指令信息。
其中判断SPI主控制器与SPI从设备进行数据交互的数据量是否满足预设条件的过程可以是:SPI主控制器与SPI从设备每交互一次数据,将第一控制信息中的data_cnt的取值加一,当data_cnt的取值达到预设数值时表明SPI主控制器与SPI从设备进行数据交互的数据量满足预设条件。在本发明实施例中,data_cnt的初始值为0,预设数值用于指示SPI主控制器与SPI从设备进行数据交互的最大数据量。
进一步在进行数据交互时可以根据第一控制信息中的cpha和cpol两个字段的取值选择基于第一控制信息生成的时钟信号的跳变沿,在跳变沿下控制SPI主控制器与SPI从设备进行数据交互。
当第一判断结果表明SPI主控制器不需要向SPI从设备传输数据以及从SPI从设备读取数据时,控制SPI主控制器与SPI从设备进行数据交互的过程可以参阅图5所示,可以包括以下步骤:
501:当第一判断结果表明SPI主控制器不需要向SPI从设备传输数据以及从SPI从设备读取数据时,控制SPI主控制器进入第一状态。
当第一控制信息中的write和read字段的取值均为0,表明SPI主控制器不需要向SPI从设备传输数据以及从SPI从设备读取数据,此时可以控制SPI主控制器进入第一状态。在本发明实施例中第一状态可以为空闲状态。
502:在第一状态下,检测第一控制信息或第一寄存器是否更新。其中第一控制信息或者第一寄存器更新表示在第一状态下,SPI主控制器与其他SPI从设备相连接并将要进行数据交互。
503:当检测到第一控制信息更新时,获取更新后的第一控制信息,基于获取的更新后的第一控制信息,控制SPI主控制器与SPI从设备进行数据交互。当检测到仅有第一控制信息更新时,可以基于更新后的第一控制信息控制SPI主控制器与SPI从设备进行数据交互。
在基于更新后的第一控制信息控制SPI主控制器与SPI从设备之间的数据交互时,可以通过第一控制信息中的write、read、data_cnt、cpha和cpol这几个字段控制双方的数据交互,具体过程可以参阅上述方法实施例中的说明,对此本发明实施例不再阐述。
504:当检测到第一寄存器更新时,基于第一控制信息,获取第一寄存器中的第二指令信息,将第二指令信息作为第一指令信息发送至SPI从设备,并执行基于第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互的步骤。其中基于第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互的过程可以参阅上述方法实施例中的介绍,对此本发明实施例不再说明。
请参阅图6,其示出了本发明实施例提供的信息处理方法的第三种流程图,在图1基础上还可以包括以下步骤:
105:基于第一控制信息,判断SPI主控制器与SPI从设备进行数据交互的数据量大小是否满足预设条件,获得第二判断结果。
其中判断SPI主控制器与SPI从设备进行数据交互的数据量是否满足预设条件的过程可以是:SPI主控制器与SPI从设备每交互一次数据,将第一控制信息中的data_cnt的取值加一,当data_cnt的取值达到预设数值时表明SPI主控制器与SPI从设备进行数据交互的数据量满足预设条件。在本发明实施例中,data_cnt的初始值为0,预设数值用于指示SPI主控制器与SPI从设备进行数据交互的最大数据量。
106:当第二判断结果表明数据量大小满足预设条件时,控制SPI主控制器进入第一状态。在进入第一状态后,检测第一控制信息或第一寄存器是否有更新,当检测到第一控制信息或第一寄存器更新后,从第一状态切换至第二状态,并获取更新后的第一控制信息,执行步骤102至104,以使SPI主控制器与其他SPI从设备进行数据交互。其中第一状态为空闲状态,第二状态则为工作状态。
与上述方法实施例相对应,本发明实施例还提供一种SPI主控制器,其结构示意图如图7所示,可以包括:第一获取单元11、第二获取单元12、发送单元13和控制单元14。其中,
第一获取单元11,用于获取第一控制信息,其中第一控制信息与SPI从设备相对应,用于控制SPI主控制器与SPI从设备之间的通信,SPI从设备与SPI主控制器相连接。
在本发明实施例中,第一控制信息包括SPI主控制器与SPI从设备通信时所使用的各种字段,例如包括命令格式、命令个数、传输数据个数和SPI时钟等字段,该第一控制信息可以记录在控制寄存器中,如表1所示。
表1 第一控制信息中的字段表
data_cnt | cmd_cnt | start | response | write | read | cpha | cpol |
其中,data_cnt:指示spi数据传输比特个数。
cmd_cnt:指示spi命令比特个数。
start:使能spi传输,在idle状态的情况下,跳过spi命令写入直接进入数据传输。
response:用于指示从从设备接收响应。
write:指示主控制器向slave设备写数据。
read:指示主控制器从slave中读数据。
cpha:指示spi时钟相位。
cpol:指示spi时钟极性。
上述这些字段的取值可以预先根据SPI从设备的参数要求写入到控制寄存器中,这样SPI主控制器在和某一个SPI从设备通信时,可以从控制寄存器中获取预先写入的当前与SPI主控制器进行通信的SPI从设备的第一控制信息。在获取第一控制信息时,需要从多个第一控制信息中查找到当前与SPI主控制器进行通信的SPI从设备的第一控制信息,因此控制寄存器除记录上述第一控制信息之外,还要为每个控制信息分配一个唯一标识符,以通过唯一标识符来从多个第一控制信息中查找到当前与SPI主控制器进行通信的SPI从设备的第一控制信息。
当然上述这些字段的取值也可以在SPI主控制器在和某一个SPI从设备通信时,实时写入控制寄存器中,并且控制寄存器中每次仅记录一个SPI从设备的第一控制信息,这样SPI主控制器在和某一个SPI从设备通信时,从控制寄存器中获取到的第一控制信息即是当前与SPI主控制器进行通信的SPI从设备的第一控制信。
第二获取单元12,用于基于第一控制信息,获取第一寄存器中的第一指令信息。目前SPI主控制器和SPI从设备之间的通信包括命令周期和数据传输周期,其中命令周期主要用于在SPI主控制器和SPI从设备之间传输命令,并根据传输的命令以及第一控制信息判断是否进入数据传输周期,数据传输周期则是用于在SPI主控制器和SPI从设备之间传输数据。
在本发明实施例中,从第一寄存器中获取的第一指令信息携带有SPI主控制器和SPI从设备之间的传输的命令内容。
发送单元13,用于将第一指令信息发送至SPI从设备。
控制单元14,用于基于第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互。在发送第一指令信息至SPI从设备后,会进一步判断是否接收到SPI从设备的反馈信息,以此判断结果决定是否进入数据传输周期。
从上述技术方案可以看出,第一控制信息与SPI从设备相对应,那么基于第一控制信息获取的第一指令信息也与SPI从设备相对应,通过与SPI从设备相对应的第一控制信息和第一指令信息控制SPI主控制器与SPI从设备进行数据交互可以使数据交互满足SPI从设备的要求,这样每个与SPI主控制器相连接的SPI从设备进行通信时,都可以基于自身的第一控制信息和第一指令信息来控制SPI主控制器与SPI从设备进行数据交互,以使数据交互满足自身要求,因此SPI主控制器在使用本发明实施例提供的信息处理装置时可以使其被多个SPI从设备共用,提高SPI主控制器的通用性。
请参阅图8,其示出了本发明实施例提供的信息处理装置的第二种流程图,在图7基础上还可以包括:信号生成单元15,用于基于第一控制信息,生成与SPI从设备相对应的时钟信号,并由发送单元13将时钟信号发送至SPI从设备。
相应的控制单元14在基于第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互时,可以基于第一控制信息以及第一指令信息,选择时钟信号的跳变沿,在选择的跳变沿下控制SPI主控制器与SPI从设备进行数据交互,跳变沿为时钟信号的上升沿或下降沿。这样当时钟信号达到上升沿或者下降沿时,基于第一控制信息以及第一指令信息控制SPI主控制器与SPI从设备进行数据交互。
并且跳变沿的选择可以基于第一控制信息中的cpha和cpol这两个字段进行选择,例如:如果cpol=0,时钟信号的空闲状态为低电平,此时选择的跳变沿为上升沿;如果cpol=1,时钟信号的空闲状态为高电平,此时选择的跳变沿为下降沿。而cpha则用于指示在第几个跳变沿采样数据。如果cpha=0,在时钟信号的第一个跳变沿采样数据;如果cpha=1,在时钟信号的第二个跳变沿采样数据。
通过上述技术方案,在选择的跳变沿下控制SPI主控制器与SPI从设备进行数据交互可以使双方交互满足SPI从设备每次传输数据时的时钟要求,进一步提高SPI主控制器的通用性。
在本发明实施例中,控制单元14的一种结构示意图如图9所示,用于在命令周期内控制SPI主控制器与SPI从设备进行数据交互,可以包括:确定子单元141、检测子单元142、第一控制子单元143和第二控制子单元144。其中,
确定子单元141,用于基于第一控制信息,确定是否有针对第一指令信息的反馈信息。其中针对第一指令信息的反馈信息用于指示在发送第一指令信息至SPI从设备后,SPI从设备是否需要向SPI主控制器反馈。
在本发明实施例中,第一指令信息中命令内容的比特数由第一控制信息中的cmd_cnt决定。确定子单元141确定是否有针对第一指令信息的反馈信息可以通过对上述response字段判断来确定,当response字段的取值为1时,表明有针对第一指令信息的反馈信息,且在发送第一指令信息至SPI从设备后立刻接收SPI从设备的反馈信息,此时需要继续检测是否接收到SPI从设备的反馈信息来决定是否进入数据传输周期。当response字段的取值为0时,表明没有针对第一指令信息的反馈信息,且在发送第一指令信息至SPI从设备后,SPI从设备未发送SPI从设备的反馈信息或者会在一定时间之后发送SPI从设备的反馈信息。
检测子单元142,用于当确定有反馈信息时,检测是否接收到SPI从设备的反馈信息,获得第一检测结果。
第一控制子单元143,用于当第一检测结果表明接收到SPI从设备的反馈信息时,基于第一控制信息,控制SPI主控制器与SPI从设备进行数据交互。在接收到SPI从设备的反馈信息后,第一控制子单元143可以根据第一控制信息中的write和read字段的取值进入数据传输周期,以根据write和read字段的取值控制SPI主控制器与SPI从设备进行数据交互。
例如:当write字段的取值为1时,控制SPI主控制器向SPI从设备中传输数据;当read字段的取值为1时,则控制SPI主控制器从SPI从设备中读取数据。并且判断SPI主控制器与SPI从设备进行数据交互的数据量大小是否满足预设条件,当数据量大小满足预设条件时,控制SPI主控制器进入空闲状态,继续等待下一个第一控制信息和第一指令信息。
其中判断SPI主控制器与SPI从设备进行数据交互的数据量是否满足预设条件的过程可以是:SPI主控制器与SPI从设备每交互一次数据,将第一控制信息中的data_cnt的取值加一,当data_cnt的取值达到预设数值时表明SPI主控制器与SPI从设备进行数据交互的数据量满足预设条件。在本发明实施例中,data_cnt的初始值为0,预设数值用于指示SPI主控制器与SPI从设备进行数据交互的最大数据量。
进一步在进行数据交互时可以根据第一控制信息中的cpha和cpol两个字段的取值选择基于第一控制信息生成的时钟信号的跳变沿,在跳变沿下控制SPI主控制器与SPI从设备进行数据交互。
第二控制子单元144,用于当确定没有反馈信息时,基于第一控制信息,控制SPI主控制器与SPI从设备进行数据交互。
当确定没有反馈信息时,第二控制子单元144可以根据第一控制信息中的write和read字段的取值进入数据传输周期,以根据write和read字段的取值控制SPI主控制器与SPI从设备进行数据交互。
例如:当write字段的取值为1时,控制SPI主控制器向SPI从设备中传输数据;当read字段的取值为1时,则控制SPI主控制器从SPI从设备中读取数据。而当write和read字段的取值均为0时,则控制SPI主控制器和SPI从设备进入空闲状态,等待获取下一个第一指令信息。
在本发明实施例中,控制单元14的一种结构示意图如图10所示,用于在数据传输周期内控制SPI主控制器与SPI从设备进行数据交互,可以包括:判断子单元145和控制子单元146。其中,
判断子单元145,用于依据第一控制信息,判断SPI主控制器是否需要向SPI从设备传输数据和/或从SPI从设备读取数据,获得第一判断结果。具体可以通过对第一控制信息中的write和read字段的取值进行判断,当write字段的取值为1时,SPI主控制器需要向SPI从设备传输数据;当read字段的取值为1时,SPI主控制器需要从SPI从设备读取数据。
控制子单元146,用于基于第一判断结果、第一控制信息以及第一指令信息,控制SPI主控制器与SPI从设备进行数据交互。
在本发明实施例中,通过第一控制信息中的start字段使能进入数据传输周期。当第一判断结果表明SPI主控制器需要向SPI从设备传输数据和/或从SPI从设备读取数据时,依据第一控制信息中的write和read字段的取值来控制SPI主控制器与SPI从设备之间的数据交互。并且还可以进一步判断SPI主控制器与SPI从设备进行数据交互的数据量大小是否满足预设条件,当数据量大小满足预设条件时,控制SPI主控制器进入空闲状态,继续等待下一个第一控制信息和第一指令信息。
其中判断SPI主控制器与SPI从设备进行数据交互的数据量是否满足预设条件的过程可以是:SPI主控制器与SPI从设备每交互一次数据,将第一控制信息中的data_cnt的取值加一,当data_cnt的取值达到预设数值时表明SPI主控制器与SPI从设备进行数据交互的数据量满足预设条件。在本发明实施例中,data_cnt的初始值为0,预设数值用于指示SPI主控制器与SPI从设备进行数据交互的最大数据量。
进一步在进行数据交互时可以根据第一控制信息中的cpha和cpol两个字段的取值选择基于第一控制信息生成的时钟信号的跳变沿,在跳变沿下控制SPI主控制器与SPI从设备进行数据交互。
在本发明实施例中,控制子单元146的一种结构示意图可以入图11所示,包括:状态控制子单元147、检测子单元148和获取子单元149。其中,
状态控制子单元147,用于当第一判断结果表明SPI主控制器不需要向SPI从设备传输数据以及从SPI从设备读取数据时,控制SPI主控制器进入第一状态。
当第一控制信息中的write和read字段的取值均为0,表明SPI主控制器不需要向SPI从设备传输数据以及从SPI从设备读取数据,此时可以控制SPI主控制器进入第一状态。在本发明实施例中第一状态可以为空闲状态。
检测子单元148,用于在第一状态下,检测第一控制信息或第一寄存器是否更新,并在检测到第一寄存器更新时触发第二获取单元12基于第一控制信息,获取第一寄存器中的第二指令信息,将第二指令信息作为第一指令信息。
获取子单元149,用于当检测到第一控制信息更新时,获取更新后的第一控制信息,并触发控制子单元146基于获取的更新后的第一控制信息,控制SPI主控制器与SPI从设备进行数据交互。当检测到仅有第一控制信息更新时,可以基于更新后的第一控制信息控制SPI主控制器与SPI从设备进行数据交互。
在基于更新后的第一控制信息控制SPI主控制器与SPI从设备之间的数据交互时,可以通过第一控制信息中的write、read、data_cnt、cpha和cpol这几个字段控制双方的数据交互,具体过程可以参阅上述方法实施例中的说明,对此本发明实施例不再阐述。
请参阅图12,其示出了本发明实施例提供的SPI主控制器的第三种结构示意图,在图7基础上,还可以包括:数据判断单元16和状态控制单元17。其中,
数据判断单元16,用于基于第一控制信息,判断SPI主控制器与SPI从设备进行数据交互的数据量大小是否满足预设条件,获得第二判断结果。
其中判断SPI主控制器与SPI从设备进行数据交互的数据量是否满足预设条件的过程可以是:SPI主控制器与SPI从设备每交互一次数据,将第一控制信息中的data_cnt的取值加一,当data_cnt的取值达到预设数值时表明SPI主控制器与SPI从设备进行数据交互的数据量满足预设条件。在本发明实施例中,data_cnt的初始值为0,预设数值用于指示SPI主控制器与SPI从设备进行数据交互的最大数据量。
状态控制单元17,用于当第二判断结果表明数据量大小满足预设条件时,控制SPI主控制器进入第一状态。在进入第一状态后,检测第一控制信息或第一寄存器是否有更新,当检测到第一控制信息或第一寄存器更新后,从第一状态切换至第二状态,并触发第一获取单元11获取更新后的第一控制信息,以使SPI主控制器与其他SPI从设备进行数据交互。其中第一状态为空闲状态,第二状态则为工作状态。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种信息处理方法及SPI主控制器进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1.一种信息处理方法,所述方法应用于串行***设备接口主控制器中,其特征在于,所述方法包括:
获取第一控制信息,其中所述第一控制信息与串行***设备接口从设备相对应,用于控制所述串行***设备接口主控制器与所述串行***设备接口从设备之间的通信,所述串行***设备接口从设备与所述串行***设备接口主控制器相连接;其中,所述第一控制信息包括串行***设备接口主控制器与串行***设备接口从设备通信时所使用的各种字段;
基于所述第一控制信息,获取第一寄存器中的第一指令信息;所述第一指令信息携带有串行***设备接口主控制器和串行***设备接口从设备之间的传输的命令内容;
将所述第一指令信息发送至所述串行***设备接口从设备;
基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
2.根据权利要求1所述的方法,其特征在于,在基于所述第一控制信息,获取第一寄存器中的第一指令信息之前,所述方法还包括:
基于所述第一控制信息,生成与所述串行***设备接口从设备相对应的时钟信号;
将所述时钟信号发送至所述串行***设备接口从设备。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互,包括:
基于所述第一控制信息以及所述第一指令信息,选择所述时钟信号的跳变沿,在选择的所述跳变沿下控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互,所述跳变沿为所述时钟信号的上升沿或下降沿。
4.根据权利要求1所述的方法,其特征在于,所述基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互,包括:
基于所述第一控制信息,确定是否有针对所述第一指令信息的反馈信息;
当确定有所述反馈信息时,检测是否接收到所述串行***设备接口从设备的所述反馈信息,获得第一检测结果;
当所述第一检测结果表明接收到所述串行***设备接口从设备的所述反馈信息时,基于所述第一控制信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互;
当确定没有所述反馈信息时,基于所述第一控制信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互,包括:
依据所述第一控制信息,判断所述串行***设备接口主控制器是否需要向所述串行***设备接口从设备传输数据和/或从所述串行***设备接口从设备读取数据,获得第一判断结果;
基于所述第一判断结果、所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
6.根据权利要求5所述的方法,其特征在于,当所述第一判断结果表明所述串行***设备接口主控制器不需要向所述串行***设备接口从设备传输数据以及从所述串行***设备接口从设备读取数据时,控制所述串行***设备接口主控制器进入第一状态;
在所述第一状态下,检测所述第一控制信息或所述第一寄存器是否更新;
当检测到所述第一控制信息更新时,获取更新后的第一控制信息,基于获取的所述更新后的第一控制信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互;
当检测到所述第一寄存器更新时,基于所述第一控制信息,获取所述第一寄存器中的第二指令信息,将所述第二指令信息作为所述第一指令信息发送至所述串行***设备接口从设备,并执行基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互的步骤。
7.根据权利要求1所述的方法,其特征在于,所述基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互之后,所述方法还包括:
基于所述第一控制信息,判断所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互的数据量大小是否满足预设条件,获得第二判断结果;
当所述第二判断结果表明数据量大小满足预设条件时,控制所述串行***设备接口主控制器进入第一状态。
8.一种串行***设备接口主控制器,其特征在于,所述串行***设备接口主控制器包括:
第一获取单元,用于获取第一控制信息,其中所述第一控制信息与串行***设备接口从设备相对应,用于控制所述串行***设备接口主控制器与所述串行***设备接口从设备之间的通信,所述串行***设备接口从设备与所述串行***设备接口主控制器相连接;其中,所述第一控制信息包括串行***设备接口主控制器与串行***设备接口从设备通信时所使用的各种字段;
第二获取单元,用于基于所述第一控制信息,获取第一寄存器中的第一指令信息;所述第一指令信息携带有串行***设备接口主控制器和串行***设备接口从设备之间的传输的命令内容;
发送单元,用于将所述第一指令信息发送至所述串行***设备接口从设备;
控制单元,用于基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
9.根据权利要求8所述的串行***设备接口主控制器,其特征在于,所述串行***设备接口主控制器还包括:
信号生成单元,用于基于所述第一控制信息,生成与所述串行***设备接口从设备相对应的时钟信号;
所述发送单元还用于将所述时钟信号发送至所述串行***设备接口从设备。
10.根据权利要求9所述的串行***设备接口主控制器,其特征在于,所述控制单元基于所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互,包括:
基于所述第一控制信息以及所述第一指令信息,选择所述时钟信号的跳变沿,在选择的所述跳变沿下控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互,所述跳变沿为所述时钟信号的上升沿或下降沿。
11.根据权利要求8所述的串行***设备接口主控制器,其特征在于,所述控制单元包括:确定子单元、检测子单元、第一控制子单元和第二控制子单元;其中,
所述确定子单元,用于基于所述第一控制信息,确定是否有针对所述第一指令信息的反馈信息;
所述检测子单元,用于当确定有所述反馈信息时,检测是否接收到所述串行***设备接口从设备的所述反馈信息,获得第一检测结果;
所述第一控制子单元,用于当所述第一检测结果表明接收到所述串行***设备接口从设备的所述反馈信息时,基于所述第一控制信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互;
所述第二控制子单元,用于当确定没有所述反馈信息时,基于所述第一控制信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
12.根据权利要求8所述的串行***设备接口主控制器,其特征在于,所述控制单元包括:判断子单元和控制子单元;其中,
所述判断子单元,用于依据所述第一控制信息,判断所述串行***设备接口主控制器是否需要向所述串行***设备接口从设备传输数据和/或从所述串行***设备接口从设备读取数据,获得第一判断结果;
所述控制子单元,用于基于所述第一判断结果、所述第一控制信息以及所述第一指令信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
13.根据权利要求12所述的串行***设备接口主控制器,其特征在于,所述控制子单元包括:
状态控制子单元,用于当所述第一判断结果表明所述串行***设备接口主控制器不需要向所述串行***设备接口从设备传输数据以及从所述串行***设备接口从设备读取数据时,控制所述串行***设备接口主控制器进入第一状态;
检测子单元,用于在所述第一状态下,检测所述第一控制信息或所述第一寄存器是否更新,并在检测到所述第一寄存器更新时触发所述第二获取单元基于所述第一控制信息,获取所述第一寄存器中的第二指令信息,将所述第二指令信息作为所述第一指令信息;
获取子单元,用于当检测到所述第一控制信息更新时,获取更新后的第一控制信息,并触发所述控制子单元基于获取的所述更新后的第一控制信息,控制所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互。
14.根据权利要求8所述的串行***设备接口主控制器,其特征在于,所述串行***设备接口主控制器还包括:
数据判断单元,用于基于所述第一控制信息,判断所述串行***设备接口主控制器与所述串行***设备接口从设备进行数据交互的数据量大小是否满足预设条件,获得第二判断结果;
状态控制单元,用于当所述第二判断结果表明数据量大小满足预设条件时,控制所述串行***设备接口主控制器进入第一状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410838461.6A CN105808492B (zh) | 2014-12-30 | 2014-12-30 | 一种信息处理方法及串行***设备接口主控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410838461.6A CN105808492B (zh) | 2014-12-30 | 2014-12-30 | 一种信息处理方法及串行***设备接口主控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105808492A CN105808492A (zh) | 2016-07-27 |
CN105808492B true CN105808492B (zh) | 2019-04-23 |
Family
ID=56980733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410838461.6A Active CN105808492B (zh) | 2014-12-30 | 2014-12-30 | 一种信息处理方法及串行***设备接口主控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105808492B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109901664B (zh) * | 2019-02-27 | 2020-03-27 | 苏州浪潮智能科技有限公司 | 提供时钟信号的方法、装置、***、设备及可读存储介质 |
CN110471881B (zh) * | 2019-07-29 | 2020-06-23 | 广芯微电子(广州)股份有限公司 | 一种实现多个从设备与spi主设备快速通讯方法 |
CN111782574A (zh) * | 2020-07-14 | 2020-10-16 | 北京四季豆信息技术有限公司 | 一种串行外设接口控制方法和串行外设接口控制器 |
CN112565036B (zh) * | 2020-11-24 | 2022-08-30 | 炬芯科技股份有限公司 | 数据传输方法、装置、存储介质及通信*** |
CN115525935B (zh) * | 2022-10-19 | 2023-05-30 | 北京万协通信息技术有限公司 | 多安全芯片的并发数据运算方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023942A (zh) * | 2009-09-09 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | Spi外设访问装置及方法 |
CN102023945A (zh) * | 2009-09-22 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | 基于串行***设备接口总线的设备及其数据传输方法 |
CN203930821U (zh) * | 2014-04-28 | 2014-11-05 | 武汉精测电子技术股份有限公司 | 能对单命令和批命令同时进行处理的spi总线控制*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7873774B2 (en) * | 2008-02-01 | 2011-01-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Connections and dynamic configuration of interfaces for mobile phones and multifunctional devices |
CN102279582B (zh) * | 2011-05-09 | 2013-08-07 | 王盛学 | 多单元组合式控制器 |
US8904078B2 (en) * | 2012-10-22 | 2014-12-02 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | High speed serial peripheral interface system |
-
2014
- 2014-12-30 CN CN201410838461.6A patent/CN105808492B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023942A (zh) * | 2009-09-09 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | Spi外设访问装置及方法 |
CN102023945A (zh) * | 2009-09-22 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | 基于串行***设备接口总线的设备及其数据传输方法 |
CN203930821U (zh) * | 2014-04-28 | 2014-11-05 | 武汉精测电子技术股份有限公司 | 能对单命令和批命令同时进行处理的spi总线控制*** |
Also Published As
Publication number | Publication date |
---|---|
CN105808492A (zh) | 2016-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105808492B (zh) | 一种信息处理方法及串行***设备接口主控制器 | |
CN107209743A (zh) | 串行总线的接收时钟校准 | |
CN104580376B (zh) | 在局域网中建立终端之间连接的方法、装置和*** | |
CN108111382A (zh) | 基于i3c总线的通信装置及其通信方法 | |
CN107590099A (zh) | 一种多主机访问从机的方法、扩展装置及存储介质 | |
CN105808374B (zh) | 一种快照处理方法及相关设备 | |
CN103631534B (zh) | 数据存储***以及其管理方法 | |
CN106888120A (zh) | 一种物联网管理的方法、装置及*** | |
CN105955513A (zh) | 信息处理方法、电子设备及无线鼠标 | |
US9043178B2 (en) | Operating method of sensor node, operating method of data sink in sensor network, and sensor network | |
CN104615558B (zh) | 一种数据传送方法及电子装置 | |
CN102904924A (zh) | 数据储存***及其操作方法 | |
CN103399832A (zh) | 总线间的乱序返回数据的归序方法 | |
CN104375963B (zh) | 基于缓存一致性的控制***和方法 | |
CN103324727A (zh) | 分享控制方法及*** | |
CN101894071A (zh) | 一种机顶盒嵌入式浏览器集成测试方法及*** | |
CN104081679B (zh) | 近场通信方法和近场通信设备 | |
CN107241245A (zh) | 一种设备连接方法和数据转发设备 | |
CN104142902B (zh) | 用于耦合fpga 模块的自适应接口 | |
CN110365544A (zh) | 一种lora集中器及其数据传输方法、*** | |
CN107807889A (zh) | 一种usb设备及usb设备驱动初始化的方法 | |
CN106584862B (zh) | 一种内置Web服务的3D打印WIFI控制***及其控制方法 | |
CN104375967B (zh) | 一种应用于pci‑e的流量控制方法、设备及*** | |
CN105282647B (zh) | 一种mpp音箱控制方法及接入控制器 | |
CN103236962B (zh) | 现场总线传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |