CN108763140B - 一种双向通信的方法、系统及终端设备 - Google Patents

一种双向通信的方法、系统及终端设备 Download PDF

Info

Publication number
CN108763140B
CN108763140B CN201810368074.9A CN201810368074A CN108763140B CN 108763140 B CN108763140 B CN 108763140B CN 201810368074 A CN201810368074 A CN 201810368074A CN 108763140 B CN108763140 B CN 108763140B
Authority
CN
China
Prior art keywords
communication
current data
handshake
data transmission
slave
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
Application number
CN201810368074.9A
Other languages
English (en)
Other versions
CN108763140A (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.)
Shenzhen Excelsecu Data Technology Co Ltd
Original Assignee
Shenzhen Excelsecu Data Technology 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 Shenzhen Excelsecu Data Technology Co Ltd filed Critical Shenzhen Excelsecu Data Technology Co Ltd
Priority to CN201810368074.9A priority Critical patent/CN108763140B/zh
Publication of CN108763140A publication Critical patent/CN108763140A/zh
Application granted granted Critical
Publication of CN108763140B publication Critical patent/CN108763140B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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
    • G06F13/4286Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bidirectional Digital Transmission (AREA)

Abstract

本发明提供了一种双向通信的方法、系统及终端设备,所述方法应用于主设备,包括:根据预设协议通过握手信号线发送或接收握手信号,确定当前数据传输方向,根据所述当前数据传输方向,与从设备进行数据传输。本发明在原有通信接口的基础上,通过复用通信接口中数据总线的某些引脚做为握手线,实现了从设备和主设备之间的握手,用握手机制实现通信主体中的主设备和从设备都可发起通信,实现了双向通信,允许主从双方各自请求发起通信,从设备也可以主动要求主设备发起通信进程,节省了芯片的引脚资源。

Description

