CN110471881A - 一种实现多个从设备与spi主设备快速通讯方法 - Google Patents

一种实现多个从设备与spi主设备快速通讯方法 Download PDF

Info

Publication number
CN110471881A
CN110471881A CN201910688556.7A CN201910688556A CN110471881A CN 110471881 A CN110471881 A CN 110471881A CN 201910688556 A CN201910688556 A CN 201910688556A CN 110471881 A CN110471881 A CN 110471881A
Authority
CN
China
Prior art keywords
equipment
configuration
selector
register group
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.)
Granted
Application number
CN201910688556.7A
Other languages
English (en)
Other versions
CN110471881B (zh
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.)
Guangxin Microelectronics (guangzhou) Co Ltd
Original Assignee
Guangxin Microelectronics (guangzhou) 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 Guangxin Microelectronics (guangzhou) Co Ltd filed Critical Guangxin Microelectronics (guangzhou) Co Ltd
Priority to CN201910688556.7A priority Critical patent/CN110471881B/zh
Publication of CN110471881A publication Critical patent/CN110471881A/zh
Application granted granted Critical
Publication of CN110471881B publication Critical patent/CN110471881B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明公开了一种实现多个从设备与SPI主设备快速通讯方法,包括获取第一从设备的第一设备信息,将第一设备信息发送至预设的寄存器组配置模块,以控制预设的寄存器组配置模块根据第一设备信息生成多个配置信息,并将多个配置信息发送至选择器模块;获取第一从设备的第一信号,并将第一信号发送至选择器模块,以控制选择器模块根据多个配置信息,选择对应的第一配置寄存器组;通过第一配置寄存器组将对应的参数信息发送至SPI主控逻辑模块,以使SPI主控逻辑模块将参数信息作为当前通信的参数配置,能够减少主设备与从设备直接通信的设置时间,加快主从设备的通信响应速度。

Description

