CN117234974B - 一种通信系统、通信方法及存储介质 - Google Patents
一种通信系统、通信方法及存储介质 Download PDFInfo
- Publication number
- CN117234974B CN117234974B CN202311497099.6A CN202311497099A CN117234974B CN 117234974 B CN117234974 B CN 117234974B CN 202311497099 A CN202311497099 A CN 202311497099A CN 117234974 B CN117234974 B CN 117234974B
- Authority
- CN
- China
- Prior art keywords
- spi
- canfd
- data
- slave
- port
- 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 92
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims description 20
- 235000015429 Mirabilis expansa Nutrition 0.000 claims description 11
- 244000294411 Mirabilis expansa Species 0.000 claims description 11
- 235000013536 miso Nutrition 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 description 15
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
Classifications
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Information Transfer Systems (AREA)
Abstract
本申请公开了一种通信系统、通信方法及存储介质,通信系统包括多个SPI主机、一个SPI从机和CANFD模块,SPI主机连接SPI从机,CANFD模块包括CANFD缓冲器、CANFD控制寄存器、CANFD控制器和CANFD收发器,SPI从机连接CANFD缓冲器,CANFD缓冲器连接CANFD控制器,SPI从机连接CANFD控制寄存器,CANFD控制寄存器连接CANFD控制器,CANFD控制器连接CANFD缓冲器,CANFD缓冲器连接CANFD总线。
Description
技术领域
本申请涉及汽车总线通信技术领域,特别涉及一种通信系统、通信方法及存储介质。
背景技术
在科技日益发展的今天,新能源汽车的发展越来越快,智能化越来越高,车身元器件越多对器件的相互通信速度需求也越来越高。
然而现有的新能源汽车使用CAN接口作为汽车各部件通信接口,其数据传输速度最多只能达到1Mb/s,往往还不能达到1Mb/s,在新能源汽车控制芯片使用较多的情况下其相互间通信速度较低,会影响到新能源汽车的性能和安全。而其他通信接口如SPI,其数据传输速度能够达到20Mb/s,但是其只能以一主多从的结构使用,不能满足新能源汽车的多个控制芯片互相通信的需求。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种通信系统、通信方法及存储介质,能够解决传统的汽车总线通信技术无法满足多个控制芯片之间快速通信的需求的问题。
根据本申请第一方面实施例的通信系统,包括:
多个SPI主机;
一个SPI从机,所述SPI主机连接所述SPI从机;
CANFD模块,所述CANFD模块包括CANFD缓冲器、CANFD控制寄存器、CANFD控制器和CANFD收发器,所述SPI从机连接所述CANFD缓冲器,所述CANFD缓冲器连接所述CANFD控制器,所述SPI从机连接所述CANFD控制寄存器,所述CANFD控制寄存器连接所述CANFD控制器,所述CANFD控制器连接所述CANFD缓冲器,所述CANFD缓冲器连接CANFD总线。
根据本申请实施例的通信系统,至少具有如下有益效果:
多个SPI主机通过SPI从机连接CANFD模块,搭建多主一从的架构,再通过CANFD模块挂在CANFD总线上,SPI主机能在CANFD总线上收发数据,从而进行多个SPI主机之间的数据传输。本申请实施例的通信系统,相较于传统的汽车总线通信技术,采用通信速率更快的SPI总线技术,以及通信速度更快的CANFD总线,实现多个SPI主机之间快速通信。
根据本申请的一些实施例,所述SPI主机的第一SPICLK端口连接所述SPI从机的第二SPICLK端口,所述SPI主机的MOSI端口连接所述SPI从机的SDI端口,所述SPI主机的MISO端口连接所述SPI从机的SDO端口,所述SPI主机的第一nCS端口连接所述SPI从机的第二nCS端口,所述SPI主机的第一nARB端口连接所述SPI从机的第二nARB端口。
根据本申请第二方面实施例的通信方法,包括:
目标SPI主机发送片选信号给SPI从机,所述目标SPI主机为需进行通信的SPI主机,所述片选信号用于表征所述目标SPI主机与所述SPI从机建立通信连接的请求;
所述SPI从机发送第一仲裁信号给所述目标SPI主机,所述第一仲裁信号用于表征所述片选信号有效,所述目标SPI主机与所述SPI从机通信连接成功;
所述目标SPI主机发送第一控制信号给所述SPI从机,所述第一控制信号包括数据发送指令和待发送数据,所述数据发送指令用于控制所述CANFD模块将所述待发送数据发送到CANFD总线上;
所述SPI从机根据所述数据发送指令,控制所述CANFD模块将所述待发送数据发送到所述CANFD总线上;
所述目标SPI主机发送第二控制信号给所述SPI从机,所述第二控制信号包括数据接收指令和数据读取指令,所述数据接收指令用于控制所述CANFD模块从所述CANFD总线接收待接收数据,所述数据读取指令用于控制所述SPI从机从所述CANFD模块读取所述待接收数据;
所述SPI从机根据所述数据接收指令,控制所述CANFD模块从所述CANFD总线上接收所述待接收数据;
所述SPI从机根据所述数据读取指令,从所述CANFD模块读取所述待接收数据;
所述SPI从机将所述待接收数据发送给所述目标SPI主机。
根据本申请第二方面实施例的通信方法,至少具有如下有益效果:
多个SPI主机通过SPI从机连接CANFD模块,搭建多主一从的架构,再通过CANFD模块挂在CANFD总线上,SPI主机能在CANFD总线上收发数据,从而进行多个SPI主机之间的数据传输。本申请实施例的通信方法,相较于传统的汽车总线通信技术,采用通信速率更快的SPI总线技术,以及通信速度更快的CANFD总线,实现多个SPI主机之间快速通信。
根据本申请的一些实施例,还包括:
若所述SPI从机同时接收到多个所述目标SPI主机发送的片选信号,所述SPI从机根据优先级对多个所述目标SPI主机从高到低进行排序;
所述SPI从机发送所述第一仲裁信号给优先级最高的所述目标SPI主机;
所述SPI从机发送第二仲裁信号给其余的所述目标SPI主机,所述第二仲裁信号用于表征所述片选信号无效,所述目标SPI主机与所述SPI从机通信连接不成功。
根据本申请的一些实施例,所述SPI主机的第一nCS端口连接所述SPI从机的第二nCS端口,所述目标SPI主机发送片选信号给SPI从机,包括:所述目标SPI主机将所述第一nCS端口电平拉低,所述第一nCS端口输出所述片选信号给所述SPI从机的第二nCS端口。
根据本申请的一些实施例,所述SPI主机的第一nARB端口连接所述SPI从机的第二nARB端口,所述SPI从机发送第一仲裁信号给所述目标SPI主机,包括:所述SPI从机将第二nARB端口电平拉低,所述SPI从机发送所述第一仲裁信号给所述目标SPI主机的第二nARB端口。
根据本申请的一些实施例,所述SPI主机的第一SPICLK端口连接所述SPI从机的第二SPICLK端口,所述SPI主机的MOSI端口连接所述SPI从机的SDI端口,所述SPI主机的MISO端口连接所述SPI从机的SDO端口,所述目标SPI主机发送第一控制信号给所述SPI从机之前,还包括:
所述目标SPI主机配置所述第一SPICLK端口和所述MOSI端口为SPI输出端口,所述目标SPI主机配置所述MISO端口为SPI输入端口。
根据本申请的一些实施例,所述SPI从机根据所述数据发送指令,控制所述CANFD模块将所述待发送数据发送到所述CANFD总线上,包括:
所述SPI从机将所述数据发送指令写入CANFD控制寄存器,并将所述待发送数据写入所述CANFD缓冲器;
所述CANFD控制器根据所述数据发送指令,通过CANFD收发器将所述待发送数据发送到CANFD总线上。
根据本申请的一些实施例,所述SPI从机根据所述数据接收指令,控制所述CANFD模块从所述CANFD总线上接收所述待接收数据,包括:
所述SPI从机将所述数据接收指令写入CANFD控制寄存器;
所述CANFD控制器根据所述数据接收指令,通过CANFD收发器从所述CANFD总线上接收待接收数据。
根据本申请第三方面实施例的计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时用于实现如上述的通信方法。
根据本申请第三方面实施例的计算机可读存储介质,至少具有如下有益效果:
多个SPI主机通过SPI从机连接CANFD模块,搭建多主一从的架构,再通过CANFD模块挂在CANFD总线上,SPI主机能在CANFD总线上收发数据,从而进行多个SPI主机之间的数据传输。本申请实施例的计算机可读存储介质,相较于传统的汽车总线通信技术,采用通信速率更快的SPI总线技术,以及通信速度更快的CANFD总线,实现多个SPI主机之间快速通信。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
下面结合附图和实施例对本申请做进一步的说明,其中:
图1为本申请一实施例中通信系统的结构示意图;
图2为本申请一实施例中SPI主机与SPI从机通信时的端口控制流程图;
图3为本申请一实施例中SPI主机与SPI从机的通信格式示意图;
图4为本申请一实施例中通信方法的流程图;
图5为本申请一实施例中发送第一仲裁信号的流程图;
图6为本申请一实施例中SPI从机控制CANFD模块发送数据的流程图;
图7为本申请一实施例中SPI从机控制CANFD模块接收数据的流程图;
附图标记:
SPI主机100、
SPI从机200、
CANFD模块300、CANFD缓冲器310、CANFD控制寄存器320、CANFD控制器330、CANFD收发器340。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
在本申请的描述中,需要理解的是,涉及到方位描述,例如上、下等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
在本申请的描述中,多个指的是两个以上。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本申请的描述中,除非另有明确的限定,设置、安装、电性连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本申请中的具体含义。
下面参照图1至图7描述根据本申请实施例的一种通信系统、通信方法及存储介质。
根据本申请一实施例的通信系统,如图1所示,包括:多个SPI主机100、一个SPI从机200和CANFD模块300,SPI主机100连接SPI从机200。CANFD模块300包括CANFD缓冲器310、CANFD控制寄存器320、CANFD控制器330和CANFD收发器340,SPI从机200连接CANFD缓冲器310,CANFD缓冲器310连接CANFD控制器330,SPI从机200连接CANFD控制寄存器320,CANFD控制寄存器320连接CANFD控制器330,CANFD控制器330连接CANFD缓冲器310,CANFD缓冲器310连接CANFD总线。
本实施例中,多个SPI主机100通过SPI从机200连接CANFD模块300,搭建多主一从的架构,再通过CANFD模块300挂在CANFD总线上,SPI主机100能在CANFD总线上收发数据,从而进行多个SPI主机100之间的数据传输。本申请实施例的通信系统,相较于传统的汽车总线通信技术,采用通信速率更快的SPI总线技术,以及通信速度更快的CANFD总线,实现多个SPI主机100之间快速通信。SPI主机100为MCU。
本申请的一实施例,SPI主机100的第一SPICLK端口连接SPI从机200的第二SPICLK端口,SPI主机100的MOSI端口连接SPI从机200的SDI端口,SPI主机100的MISO端口连接SPI从机200的SDO端口,SPI主机100的第一nCS端口连接SPI从机200的第二nCS端口,SPI主机100的第一nARB端口连接SPI从机200的第二nARB端口。
本实施例中,SPI从机200的第二SPICLK端口为带内部上拉电阻的SPI时钟输入端口,用于接收SPI主机100的第一SPICLK端口输出的时钟信号。SPI从机200的SDI端口为SPI数据输入端口,用于接收SPI主机100的MOSI端口发送的数据。SPI从机200的SDO端口为SPI数据输出端口,用于发送数据到SPI主机100的MISO端口。SPI从机200的第二nCS端口用于接收SPI主机100的第一nCS端口发送的片选信号,SPI主机100的第一nCS端口带内部上拉电阻,当第一nCS端口拉低时,发送片选信号,即片选信号为低电平信号。SPI从机200的第二nARB端口为仲裁信号输出端口,SPI从机200的第二nARB端口拉低,则发送第一仲裁信号给SPI主机100的第一nARB端口,即第一仲裁信号为低电平信号。
可以理解的是,如图2所示,当SPI主机100为空闲状态时,第一nCS端口为高电平,第一nARB端口为高电平。当SPI主机100请求通信时,拉低第一nCS端口,发送片选信号给SPI从机200。SPI从机200拉低第二nARB端口,发送第一仲裁信号给SPI主机100的第一nARB端,SPI主机100的第一nARB端被拉低,SPI主机100与SPI从机200建立通信有效。
可以理解的是,CANFD缓冲器310包括接收缓冲器和发送缓冲器,接收缓冲器、发送缓冲器和控制寄存器地址区域,如表1所示。
表1.CANFD控制寄存器320、接收缓冲器和发送缓冲器地址表
SPI主机100与SPI从机200的通信格式如图3所示,其中,数据传输中,SDI输入的CMD_i[2:0]表示为写数据或读数据;ADDR_i[13:0]表示为写数据或读数据的起始地址;LENGTH[15:0]表示为写数据或读数据地址长度;WRITE[15:0]表示对起始地址写入的第一个数据,如果是读数据,则该数据忽略。数据传输中,SDO输出的第一帧16bit忽略;CMD_o[2:0]表示SPI主机100对CANFD模块300操作的命令,正常情况等于SDI写入的CMD_i[2:0];ADDR_o[12:0]表示SPI主机100对CANFD模块300操作的起始地址,正常情况等于SDI写入的ADDR_i[12:0];READ DATA[15:0]表示起始地址读出的第一个数据,如果是写数据操作,则该数据忽略。
需要说明的,SPI从机200具有多个与SPI主机100一一对应第二nARB端口,第二nARB端口与对应的SPI主机100的第一nARB端口连接。
本申请一实施例的通信方法,如图4所示,包括但不限于步骤S100、步骤S200、步骤S300、步骤S400、步骤S500、步骤S600、步骤S700和步骤S800。
步骤S100:目标SPI主机100发送片选信号给SPI从机200,目标SPI主机100为需进行通信的SPI主机100,片选信号用于表征目标SPI主机100与SPI从机200建立通信连接的请求。
本步骤中,目标SPI主机100发送片选信号给SPI从机200,请求与SPI从机200建立通信连接。
步骤S200:SPI从机200发送第一仲裁信号给目标SPI主机100,第一仲裁信号用于表征片选信号有效,目标SPI主机100与SPI从机200通信连接成功。
本步骤中,SPI从机200若处于空闲状态,则发送第一仲裁信号给目标SPI主机100,表示通信连接有效,目标SPI主机100接收到第一仲裁信号后开始向SPI从机200发送数据。
步骤S300:目标SPI主机100发送第一控制信号给SPI从机200,第一控制信号包括数据发送指令和待发送数据,数据发送指令用于控制CANFD模块300将待发送数据发送到CANFD总线上。
本步骤中,目标SPI主机100通过发送第一控制信号给SPI从机200,将数据发送指令和待发送数据传输给SPI从机200。
步骤S400:SPI从机200根据数据发送指令,控制CANFD模块300将待发送数据发送到CANFD总线上。
本步骤中,SPI从机200接收到第一控制信号后,根据数据发送指令控制CANFD模块300将待发送数据发送到CANFD总线上,完成目标SPI主机100到CANFD总线的数据传输。
步骤S500:目标SPI主机100发送第二控制信号给SPI从机200,第二控制信号包括数据接收指令和数据读取指令,数据接收指令用于控制CANFD模块300从CANFD总线接收待接收数据,数据读取指令用于控制SPI从机200从CANFD模块300读取待接收数据。
本步骤中,目标SPI主机100通过发送第二控制信号给SPI从机200,将数据接收指令和数据读取指令传输给SPI从机200。
步骤S600:SPI从机200根据数据接收指令,控制CANFD模块300从CANFD总线上接收待接收数据。
本步骤中,SPI从机200控制CANFD模块300从CANFD总线上接收待接收数据。
步骤S700:SPI从机200根据数据读取指令,从CANFD模块300读取待接收数据。
本步骤中,SPI从机200根据数据读取指令从CANFD模块300得到待接收数据。
步骤S800:SPI从机200将待接收数据发送给目标SPI主机100。
本步骤中,SPI从机200将待接收数据发送给目标SPI主机100,完成CANFD总线到目标SPI主机100的数据传输。
本实施例中,多个SPI主机100通过SPI从机200连接CANFD模块300,搭建多主一从的架构,再通过CANFD模块300挂在CANFD总线上,SPI主机100能在CANFD总线上收发数据,从而进行多个SPI主机100之间的数据传输。本申请实施例的通信方法,相较于传统的汽车总线通信技术,采用通信速率更快的SPI总线技术,以及通信速度更快的CANFD总线,实现多个SPI主机100之间快速通信。
本申请的一实施例,对步骤S200中的“SPI从机200发送第一仲裁信号给目标SPI主机100”进行进一步说明,如图5所示,步骤S200包括但不限于步骤S210、步骤S220和步骤S240。
步骤S210:若SPI从机200同时接收到多个目标SPI主机100发送的片选信号,SPI从机200根据优先级对多个目标SPI主机100从高到低进行排序。
步骤S220:SPI从机200发送第一仲裁信号给优先级最高的目标SPI主机100。
步骤S230:SPI从机200发送第二仲裁信号给其余的目标SPI主机100,第二仲裁信号用于表征片选信号无效,目标SPI主机100与SPI从机200通信连接不成功。
本实施例中,SPI从机200根据目标SPI主机100的优先级对目标SPI主机100进行排序,选择优先级最高的目标SPI主机100,发送第一仲裁信号给优先级最高的目标SPI主机100,建立通信。SPI从机200发送第二仲裁信号给其余的目标SPI主机100,拒绝与其余的目标SPI主机100建立通信。
本申请的一实施例,SPI主机100的第一nCS端口连接SPI从机200的第二nCS端口,对步骤S100中的“目标SPI主机100发送片选信号给SPI从机200”进行进一步说明,步骤S100包括但不限于步骤S110。
步骤S110:目标SPI主机100将第一nCS端口电平拉低,第一nCS端口输出片选信号给SPI从机200的第二nCS端口。
本实施例中,目标SPI主机100的通过将第一nCS端口电平拉低,输出片选信号,即输出低电平信号给SPI从机200的第二nCS端口,SPI从机200的第二nCS端口被拉低后,确认目标SPI主机100请求建立通信。
本申请的一实施例,SPI主机100的第一nARB端口连接SPI从机200的第二nARB端口,对步骤S200中的“SPI从机200发送第一仲裁信号给目标SPI主机100”进行进一步说明,步骤S200包括但不限于步骤S240。
步骤S240:SPI从机200将第二nARB端口电平拉低,SPI从机200发送第一仲裁信号给目标SPI主机100的第二nARB端口。
本实施例中,SPI从机200将第二nARB端口电平拉低,第二nARB端口输出第一仲裁信号,即输出低电平信号给目标SPI主机100的第二nARB端口,第二nARB端口被拉低,目标SPI主机100确认与SPI从机200建立通信成功。
可以理解的是,SPI从机200将第二nARB端口电平拉高,第二nARB端口输出第二仲裁信号,即第二仲裁信号为高电平信号。
本申请的一实施例,SPI主机100的第一SPICLK端口连接SPI从机200的第二SPICLK端口,SPI主机100的MOSI端口连接SPI从机200的SDI端口,SPI主机100的MISO端口连接SPI从机200的SDO端口,步骤S300中“目标SPI主机100发送第一控制信号给SPI从机200”之前,还包括但不限于步骤S310。
步骤S310:目标SPI主机100配置第一SPICLK端口和MOSI端口为SPI输出端口,目标SPI主机100配置MISO端口为SPI输入端口。
本实施例中,目标SPI主机100配置第一SPICLK端口和MOSI端口为SPI输出端口,目标SPI主机100配置MISO端口为SPI输入端口,以便于通过第一SPICLK端口输出时钟信号,通过MOSI端口输出待发送数据。
本申请的一实施例,对步骤S400中的“SPI从机200根据数据发送指令,控制CANFD模块300将待发送数据发送到CANFD总线上”,如图6所示,包括但不限于步骤S410和步骤S420。
步骤S410:SPI从机200将数据发送指令写入CANFD控制寄存器320,并将待发送数据写入CANFD缓冲器310。
步骤S420:CANFD控制器330根据数据发送指令,通过CANFD收发器340将待发送数据发送到CANFD总线上。
本实施例中,SPI从机200通过将数据发送指令写入CANFD控制寄存器320,直接配置CANFD控制器330的功能,并将待发送数据写入CANFD缓冲器310,使得CANFD控制器330能根据数据发送指令,通过CANFD收发器340将待发送数据发送到CANFD总线上。
本申请的一实施例,对步骤S600中的“SPI从机200根据数据接收指令,控制CANFD模块300从CANFD总线上接收待接收数据”进行进一步说明,如图7所示,步骤S600包括但不限于步骤S610和步骤S620。
步骤S610:SPI从机200将数据接收指令写入CANFD控制寄存器320。
步骤S620:CANFD控制器330根据数据接收指令,通过CANFD收发器340从CANFD总线上接收待接收数据。
本实施例中,SPI从机200将数据接收指令写入CANFD控制寄存器320,直接配置CANFD控制器330的功能,使得CANFD控制器330根据数据接收指令,通过CANFD收发器340将从CANFD总线上接收待接收数据。
另外,本申请一实施例还公开了一种计算机可读存储介质,其中存储有处理器可执行的程序,处理器可执行的程序被处理器执行时用于实现如上述的通信方法。
本实施例中,多个SPI主机100通过SPI从机200连接CANFD模块300,搭建多主一从的架构,再通过CANFD模块300挂在CANFD总线上,SPI主机100能在CANFD总线上收发数据,从而进行多个SPI主机100之间的数据传输。本申请实施例的计算机可读存储介质,相较于传统的汽车总线通信技术,采用通信速率更快的SPI总线技术,以及通信速度更快的CANFD总线,实现多个SPI主机100之间快速通信。
上面结合附图对本申请实施例作了详细说明,但是本申请不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本申请宗旨的前提下作出种变化。
Claims (10)
1.一种通信系统,其特征在于,包括:
多个SPI主机(100);
一个SPI从机(200),所述SPI主机(100)连接所述SPI从机(200);
CANFD模块(300),所述CANFD模块(300)包括CANFD缓冲器(310)、CANFD控制寄存器(320)、CANFD控制器(330)和CANFD收发器(340),所述SPI从机(200)连接所述CANFD缓冲器(310),所述CANFD缓冲器(310)连接所述CANFD控制器(330),所述SPI从机(200)连接所述CANFD控制寄存器(320),所述CANFD控制寄存器(320)连接所述CANFD控制器(330),所述CANFD控制器(330)连接所述CANFD缓冲器(310),所述CANFD缓冲器(310)连接CANFD总线;
所述SPI主机(100)和所述SPI从机(200)通过通信方法进行通信,所述通信方法包括:
目标SPI主机(100)发送片选信号给SPI从机(200),所述目标SPI主机(100)为需进行通信的SPI主机(100),所述片选信号用于表征所述目标SPI主机(100)与所述SPI从机(200)建立通信连接的请求;
所述SPI从机(200)发送第一仲裁信号给所述目标SPI主机(100),所述第一仲裁信号用于表征所述片选信号有效,所述目标SPI主机(100)与所述SPI从机(200)通信连接成功;
所述目标SPI主机(100)发送第一控制信号给所述SPI从机(200),所述第一控制信号包括数据发送指令和待发送数据,所述数据发送指令用于控制所述CANFD模块(300)将所述待发送数据发送到CANFD总线上;
所述SPI从机(200)根据所述数据发送指令,控制所述CANFD模块(300)将所述待发送数据发送到所述CANFD总线上;
所述目标SPI主机(100)发送第二控制信号给所述SPI从机(200),所述第二控制信号包括数据接收指令和数据读取指令,所述数据接收指令用于控制所述CANFD模块(300)从所述CANFD总线接收待接收数据,所述数据读取指令用于控制所述SPI从机(200)从所述CANFD模块(300)读取所述待接收数据;
所述SPI从机(200)根据所述数据接收指令,控制所述CANFD模块(300)从所述CANFD总线上接收所述待接收数据;
所述SPI从机(200)根据所述数据读取指令,从所述CANFD模块(300)读取所述待接收数据;
所述SPI从机(200)将所述待接收数据发送给所述目标SPI主机(100)。
2.根据权利要求1所述的通信系统,其特征在于:所述SPI主机(100)的第一SPICLK端口连接所述SPI从机(200)的第二SPICLK端口,所述SPI主机(100)的MOSI端口连接所述SPI从机(200)的SDI端口,所述SPI主机(100)的MISO端口连接所述SPI从机(200)的SDO端口,所述SPI主机(100)的第一nCS端口连接所述SPI从机(200)的第二nCS端口,所述SPI主机(100)的第一nARB端口连接所述SPI从机(200)的第二nARB端口。
3.一种通信方法,应用于权利要求1至2任意一项所述的通信系统,其特征在于,包括:
目标SPI主机(100)发送片选信号给SPI从机(200),所述目标SPI主机(100)为需进行通信的SPI主机(100),所述片选信号用于表征所述目标SPI主机(100)与所述SPI从机(200)建立通信连接的请求;
所述SPI从机(200)发送第一仲裁信号给所述目标SPI主机(100),所述第一仲裁信号用于表征所述片选信号有效,所述目标SPI主机(100)与所述SPI从机(200)通信连接成功;
所述目标SPI主机(100)发送第一控制信号给所述SPI从机(200),所述第一控制信号包括数据发送指令和待发送数据,所述数据发送指令用于控制所述CANFD模块(300)将所述待发送数据发送到CANFD总线上;
所述SPI从机(200)根据所述数据发送指令,控制所述CANFD模块(300)将所述待发送数据发送到所述CANFD总线上;
所述目标SPI主机(100)发送第二控制信号给所述SPI从机(200),所述第二控制信号包括数据接收指令和数据读取指令,所述数据接收指令用于控制所述CANFD模块(300)从所述CANFD总线接收待接收数据,所述数据读取指令用于控制所述SPI从机(200)从所述CANFD模块(300)读取所述待接收数据;
所述SPI从机(200)根据所述数据接收指令,控制所述CANFD模块(300)从所述CANFD总线上接收所述待接收数据;
所述SPI从机(200)根据所述数据读取指令,从所述CANFD模块(300)读取所述待接收数据;
所述SPI从机(200)将所述待接收数据发送给所述目标SPI主机(100)。
4.根据权利要求3所述的通信方法,其特征在于,还包括:
若所述SPI从机(200)同时接收到多个所述目标SPI主机(100)发送的片选信号,所述SPI从机(200)根据优先级对多个所述目标SPI主机(100)从高到低进行排序;
所述SPI从机(200)发送所述第一仲裁信号给优先级最高的所述目标SPI主机(100);
所述SPI从机(200)发送第二仲裁信号给其余的所述目标SPI主机(100),所述第二仲裁信号用于表征所述片选信号无效,所述目标SPI主机(100)与所述SPI从机(200)通信连接不成功。
5.根据权利要求4所述的通信方法,其特征在于,所述SPI主机(100)的第一nCS端口连接所述SPI从机(200)的第二nCS端口;所述目标SPI主机(100)发送片选信号给SPI从机(200),包括:所述目标SPI主机(100)将所述第一nCS端口电平拉低,所述第一nCS端口输出所述片选信号给所述SPI从机(200)的第二nCS端口。
6.根据权利要求3所述的通信方法,其特征在于,所述SPI主机(100)的第一nARB端口连接所述SPI从机(200)的第二nARB端口;所述SPI从机(200)发送第一仲裁信号给所述目标SPI主机(100),包括:所述SPI从机(200)将第二nARB端口电平拉低,所述SPI从机(200)发送所述第一仲裁信号给所述目标SPI主机(100)的第二nARB端口。
7.根据权利要求6所述的通信方法,其特征在于,所述SPI主机(100)的第一SPICLK端口连接所述SPI从机(200)的第二SPICLK端口,所述SPI主机(100)的MOSI端口连接所述SPI从机(200)的SDI端口,所述SPI主机(100)的MISO端口连接所述SPI从机(200)的SDO端口;所述目标SPI主机(100)发送第一控制信号给所述SPI从机(200)之前,还包括:
所述目标SPI主机(100)配置所述第一SPICLK端口和所述MOSI端口为SPI输出端口,所述目标SPI主机(100)配置所述MISO端口为SPI输入端口。
8.根据权利要求3所述的通信方法,其特征在于,所述SPI从机(200)根据所述数据发送指令,控制所述CANFD模块(300)将所述待发送数据发送到所述CANFD总线上,包括:
所述SPI从机(200)将所述数据发送指令写入CANFD控制寄存器(320),并将所述待发送数据写入所述CANFD缓冲器(310);
所述CANFD控制器(330)根据所述数据发送指令,通过CANFD收发器(340)将所述待发送数据发送到CANFD总线上。
9.根据权利要求3所述的通信方法,其特征在于,所述SPI从机(200)根据所述数据接收指令,控制所述CANFD模块(300)从所述CANFD总线上接收所述待接收数据,包括:
所述SPI从机(200)将所述数据接收指令写入CANFD控制寄存器(320);
所述CANFD控制器(330)根据所述数据接收指令,通过CANFD收发器(340)从所述CANFD总线上接收待接收数据。
10.一种计算机可读存储介质,其特征在于,其中存储有处理器可执行的程序,所述处理器可执行的程序被处理器执行时用于实现如权利要求3至9任意一项所述的通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311497099.6A CN117234974B (zh) | 2023-11-10 | 2023-11-10 | 一种通信系统、通信方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311497099.6A CN117234974B (zh) | 2023-11-10 | 2023-11-10 | 一种通信系统、通信方法及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117234974A CN117234974A (zh) | 2023-12-15 |
CN117234974B true CN117234974B (zh) | 2024-02-06 |
Family
ID=89096964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311497099.6A Active CN117234974B (zh) | 2023-11-10 | 2023-11-10 | 一种通信系统、通信方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117234974B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104834620A (zh) * | 2015-04-29 | 2015-08-12 | 小鸟科技有限公司 | 串行外设接口spi总线电路、实现方法以及电子设备 |
JP2017108218A (ja) * | 2015-12-07 | 2017-06-15 | 株式会社リコー | データ通信制御システム及びデータ通信制御方法 |
CN210536667U (zh) * | 2019-12-30 | 2020-05-15 | 蜂巢能源科技有限公司 | 车辆canfd通信系统及车辆电子设备 |
CN111541600A (zh) * | 2020-05-22 | 2020-08-14 | 北京润科通用技术有限公司 | 一种应用于武器装备的总线网络生成方法及装置 |
CN113132198A (zh) * | 2021-03-26 | 2021-07-16 | 东信和平科技股份有限公司 | 一种多主一从的spi安全通信装置及通信方法 |
CN114780476A (zh) * | 2022-04-15 | 2022-07-22 | 北京经纬恒润科技股份有限公司 | 一种支持多主多从的spi分时复用电路 |
CN116069715A (zh) * | 2021-11-04 | 2023-05-05 | 瑞昱半导体股份有限公司 | 存储装置共享系统及存储装置共享方法 |
CN116909977A (zh) * | 2023-06-29 | 2023-10-20 | 重庆赛力斯新能源汽车设计院有限公司 | 一种多机通信方法及系统 |
CN116909972A (zh) * | 2023-07-25 | 2023-10-20 | 武汉源畅科技有限公司 | 一种can通信转换为串口通信的数据缓存方法及转换介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100813256B1 (ko) * | 2006-06-23 | 2008-03-13 | 삼성전자주식회사 | 버스 중재 장치 및 방법 |
CN114461550A (zh) * | 2021-12-16 | 2022-05-10 | 加弘科技咨询(上海)有限公司 | 基于i2c通信的多主控设备访问仲裁系统及方法 |
-
2023
- 2023-11-10 CN CN202311497099.6A patent/CN117234974B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104834620A (zh) * | 2015-04-29 | 2015-08-12 | 小鸟科技有限公司 | 串行外设接口spi总线电路、实现方法以及电子设备 |
JP2017108218A (ja) * | 2015-12-07 | 2017-06-15 | 株式会社リコー | データ通信制御システム及びデータ通信制御方法 |
CN210536667U (zh) * | 2019-12-30 | 2020-05-15 | 蜂巢能源科技有限公司 | 车辆canfd通信系统及车辆电子设备 |
CN111541600A (zh) * | 2020-05-22 | 2020-08-14 | 北京润科通用技术有限公司 | 一种应用于武器装备的总线网络生成方法及装置 |
CN113132198A (zh) * | 2021-03-26 | 2021-07-16 | 东信和平科技股份有限公司 | 一种多主一从的spi安全通信装置及通信方法 |
CN116069715A (zh) * | 2021-11-04 | 2023-05-05 | 瑞昱半导体股份有限公司 | 存储装置共享系统及存储装置共享方法 |
CN114780476A (zh) * | 2022-04-15 | 2022-07-22 | 北京经纬恒润科技股份有限公司 | 一种支持多主多从的spi分时复用电路 |
CN116909977A (zh) * | 2023-06-29 | 2023-10-20 | 重庆赛力斯新能源汽车设计院有限公司 | 一种多机通信方法及系统 |
CN116909972A (zh) * | 2023-07-25 | 2023-10-20 | 武汉源畅科技有限公司 | 一种can通信转换为串口通信的数据缓存方法及转换介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117234974A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6061868B2 (ja) | シリアル・インタフェース | |
CN107908589B (zh) | I3c验证从设备、主从设备的通信验证系统及方法 | |
US20130262724A1 (en) | Method and Circuit Arrangement for Transmitting Data Between Processor Modules | |
CN110896372B (zh) | 一种i2c链路切换方法、终端及存储介质 | |
JP2002055936A (ja) | Usbデバイス機器、usbデバイス機器間の通信システムおよび通信方法 | |
US7836233B2 (en) | Multi-processor system | |
US5367644A (en) | Communication system | |
CN100459612C (zh) | 一种通讯传输控制装置及实现通讯协议控制的方法 | |
CN117234974B (zh) | 一种通信系统、通信方法及存储介质 | |
CN113132198B (zh) | 一种多主一从的spi安全通信装置及通信方法 | |
CN111984581B (zh) | 一种基于Linux的SPI总线主从设备通讯系统、方法及装置 | |
CN116566761B (zh) | Spi双主机共享仲裁系统及方法 | |
CN114996184B (zh) | 兼容实现spi或i2c从机的接口模块及数据传输方法 | |
JP4737049B2 (ja) | 通信システム及び電子制御装置 | |
JP5177893B2 (ja) | 車載通信装置及び通信制御プログラム | |
CN116541329A (zh) | 一种数据传输方法、装置、设备及介质 | |
CN116010322A (zh) | 基于spi总线的数据通信方法、spi通信设备及spi通信系统 | |
CN111506461A (zh) | 一种基于总线、用于测试的反压模块及其实现方法 | |
CN111130678B (zh) | 数据传输方法、装置、设备及计算机可读存储介质 | |
US7162562B2 (en) | Portable electronic system and accessing method thereof | |
CN113032300A (zh) | 数据的传输控制方法 | |
EP1422628B1 (en) | Host apparatus, electronic device, and transmission system control method | |
CN117076373B (zh) | 一种通信方法、spi控制器及单片机 | |
JP2639248B2 (ja) | 通信インターフェイス装置 | |
KR100349669B1 (ko) | 아이이씨 버스를 구비하는 액정디스플레이-버튼 및 주변시스템 정합 장치와 그 정합 방법 |
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 |