一种双向通信的方法、系统及终端设备
技术领域
本发明属于通信技术领域,尤其涉及一种双向通信的方法、系统及终端设备。
背景技术
在嵌入式系统的数据通信协议中,例如SPI(Serial Peripheral Interface,串行外设接口)、I2C(Inter-Integrated Circuit,I2C总线)等通信协议中的通信主体按角色可分为主设备和从设备。从设备一般情况下只能被动地接收主设备数据并同时向主设备发送数据,没法主动通知主设备来收发数据。
综上,现有技术中存在从设备无法主动向主设备发起通信的问题。
发明内容
有鉴于此,本发明实施例提供了一种双向通信的方法、系统及终端设备,以解决现有技术中存在的从设备无法主动向主设备发起通信的问题。
本发明实施例的第一方面提供了一种双向通信的方法,应用于主设备,所述主设备与从设备通过通信接口连接。
所述双向通信的方法包括:
根据预设协议通过握手信号线发送或接收握手信号,其中,所述握手信号线为复用所述通信接口的信号线。
确定当前数据传输方向。
根据所述当前数据传输方向,与所述从设备进行数据传输。
本发明实施例的第二方面提供了一种双向通信的系统,应用于主设备,所述主设备与从设备通过通信接口连接。
所述双向通信的系统包括:
握手信号收发模块,用于根据预设协议通过握手信号线发送或接收握手信号,其中,所述握手信号线为复用所述通信接口的信号线。
传输方向确定模块,用于确定当前数据传输方向。
数据传输模块,用于根据所述当前数据传输方向,与所述从设备进行数据传输。
本发明实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述双向通信的方法的步骤。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述双向通信的方法的步骤。
本发明实施例与现有技术相比存在的有益效果是:主设备通过握手信号线发送或接收握手信号,从而确定当前数据传输方向,然后根据当前数据传输方向,与从设备进行数据传输。本发明实施例在原有通信接口的基础上,通过复用通信接口中数据总线的某些引脚做为握手线,实现了从设备和主设备之间的握手,用握手机制实现通信主体中的主设备和从设备都可发起通信,实现了双向通信,允许主从双方各自请求发起通信,从设备也可以主动要求主设备发起通信进程,节省了芯片的引脚资源。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一个实施例提供的双向通信的方法的流程示意图;
图2是本发明的一个实施例提供的双向通信的系统的结构示意图;
图3是本发明的一个实施例提供的图2中传输方向确定模块的结构示意图;
图4是本发明的另一个实施例提供的图2中传输方向确定模块的结构示意图;
图5是本发明的一个实施例提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
本发明的说明书和权利要求书及上述附图中的术语“包括”以及其他任何变形,是指“包括但不限于”,意图在于覆盖不排他的包含。例如包含一系列步骤或单元的过程、方法或系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。此外,术语“第一”、“第二”和“第三”等是用于区别不同对象,而非用于描述特定顺序。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例1:
图1示出了本发明一实施例所提供的双向通信的方法的实现流程图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
如图1所示,本发明实施例所提供的一种双向通信的方法,应用于主设备,所述主设备与从设备通过通信接口连接。
所述双向通信的方法包括:
步骤S101,根据预设协议通过握手信号线发送或接收握手信号,其中,所述握手信号线为复用所述通信接口的信号线。
本实施例中,通信接口一般包括两个或两个以上的信号线,预先设定其中一个信号线为握手信号线。握手信号线不仅具有通用的通信协议中定义的原有功能,还具有主设备发送或接收握手信号的功能,因此,握手信号线为具有复用功能的信号线。
在本发明的一个实施例中,所述握手信号线为所述通信接口的控制信号线或数据信号线,在本发明的一些实施例中,所述控制信号线为片选信号线,在本发明的另一些实施例中,所述控制信号线为时钟信号线,例如串行时钟线。
步骤S102,确定当前数据传输方向。
本实施例中,当前数据传输方向包括:主设备至从设备或者从设备至主设备。当前数据传输方向为主设备至从设备,即为,当前数据发送方为所述主设备,当前数据接收方为所述从设备。当前数据传输方向为从设备至主设备,即为,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
步骤S103,根据所述当前数据传输方向,与所述从设备进行数据传输。
本实施例中,当前数据传输方向为主设备至从设备时,主设备发送数据至从设备。当前数据传输方向为从设备至主设备时,主设备接收从设备发送的数据。
其中,数据可以为串行数据,例如,代码、文件、图片、音视频等。数据可以为用户输入的数据、预先存储的数据、预先设置的数据、采集到的外部数据或者程序运行中生成的数据。
在本发明的一个实施例中,在步骤S101之前,所述方法还包括:将所述握手信号线配置为通用输入输出功能,以便通过所述握手信号线发送或接收握手信号。
本实施例中,通用输入输出即设置为为GPIO(General-Purpose Input/OutputPorts)端口。
在本发明的一个实施例中,在步骤S102之后,所述方法还包括:将所述通信接口初始化为接口主设备,以便通过所述通信接口的通信协议与所述从设备进行数据传输。
在本发明的一个实施例中,步骤S103之后,所述方法还包括:通过所述握手信号线向所述从设备发送结束数据传输信号。
本实施例中,结束数据传输信号用于通知从设备此次数据通信完毕。
本发明实施例提出一种不增加额外引脚的情况下实现从设备可主动向主设备发起通信的方案。当主设备接收到从设备发出的中断请求信号时,主设备便可向从设备获取从设备数据。采用本发明实施例后,主设备无需持续不断地主动去查询从设备是否有数据要发送,使得主设备释放了大量的处理器资源可用于其他用途,降低了主设备功耗。另外,本发明实施例可基于现有通用的通信接口实现,能够不增加额外的功能引脚,适用于芯片引脚资源受限的场合,能够充分利用已有的信号线,减少资源浪费。
本实施例,在原有通信接口的基础上(即不增加新引脚的情况),通过复用通信接口中数据总线的某些引脚做为握手线,实现了从设备和主设备之间的握手,用握手机制实现通信主体中的主设备和从设备都可发起通信,实现了双向通信,允许主从双方各自请求发起通信,从设备也可以主动要求主设备发起通信进程,节省了芯片的引脚资源。
在本发明的一个实施例中,步骤S102包括:
1)在第一预设条件下,通过所述通信接口的第一数据信号线向所述从设备发送数据请求信号,并通过所述通信接口的第二数据信号线接收所述从设备发送的响应信号,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备。
其中,第一预设条件为主设备准备向从设备发送数据。
2)在第二预设条件下,通过所述通信接口的第二数据信号线接收到所述从设备发送的数据请求信号时,通过所述通信接口的第一数据信号线向所述从设备发送响应信号,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
其中,第二预设条件为主设备准备接收从设备发送的数据;或者,从设备需要发送数据至主设备时,通过所述通信接口的第二数据信号线发送预设信号使主设备产生中断。
在本发明的一个实施例中,步骤S102包括:
1)当通过所述通信接口的控制信号线检测到第一预设信号时,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备。
2)当通过所述通信接口的控制信号线检测到第二预设信号时,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
在一个实施例中,所述当通过所述通信接口的控制信号线检测到第二预设信号之后,包括触发中断操作。
其中,触发中断操作包括转入执行相应的通信进程。触发中断操作的方式包括边沿触发和电平触发。
从设备通过与主设备之间的通信接口向主设备发出中断请求信号,主设备接收到从设备发送的中断请求信号后转入执行相应子程序,例如,查询从设备是否有数据发送。一般地,中断请求信号用于触发所述主设备执行相应的中断操作,例如通信进程。
为了便于理解,下面以具体应用场景为例对本发明实施例进行说明。
场景1:
本发明实施例应用于SPI通信。
SPI通信以主从方式工作。SPI通信系统通常由一个主设备和一个或多个从设备组成。所述SPI通信接口包含4根信号线,包括数据输入信号线、数据输出信号线、时钟信号线和片选信号线。
在一个实施例中,主设备与从设备通过SPI通信接口进行通信。
其中,握手信号线为数据输入信号线和数据输出信号线。第一数据信号线为数据输出信号线。第二数据信号线为数据输入信号线。
主从设备的通信过程包括:
1.主设备根据SPI通信协议通过片选信号线选择从设备,允许进行握手操作。
2.当主设备准备向从设备发送数据时,通过数据输出信号线向从设备发送数据请求信号,并通过数据输入信号线接收从设备发送的响应信号,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备。
当从设备准备向主设备发送数据时,主设备通过数据输入信号线接收到从设备发送的数据请求信号时,通过数据输出信号线向从设备发送响应信号,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
3.根据所述当前数据传输方向,与所述从设备进行数据传输。
4.通过片选信号线向所述从设备发送结束数据传输信号。
另外,主设备通过片选信号线向从设备发送允许握手操作信号、通信结束信号,主设备通过数据输出信号线发送主设备数据至从设备,主设备通过数据输入信号线接收从设备发送的从设备数据。主设备通过时钟信号线发送时钟驱动信号至从设备。
场景2:
本发明实施例应用于I2C通信。
I2C总线是一种双向二线制同步串行总线。I2C通信接口包括串行数据线和串行时钟线。通信双方分为主设备和从设备,由主设备驱动串行时钟线产生时钟,主设备和从设备分时在串行数据线上输出数据。
在本发明的一个实施例中,主设备与从设备通过I2C通信接口进行通信。
其中,握手信号线为串行时钟线。
主从设备的通信过程包括:
1.主设备根据I2C通信协议通过串行时钟线发送或接收握手信号,从而确定当前数据传输方向。具体包括:
(1)当通过串行时钟线检测到第一预设信号时,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备。
(2)当通过串行时钟线检测到第二预设信号时,产生中断并进入中断程序,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
2.根据所述当前数据传输方向,与所述从设备进行数据传输。
3.通过串行时钟线向所述从设备发送结束数据传输信号。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
实施例2:
如图2所示,本发明的一个实施例提供的双向通信的系统100,应用于主设备,所述主设备与从设备通过通信接口连接。
双向通信的系统100包括:
握手信号收发模块110,用于根据预设协议通过握手信号线发送或接收握手信号,其中,所述握手信号线为复用所述通信接口的信号线。
传输方向确定模块120,用于确定当前数据传输方向。
数据传输模块130,用于根据所述当前数据传输方向,与所述从设备进行数据传输。
在本发明的一个实施例中,双向通信的系统100还包括:
通信结束模块,用于通过所述握手信号线向所述从设备发送结束数据传输信号。
在本发明的一个实施例中,双向通信的系统100还包括:
接口配置模块,用于将所述握手信号线配置为通用输入输出功能,以便通过所述握手信号线发送或接收握手信号。
在本发明的一个实施例中,双向通信的系统100还包括:
初始化模块,用于将所述通信接口初始化为接口主设备,以便通过所述通信接口的通信协议与所述从设备进行数据传输。
如图3所示,在本发明的一个实施例中,传输方向确定模块120还包括:
第一正向单元121,用于在第一预设条件下,通过所述通信接口的第一数据信号线向所述从设备发送数据请求信号,并通过所述通信接口的第二数据信号线接收所述从设备发送的响应信号,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备。
第一反向单元122,用于在第二预设条件下,通过所述通信接口的第二数据信号线接收到所述从设备发送的数据请求信号时,通过所述通信接口的第一数据信号线向所述从设备发送响应信号,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
如图4所示,在本发明的一个实施例中,传输方向确定模块120还包括:
第二正向单元123,用于当通过所述通信接口的控制信号线检测到第一预设信号时,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备。
第二反向单元124,用于当通过所述通信接口的控制信号线检测到第二预设信号时,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
中断触发单元125,用于当通过所述通信接口的控制信号线检测到第二预设信号时,触发中断操作。
在一个实施例中,双向通信的系统100还包括其他功能模块/单元,用于实现实施例1中各实施例中的方法步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即双向通信的系统100的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述双向通信的系统100中模块的具体工作过程,可以参考实施例1的对应过程,在此不再赘述。
实施例3:
图5是本发明一实施例提供的终端设备的示意图。如图5所示,该实施例的终端设备5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52。所述处理器50执行所述计算机程序52时实现如实施例1中所述的各实施例中的步骤,例如图1所示的步骤S101和S102。或者,所述处理器50执行所述计算机程序52时实现如实施例2中所述的各系统实施例中的各模块/单元的功能,例如图3所示模块110和120的功能。
所述终端设备5可以是处理器芯片、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的示例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备5还可以包括输入输出设备、网络接入设备、总线等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述终端设备5所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
实施例4:
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如实施例1中所述的各实施例中的步骤,例如图1所示的步骤S101和S102。或者,所述计算机程序被处理器执行时实现如实施例2中所述的各系统实施例中的各模块/单元的功能,例如图3所示模块110和120的功能。
所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例系统中的模块或单元可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的系统/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的系统/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种双向通信的方法,其特征在于,应用于主设备,所述主设备与从设备通过通信接口连接;
所述双向通信的方法包括:
根据预设协议通过握手信号线发送或接收握手信号,其中,所述握手信号线为复用所述通信接口的信号线,所述握手信号线具有通用的通信协议中定义的原有功能,还具有主设备发送或接收握手信号的功能,所述握手信号线根据双向通信协议的不同,具体为当应用于SPI通信时,握手信号线为数据输入信号线和输出信号线;当应用于I2C通信时,握手信号线为串行时钟线;
确定当前数据传输方向,其中,所述当前数据传输方向包括:主设备至从设备或者从设备至主设备;
根据所述当前数据传输方向,与所述从设备进行数据传输。
2.如权利要求1所述的双向通信的方法,其特征在于,在所述根据预设协议通过握手信号线发送或接收握手信号之前,还包括:
将所述握手信号线配置为通用输入输出功能,以便通过所述握手信号线发送或接收握手信号。
3.如权利要求1所述的双向通信的方法,其特征在于,在所述确定当前数据传输方向之后,还包括:
将所述通信接口初始化为接口主设备,以便通过所述通信接口的通信协议与所述从设备进行数据传输。
4.如权利要求1所述的双向通信的方法,其特征在于,在所述与所述从设备进行数据传输之后,还包括:
通过所述握手信号线向所述从设备发送结束数据传输信号。
5.如权利要求1至4任一项所述的双向通信的方法,其特征在于,所述确定当前数据传输方向,包括:
在第一预设条件下,通过所述通信接口的第一数据信号线向所述从设备发送数据请求信号,并通过所述通信接口的第二数据信号线接收所述从设备发送的响应信号,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备;
在第二预设条件下,通过所述通信接口的第二数据信号线接收到所述从设备发送的数据请求信号时,通过所述通信接口的第一数据信号线向所述从设备发送响应信号,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
6.如权利要求1至4任一项所述的双向通信的方法,其特征在于,所述确定当前数据传输方向,包括:
当通过所述通信接口的控制信号线检测到第一预设信号时,确定所述当前数据传输方向为主设备至从设备,当前数据发送方为所述主设备,当前数据接收方为所述从设备;
当通过所述通信接口的控制信号线检测到第二预设信号时,确定所述当前数据传输方向为从设备至主设备,当前数据发送方为所述从设备,当前数据接收方为所述主设备。
7.如权利要求6所述的双向通信的方法,其特征在于,所述当通过所述通信接口的控制信号线检测到第二预设信号之后,包括:
触发中断操作。
8.一种双向通信的系统,其特征在于,应用于主设备,所述主设备与从设备通过通信接口连接;
所述双向通信的系统包括:
握手信号收发模块,用于根据预设协议通过握手信号线发送或接收握手信号,其中,所述握手信号线为复用所述通信接口的信号线,所述握手信号线具有通用的通信协议中定义的原有功能,还具有主设备发送或接收握手信号的功能,所述握手信号线根据双向通信协议的不同,具体为当应用于SPI通信时,握手信号线为数据输入信号线和输出信号线;当应用于I2C通信时,握手信号线为串行时钟线;
传输方向确定模块,用于确定当前数据传输方向,其中,所述当前数据传输方向包括:主设备至从设备或者从设备至主设备;
数据传输模块,用于根据所述当前数据传输方向,与所述从设备进行数据传输。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述双向通信的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述双向通信的方法的步骤。
CN201810368074.9A 2018-04-23 2018-04-23 一种双向通信的方法、系统及终端设备 Active CN108763140B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810368074.9A CN108763140B (zh) 2018-04-23 2018-04-23 一种双向通信的方法、系统及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810368074.9A CN108763140B (zh) 2018-04-23 2018-04-23 一种双向通信的方法、系统及终端设备