一种实现多个从设备与SPI主设备快速通讯方法
技术领域
本发明涉及电子技术领域,尤其涉及一种实现多个从设备与SPI主设备快速通讯方法。
背景技术
随着物联网技术的快速发展,越来越多的物联网设备正在快速进入人们的生活。SPI作为物联网中微控制器芯片(MCU)、传感器芯片和射频芯片之间标准通信接口之一,越来越受到人们的关注。MCU通常为物联网中的主控芯片,在应用当中,往往需要通过SPI接口连接多个传感器芯片以及射频芯片。如何能通过一个SPI主模块,快速的与不同配置的多个从设备进行通信,已经成为当前MCU芯片设计中的核心技术点之一。
现有SPI主设备设计的技术中,如图1所示,SSNx是SPI从设备选择信号,每一个SSNx信号可以与一个从设备连接,控制主设备是否与该从设备通信。对每一个从设备,MOSI信号和CLK信号复用。MISOx信号为从设备输出给主设备的数据信号,每一个从设备对应一根,与SSNx信号相对应。图1中CPHA、CPOL是SPI标准协议中的控制字,Endian是SPI数据传输过程中使用的大小端设置,BaudRate是通信的波特率设置。
现有技术中CPHA/CPOL/Endian/BandRate这些设置寄存器仅仅有一组,在主设备在与多个支持不同配置的从设备进行通信前,需要软件更改这些寄存器的配置,增加了通信的时间。
发明内容
本发明实施例的目的是提供一种实现多个从设备与SPI主设备快速通讯方法,能够减少主设备与从设备直接通信的设置时间,加快主从设备的通信响应速度。
为实现上述目的,本发明实施例提供了一种实现多个从设备与SPI主设备快速通讯方法,包括以下步骤:
获取所述第一从设备的第一设备信息,将所述第一设备信息发送至预设的寄存器组配置模块,以控制所述预设的寄存器组配置模块根据所述第一设备信息生成多个配置信息,并将所述多个配置信息发送至选择器模块;
获取所述第一从设备的第一信号,并将所述第一信号发送至所述选择器模块,以控制所述选择器模块根据所述多个配置信息,选择对应的第一配置寄存器组;
通过所述第一配置寄存器组将对应的参数信息发送至SPI主控逻辑模块,以使所述SPI主控逻辑模块将所述参数信息作为当前通信的参数配置。
进一步的,所述预设的寄存器组配置模块包括多个配置寄存器组,每个配置寄存器组均包括采样边沿设置寄存器CPHA、时钟极性配置寄存器CPOL、大小端设置寄存器Endian,以及波特率配置寄存器BandRate。
进一步的,一个配置寄存器组对应一个从设备。
进一步的,SPI主设备在与不同的从设备通信时,可通过总线件对每个配置寄存器组中的寄存器进行参数设置。
进一步的,所述选择器模块包括4个选择器。
进一步的,所述4个选择器分别为CPHA选择器、CPOL选择器、Endian选择器,以及BandRate选择器。
实施本发明实施例,具有如下有益效果:
本发明提供一种实现多个从设备与SPI主设备快速通讯方法,包括获取第一从设备的第一设备信息,将第一设备信息发送至预设的寄存器组配置模块,以控制预设的寄存器组配置模块根据第一设备信息生成多个配置信息,并将多个配置信息发送至选择器模块;获取第一从设备的第一信号,并将第一信号发送至选择器模块,以控制选择器模块根据多个配置信息,选择对应的第一配置寄存器组;通过第一配置寄存器组将对应的参数信息发送至SPI主控逻辑模块,以使SPI主控逻辑模块将参数信息作为当前通信的参数配置,能够减少主设备与从设备直接通信的设置时间,加快主从设备的通信响应速度。
附图说明
图1是现有技术中的支持多从设备的SPI主设备的电路结构示意图;
图2是本发明提供的实现多个从设备与SPI主设备快速通讯方法的一种实施例的流程示意图;
图3是本发明提供的实现多个从设备与SPI主设备快速通讯方法的一种实施例的电路结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图2,图2是本发明提供的实现多个从设备与SPI主设备快速通讯方法的一种实施例的流程示意图。如图2所示,该认证方法包括步骤S1至步骤S3,各步骤具体如下:
S1,获取第一从设备的第一设备信息,将所述第一设备信息发送至预设的寄存器组配置模块,以控制所述预设的寄存器组配置模块根据所述第一设备信息生成多个配置信息,并将所述多个配置信息发送至选择器模块。
在本实施例中,所述预设的寄存器组配置模块包括多个配置寄存器组,每个配置寄存器组均包括采样边沿设置寄存器CPHA、时钟极性配置寄存器CPOL、大小端设置寄存器Endian,以及波特率配置寄存器BandRate。
其中,一个配置寄存器组对应一个从设备,每个寄存器组分别对每个支持的从设备的传输进行设置。
需要说明的是,SPI主设备在与不同的从设备通信时,可通过总线件对每个配置寄存器组中的寄存器进行参数设置。
S2,获取所述第一从设备的第一信号,并将所述第一信号发送至所述选择器模块,以控制所述选择器模块根据所述多个配置信息,选择对应的第一配置寄存器组。
在本实施例中,所述选择器模块包括4个选择器,所述4个选择器分别为CPHA选择器、CPOL选择器、Endian选择器,以及BandRate选择器。
具体的,选择器1的每个输入与每个寄存器组中的CPHA相连接,选择器2的输入与每个寄存器组中的CPOL相连接,选择器3的输入与每个寄存器组中的Endian相连接,选择器4的输入与每个寄存器组中的BandRate相连接。
每个选择器的输出均由SSNx信号(从选择信号)控制,根据选择当前需要与不同的从通信,即SSNx信号的不同,来选择每个选择器的输出,每个选择器的输出信号,作为SPI主控逻辑当前的参数配置。
需要说明的是,SSNx信号在大多数设计方案中来自寄存器,软件可以通过系统总线对其编程控制。CPHA/CPOL/Endian/BandRate这些均为SPI主设备控制寄存器,可以由软件进行配置,其值在不同从设备中可能支持的方式也有差别。主设备在和不同的从设备通信时,需要根据从设备支持的方式不同,由软件通过总线件对其进行设置。
S3,通过所述第一配置寄存器组将对应的参数信息发送至SPI主控逻辑模块,以使所述SPI主控逻辑模块将所述参数信息作为当前通信的参数配置。
请参见图3,图3是本发明提供的实现多个从设备与SPI主设备快速通讯方法的一种实施例的电路结构示意图,具体诠释了本发明方法的工作原理:
CPHAx/CPOLx/Endianx/BandRatex寄存器组是对现有技术方案拓展的寄存器组,它的标号与从设备选择信号SSNx相对应。每一组CPHAx/CPOLx/Endianx/BandRatex寄存器与选择器(MUX)的一个输入相连接,MUX的输出由SSNx信号控制。当主设备选择与标号为a的从设备进行通信时,MUX根据SSNa信号,选择CPHAa/CPOLa/Endiana/BandRatea寄存器组作为输出,发送给SPI Master Control Logic模块作为当前使用的配置。
主设备在与从设备通信前,需要设置所有需要与主设备通信的CPHAx/CPOLx/Endianx/BandRatex寄存器组的值。在主设备和从设备在通信的过程中,主设备不再需要对CPHAx/CPOLx/Endianx/BandRatex寄存器组进行设置,仅需要按需求选择当前与之通信的从设备即可,MUX选择器会根据SSNx信号自动选择当前哪个CPHAx/CPOLx/Endianx/BandRatex寄存器组的值作为当前使用的寄存器组。
由上可见,本发明实施例提供的一种实现多个从设备与SPI主设备快速通讯方法,包括获取第一从设备的第一设备信息,将第一设备信息发送至预设的寄存器组配置模块,以控制预设的寄存器组配置模块根据第一设备信息生成多个配置信息,并将多个配置信息发送至选择器模块;获取第一从设备的第一信号,并将第一信号发送至选择器模块,以控制选择器模块根据多个配置信息,选择对应的第一配置寄存器组;通过第一配置寄存器组将对应的参数信息发送至SPI主控逻辑模块,以使SPI主控逻辑模块将参数信息作为当前通信的参数配置,采用本发明提供的实施例,具有如下有益效果:
通过对每一个从设备,增加一组CPHAx/CPOLx/Endianx/BandRatex寄存器,使得主设备在与不同的从设备通信前,不需要软件修改CPHA/CPOL/Endian/BandRate寄存器进行设置,减少了通信设置时间,加快了主从设备的通信响应速度。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (6)

