一种SPI双主设备访问同一从设备的协同方法及系统技术方案

技术编号:24168415 阅读:26 留言:0更新日期:2020-05-16 02:10
本发明专利技术实施例公开了一种SPI双主设备访问同一从设备的协同方法及系统,包括步骤:预先将两个主设备分别设定为主导设备和副设备,主导设备用以管理SPI总线通讯控制权,副设备用以接收和归还SPI总线通讯控制权;判断主导设备的SPI总线通讯控制权是否到交接时间,如果交接时间到,则由主导设备向副设备发送SPI总线通讯控制权释放信号;判断副设备是否需要访问从设备,如果需要,则由副设备接收SPI总线通讯控制权,并由副设备通过SPI总线对从设备进行访问;在副设备完成对从设备的访问后,由副设备向主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给主导设备。本发明专利技术的两个主设备均可实现各自最优的通讯速度,提高了对从设备数据的访问速度。

A cooperative method and system for SPI dual master to access the same slave

【技术实现步骤摘要】
一种SPI双主设备访问同一从设备的协同方法及系统
本专利技术涉及SPI总线通信领域,尤其涉及一种SPI双主设备访问同一从设备的协同方法及系统。
技术介绍
SPI总线是由摩托罗拉公司开发的全双工同步串行总线,主要应用于EEPROM、Flash、实时时钟(RTC)、数模转换器(ADC)、网络控制器、MCU、数字信号处理器(DSP)以及数字信号解码器之间,一般由4根信号线组成:SDO—主设备数据输出,从设备数据输入SDI—主设备数据输入,从设备数据输出SCLK—同步时钟信号,由主设备输出CS—从设备片选,由主设备控制SPI总线以主从方式工作,总线上可以有多个从设备,但只能有一个主设备,每个从设备使用不同的CS脚,当主设备想要访问某个从设备时,拉低该从设备CS脚的电平即可,同一时刻只能有一个从设备被选中。如果有两个主设备需要访问同一个从设备,可通过其中一个中转来完成,例如主设备1可直接访问从设备,而主设备2通过另外的通讯接口与主设备1通讯,再由主设备1中转来间接访问从设备,该方式虽然实现了主设备2对从设备的访问,但速度有限,会大大影响主设备2对从设备的访问。而且如果主设备2和主设备1的通信出现问题,也会影响到主设备2对从设备的访问。因此,现有技术有待进一步改进和提升。
技术实现思路
针对上述技术问题,本专利技术实施例提供了一种SPI双主设备访问同一从设备的协同方法及系统,用以解决SPI接口不能支持1个以上主设备同时访问同一从设备的技术问题。本专利技术实施例的第一方面提供一种SPI双主设备访问同一从设备的协同方法,其中,所述方法包括步骤:预先将两个主设备分别设定为主导设备和副设备,所述主导设备用以管理SPI总线通讯控制权,所述副设备用以接收和归还SPI总线通讯控制权;判断所述主导设备的SPI总线通讯控制权是否到交接时间,如果交接时间到,则由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号;判断所述副设备是否需要访问从设备,如果需要,则由所述副设备接收所述SPI总线通讯控制权,并由所述副设备通过所述SPI总线对所述从设备进行访问;在所述副设备完成对所述从设备的访问后,由所述副设备向所述主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给所述主导设备。可选地,所述由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号的步骤具体包括:由所述主导设备以预定时间周期性向所述副设备发送SPI总线通讯控制权释放信号,询问所述副设备是否需要访问从设备。可选地,所述SPI总线通讯控制权释放信号为具有特定数量特定占空比的方波信号。可选地,在所述预先将两个主设备分别设定为主导设备和副设备的步骤之后还包括:预先通过设置所述主导设备的SPI总线通讯控制权的交接时间,调整所述主导设备和副设备访问从设备的通讯比例。可选地,如果所述副设备不需要访问从设备,则由所述副设备向所述主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给所述主导设备。可选地,所述主导设备和所述副设备通过SPI总线的CS脚进行数据通信。可选地,当所述主导设备和副设备对从设备进行访问时,将CS脚作为SPI总线的片选脚工作,当所述主导设备和副设备进行SPI总线通讯控制权交接时,将CS脚复用为通用IO脚工作。基于上述方法,本专利技术实施例第二方面提供了一种SPI双主设备访问同一从设备的协同系统,其特征在于,所述系统包括:预置模块,用于预先将两个主设备分别设定为主导设备和副设备,所述主导设备用以管理SPI总线通讯控制权,所述副设备用以接收和归还SPI总线通讯控制权;第一判断模块,用于判断所述主导设备的SPI总线通讯控制权是否到交接时间;第二判断模块,用于判断所述副设备是否需要访问从设备;控制器交接模块,用于在所述第一判断模块判断所述交接时间到时由所述由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号,并在所述第二判断模块判断出所述副设备需要访问从设备时由所述副设备接收所述SPI总线通讯控制权,以及在所述副设备完成对所述从设备访问时由所述副设备向所述主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给所述主导设备。可选地,所述系统还包括交接时间设定模块,用于通过设置所述主导设备的SPI总线通讯控制权的交接时间,调整所述主导设备和副设备访问从设备的通讯比例。可选地,所述系统还包括:CS脚设定模块,用于当所述主导设备和副设备对从设备进行访问时,将CS脚作为SPI总线的片选脚工作,当所述主导设备和副设备进行SPI总线通讯控制权交接时,将CS脚复用为通用IO脚工作。本专利技术实施例提供的技术方案中,为解决SPI总线访问竞争问题,对两个主设备的地位加以区分,其中一个作为SPI总线的主导设备,负责SPI总线通讯权的管理,另外一个主设备作为副设备,负责SPI总线通讯权的接收和归还,使得副设备对从设备的访问不需要通讯中转即可完成,因此相对于现有技术,本专利技术实施例的两个主设备均可实现自己最高的通讯速度,提高了对从设备数据的访问速度。附图说明图1为本专利技术实施例中SPI双主设备访问同一从设备的协同方法的流程图。图2为本专利技术实施例中SPI总线通讯控制权转移时序示意图。图3为本专利技术实施例中SPI双主设备访问同一从设备的协同系统的一个实施例示意图。图4为本专利技术实施例中SPI双主设备访问同一从设备的协同系统的另一实施例示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,本专利技术实施例中SPI双主设备访问同一从设备的协同方法一个实施例,该方法包括步骤:S1、预先将两个主设备分别设定为主导设备和副设备,所述主导设备用以管理SPI总线通讯控制权,所述副设备用以接收和归还SPI总线通讯控制权。其中,本实施例主要发生在有两个主设备对从设备通过SPI总线进行访问控制时,为解决SPI总线访问的竞争问题,本实施例对两个主设备的地位加以区分,其中一个作为SPI总线的主导设备,负责SPI总线通讯控制权的管理,另外一个主设备作为副设备,负责SPI总线通讯控制权的接收和归还。即正常情况下主导设备始终拥有对SPI总线的通讯控制权,其能够一直访问从设备,对从设备进行读/写操作。S2、判断所述主导设备的SPI总线通讯控制权是否到交接时间,如果交接时间到,则由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号。其中,对于主导设备对SPI总线通讯控制权并非持续拥有,本实施例会对主导设备拥有SPI总线通讯控制权的时间加以设定,即设置主导设备的SPI总线通讯控制权的本文档来自技高网...