Publications (2)

Publication Number Publication Date
CN108763140A CN108763140A (zh) 2018-11-06
CN108763140B true CN108763140B (zh) 2021-02-12

Family

ID=64011439

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810368074.9A Active CN108763140B (zh) 2018-04-23 2018-04-23 一种双向通信的方法、系统及终端设备

Country Status (1)

Country Link
CN (1) CN108763140B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111490920A (zh) * 2019-01-29 2020-08-04 杭州海康汽车技术有限公司 一种基于spi的数据传输方法、系统及装置
CN112286852B (zh) * 2019-07-25 2022-08-12 杭州海康汽车技术有限公司 基于iic总线的数据通信方法和数据通信装置
CN110412325A (zh) * 2019-08-08 2019-11-05 电子科技大学 无线虚拟示波器及其功耗动态管理方法
GB2587001B (en) * 2019-09-11 2023-07-19 Idex Biometrics Asa Two-wire host interface
CN113220610B (zh) * 2020-01-21 2024-04-09 华为技术有限公司 通信系统和spi接口的通信方法及装置
CN111984581B (zh) * 2020-08-14 2022-05-10 广州邦讯信息系统有限公司 一种基于Linux的SPI总线主从设备通讯系统、方法及装置
CN112069115B (zh) * 2020-09-18 2021-06-25 上海燧原科技有限公司 数据传输方法、设备及系统
CN112235173B (zh) * 2020-09-29 2022-03-22 深圳优地科技有限公司 通信控制方法、装置、终端设备及存储介质
CN112269086B (zh) * 2020-10-23 2024-10-08 维沃移动通信有限公司 充电线缆的识别方法、装置、充电线缆及可读存储介质
CN113726498A (zh) * 2020-10-26 2021-11-30 深圳市宏电技术股份有限公司 基于spi的双全工通信方法、主机、从机及存储介质
CN112711558B (zh) 2021-01-15 2023-07-21 飞腾信息技术有限公司 Lpc总线的串行中断系统、方法、介质
CN118377746A (zh) * 2024-04-29 2024-07-23 重庆赛力斯凤凰智创科技有限公司 基于iic协议的双向传输系统、方法及电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752365B2 (en) * 2008-04-01 2010-07-06 Kyocera Corporation Bi-directional single conductor interrupt line for communication bus
CN101251831B (zh) * 2008-04-16 2010-10-13 普天信息技术研究院有限公司 支持主从设备互换的移动存储器和主从设备互换方法
CN101477505B (zh) * 2008-12-23 2012-11-21 无锡中星微电子有限公司 一种主、从设备之间通过总线传输数据的方法
GB201102594D0 (en) * 2011-02-15 2011-03-30 Nordic Semiconductor Asa Serial interface
KR101883522B1 (ko) * 2014-03-04 2018-07-30 주식회사 만도 듀얼 mcu에서 마스터 mcu 및 슬레이브 mcu 전환 방법 및 장치
CN107832250B (zh) * 2017-11-02 2020-10-30 北京中电华大电子设计有限责任公司 一种基于spi的主从通讯时序方法