1.一种实现多个从设备与SPI主设备快速通讯方法,其特征在于,包括以下步骤:
获取第一从设备的第一设备信息,将所述第一设备信息发送至预设的寄存器组配置模块,以控制所述预设的寄存器组配置模块根据所述第一设备信息生成多个配置信息,并将所述多个配置信息发送至选择器模块;
获取所述第一从设备的第一信号,并将所述第一信号发送至所述选择器模块,以控制所述选择器模块根据所述多个配置信息,选择对应的第一配置寄存器组;
通过所述第一配置寄存器组将对应的参数信息发送至SPI主控逻辑模块,以使所述SPI主控逻辑模块将所述参数信息作为当前通信的参数配置。
2.如权利要求1所述的实现多个从设备与SPI主设备快速通讯方法,其特征在于,所述预设的寄存器组配置模块包括多个配置寄存器组,每个配置寄存器组均包括采样边沿设置寄存器CPHA、时钟极性配置寄存器CPOL、大小端设置寄存器Endian,以及波特率配置寄存器BandRate。
3.如权利要求2所述的实现多个从设备与SPI主设备快速通讯方法,其特征在于,一个配置寄存器组对应一个从设备。
4.如权利要求3所述的实现多个从设备与SPI主设备快速通讯方法,其特征在于,SPI主设备在与不同的从设备通信时,可通过总线件对每个配置寄存器组中的寄存器进行参数设置。
5.如权利要求4所述的实现多个从设备与SPI主设备快速通讯方法,其特征在于,所述选择器模块包括4个选择器。
6.如权利要求5所述的实现多个从设备与SPI主设备快速通讯方法,其特征在于,所述4个选择器分别为CPHA选择器、CPOL选择器、Endian选择器,以及BandRate选择器。
CN201910688556.7A 2019-07-29 2019-07-29 一种实现多个从设备与spi主设备快速通讯方法 Active CN110471881B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910688556.7A CN110471881B (zh) 2019-07-29 2019-07-29 一种实现多个从设备与spi主设备快速通讯方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910688556.7A CN110471881B (zh) 2019-07-29 2019-07-29 一种实现多个从设备与spi主设备快速通讯方法

Publications (2)

Publication Number Publication Date
CN110471881A true CN110471881A (zh) 2019-11-19
CN110471881B CN110471881B (zh) 2020-06-23

Family

ID=68509640

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910688556.7A Active CN110471881B (zh) 2019-07-29 2019-07-29 一种实现多个从设备与spi主设备快速通讯方法

Country Status (1)