【技术保护点】
1.一种SPI双主设备访问同一从设备的协同方法,其特征在于,所述方法包括步骤:/n预先将两个主设备分别设定为主导设备和副设备,所述主导设备用以管理SPI总线通讯控制权,所述副设备用以接收和归还SPI总线通讯控制权;/n判断所述主导设备的SPI总线通讯控制权是否到交接时间,如果交接时间到,则由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号;/n判断所述副设备是否需要访问从设备,如果需要,则由所述副设备接收所述SPI总线通讯控制权,并由所述副设备通过所述SPI总线对所述从设备进行访问;/n在所述副设备完成对所述从设备的访问后,由所述副设备向所述主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给所述主导设备。/n

【技术特征摘要】
1.一种SPI双主设备访问同一从设备的协同方法,其特征在于,所述方法包括步骤:
预先将两个主设备分别设定为主导设备和副设备,所述主导设备用以管理SPI总线通讯控制权,所述副设备用以接收和归还SPI总线通讯控制权;
判断所述主导设备的SPI总线通讯控制权是否到交接时间,如果交接时间到,则由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号;
判断所述副设备是否需要访问从设备,如果需要,则由所述副设备接收所述SPI总线通讯控制权,并由所述副设备通过所述SPI总线对所述从设备进行访问;
在所述副设备完成对所述从设备的访问后,由所述副设备向所述主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给所述主导设备。


2.根据权利要求1所述的SPI双主设备访问同一从设备的协同方法,其特征在于,所述由所述主导设备向所述副设备发送SPI总线通讯控制权释放信号的步骤具体包括:
由所述主导设备以预定时间周期性向所述副设备发送SPI总线通讯控制权释放信号,询问所述副设备是否需要访问从设备。


3.根据权利要求2所述的SPI双主设备访问同一从设备的协同方法,其特征在于,所述SPI总线通讯控制权释放信号为具有特定数量特定占空比的方波信号。


4.根据权利要求1所述的SPI双主设备访问同一从设备的协同方法,其特征在于,在所述预先将两个主设备分别设定为主导设备和副设备的步骤之后还包括:预先通过设置所述主导设备的SPI总线通讯控制权的交接时间,调整所述主导设备和副设备访问从设备的通讯比例。


5.根据权利要求1所述的SPI双主设备访问同一从设备的协同方法,其特征在于,如果所述副设备不需要访问从设备,则由所述副设备向所述主导设备发送SPI总线通讯控制权释放信号,并释放SPI总线通讯控制权给所述主导设备。


6.根据权利要求1所述的SPI双主...

【专利技术属性】
技术研发人员:王武涛罗申费学灿
申请(专利权)人:深圳星康医疗科技有限公司肇庆星网医疗科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1