Also Published As

Publication number Publication date
CN108763140A (zh) 2018-11-06

Similar Documents

Publication Publication Date Title
CN108763140B (zh) 一种双向通信的方法、系统及终端设备
CN108733005B (zh) 一种控制智能设备联动的方法及装置
CN109902053B (zh) 一种基于双控制器的spi通信方法、终端设备及存储介质
US20050165997A1 (en) Data communication system
CN105516441A (zh) 一种信息处理方法和装置
WO2017049553A1 (zh) 移动终端、电源适配器及其升级方法
CN107391419B (zh) 支持多主机的通用序列汇流排集线设备及车用主机
CN105468548B (zh) 串行外围接口的通信
CN110457244B (zh) 一种串口的通信方式转换方法、系统及处理器
US10614011B2 (en) Apparatus, method, and electronic device for implementing solid-state drive data interaction
CN102202132B (zh) 一种对上网设备进行初始化的方法、系统及设备
CN110990319B (zh) 同步串行总线复用方法、装置、终端和非临时性计算机可读存储介质
CN108399136B (zh) 一种串行接口的控制方法、装置及主机
CN116243853A (zh) 数据传输方法、装置、电子设备及非易失性存储介质
CN109189705B (zh) 一种usb扩展方法、装置、设备、存储介质及系统
WO2017049556A1 (zh) 数据传输方法和移动终端
CN102445981B (zh) 数据传输系统以及数据传输方法
CN113641610A (zh) 处理器接口电路及处理器接口分时复用方法、电子设备
CN116541329A (zh) 一种数据传输方法、装置、设备及介质
CN110740085A (zh) 一种基于并机系统的通信方法、通信装置及终端
CN111444129B (zh) Mdb数据传输的方法及终端设备
KR20190037690A (ko) 버스 시스템
CN107155359B (zh) 复用外围接口的方法、用户设备和外接设备
KR20050011563A (ko) 범용 직렬버스를 이용한 데이터 전송 시스템
CN106354683B (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