Country Link
CN (1) CN110471881B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021194637A1 (en) * 2020-03-24 2021-09-30 Microchip Technology Incorporated A method and system for enhanced spi communication

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102023942A (zh) * 2009-09-09 2011-04-20 鸿富锦精密工业(深圳)有限公司 Spi外设访问装置及方法
CN102262604A (zh) * 2011-07-25 2011-11-30 中兴通讯股份有限公司 一种并发访问方法、系统及接口装置
CN102541780A (zh) * 2011-12-15 2012-07-04 苏州国芯科技有限公司 一种多数据流通道dma系统
CN104536917A (zh) * 2015-01-19 2015-04-22 中国电子科技集团公司第二十四研究所 应用于fpaa的基于存储器的多功能动态配置电路
CN105808492A (zh) * 2014-12-30 2016-07-27 联想(北京)有限公司 一种信息处理方法及串行外围设备接口主控制器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102023942A (zh) * 2009-09-09 2011-04-20 鸿富锦精密工业(深圳)有限公司 Spi外设访问装置及方法
CN102262604A (zh) * 2011-07-25 2011-11-30 中兴通讯股份有限公司 一种并发访问方法、系统及接口装置
CN102541780A (zh) * 2011-12-15 2012-07-04 苏州国芯科技有限公司 一种多数据流通道dma系统
CN105808492A (zh) * 2014-12-30 2016-07-27 联想(北京)有限公司 一种信息处理方法及串行外围设备接口主控制器
CN104536917A (zh) * 2015-01-19 2015-04-22 中国电子科技集团公司第二十四研究所 应用于fpaa的基于存储器的多功能动态配置电路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021194637A1 (en) * 2020-03-24 2021-09-30 Microchip Technology Incorporated A method and system for enhanced spi communication
US11308023B2 (en) 2020-03-24 2022-04-19 Microchip Technology Incorporated Method and system for enhanced SPI communication

Also Published As

Publication number Publication date
CN110471881B (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
CN104954096B (zh) 一种一主多从的高速同步串行通信数据传输方法
CN108390433A (zh) 快速充电方法、电源适配器和移动终端
CN108363581B (zh) 集成电路芯片的数据写入方法、系统、装置、设备及介质
CN110399317A (zh) 一种嵌入式系统的软件自适应的多功能控制器
CN108762971A (zh) 一种看门狗电路的实现方法及系统
CN110413558A (zh) 一种实现低功耗串口模块动态分频方法
CN110471881A (zh) 一种实现多个从设备与spi主设备快速通讯方法
US7418528B2 (en) Multimode, multiline data transfer system and method of operating the same
CN110120877A (zh) 一种交换芯片的配置电路及交换芯片的参数的配置方法
CN104243246A (zh) 一种基于ZigBee技术的FlexRay总线测试与优化方法及装置
CN107070547B (zh) 一种具有故障监控能力的cpci型千兆以太网装置
CN106227691B (zh) 一种基于mcu之间的对等双向单线串行通信方法
CN214480671U (zh) 一种基于spi通讯的一对多通讯电路
CN116126092A (zh) 时钟供应方法、系统、服务器及存储介质
CN209842606U (zh) 一种支持与多个从设备快速通讯的spi主设备
CN210405365U (zh) 多协议聚合传输装置及系统
CN211124035U (zh) 一种pam4光模块i2c通信系统
CN111212000B (zh) 一种基于PXIe总线的交换背板
CN210270888U (zh) 一种单总线通信电路
CN103001901A (zh) 一种基于mdpcm的集成电路高速数字接口模块
CN107168923A (zh) 一种配置多个fpga的装置及方法
CN101989194A (zh) 无线通讯模块二次开发方法
CN206470748U (zh) 数据传输装置及喷墨打印系统
CN117251403B (zh) 一种spi协议主从设备的通讯模式配置方法及装置
CN111404631A (zh) 一种lvds高速串行通信时钟同步实现方法及系统

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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A fast communication method between multiple slave devices and SPI master devices

Effective date of registration: 20201010

Granted publication date: 20200623

Pledgee: Bank of China Limited Guangzhou Pearl River Branch

Pledgor: UNICMICRO (GUANGZHOU) Co.,Ltd.

Registration number: Y2020440000309

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20211221

Granted publication date: 20200623

Pledgee: Bank of China Limited Guangzhou Pearl River Branch

Pledgor: UNICMICRO (GUANGZHOU) Co.,Ltd.

Registration number: Y2020440000309