一种基于FPGA技术实现SPI多从机的通讯方法技术

技术编号:33057198 阅读:13 留言:0更新日期:2022-04-15 09:44
本发明专利技术涉及通讯方法技术领域,尤其为一种基于FPGA技术实现SPI多从机的通讯方法,包括FPGA处理模块、SPI从机以及mcu主控板,包括以下步骤:S1,mcu主控板通过FPGA处理模块向SPI从机发送时间校准帧1,时间校准帧1内带有mcu主控板的实时时间t1,SPI从机接收到时间校准帧1后立刻给FPGA处理模块返回一个时间校准帧2,时间校准帧2内带有SPI从机的实时时间t2,FPGA处理模块接收到时间校准帧2后,向mcu主控板发送时间校准帧23,时间校准帧3内部带有FPGA处理模块的实时时间t3,mcu主控板接收时间校准帧3,并计算出延迟时间,本发明专利技术可以有效解决目前使用的SPI多从机的通讯方法效果较差的。的。

【技术实现步骤摘要】
一种基于FPGA技术实现SPI多从机的通讯方法


[0001]本专利技术涉及通讯方法
,具体为一种基于FPGA技术实现SPI多从机的通讯方法。

技术介绍

[0002]目前使用的SPI多从机的通讯方法效果较差。
[0003]综上所述,本专利技术提供一种基于FPGA技术实现SPI多从机的通讯方法来解决上述问题。

技术实现思路

[0004]本专利技术的目的在于提供一种基于FPGA技术实现SPI多从机的通讯方法,以解决上述
技术介绍
中提出的问题。
[0005]为实现上述目的,本专利技术提供如下技术方案:
[0006]一种基于FPGA技术实现SPI多从机的通讯方法,包括FPGA处理模块、SPI从机以及mcu主控板,包括以下步骤:
[0007]S1,mcu主控板通过FPGA处理模块向SPI从机发送时间校准帧1,时间校准帧1内带有mcu主控板的实时时间t1,SPI从机接收到时间校准帧1后立刻给FPGA处理模块返回一个时间校准帧2,时间校准帧2内带有SPI从机的实时时间t2,FPGA处理模块接收到时间校准帧2后,向mcu主控板发送时间校准帧23,时间校准帧3内部带有FPGA处理模块的实时时间t3,mcu主控板接收时间校准帧3,并计算出延迟时间,将计算出的延迟时间输送给SPI从机,SPI从机根据输入延迟时间调整其内部的实时时间,重复上述步骤,逐一对SPI从机进行时间校准;
[0008]S2,mcu主控板通过FPGA处理模块逐个向SPI从机发送指令帧,扫描从机状态,SPI从机向mcu主控板发送优先级帧,mcu主控板根据优先级帧计算SPI从机的优先级,使用计算出的优先级来安排发送顺序,mcu主控板根据发送顺序通过FPGA处理模块逐个向SPI从机发送数据帧。
[0009]作为本专利技术优选的方案,所述延迟时间的计算公式为:T=(t3

t1)/2+(t3

t2)/2。
[0010]作为本专利技术优选的方案,所述S2中从机优先级SP计算方法如下:SP=p
·
(aL+b/M)+c
·
Sn其中M是扫描次数,M=1,2,3,
……
,n,每次加1,a、b、c是常量参数。
[0011]作为本专利技术优选的方案,所述指令帧包括起始位、SPI从机地址Sn以及发送询问。
[0012]作为本专利技术优选的方案,所述优先级帧包括起始位、mcu主控板地址以及数据优先级p。
[0013]作为本专利技术优选的方案,所述主机数据帧包括起始位、SPI从机地址Sn以及数据。
[0014]作为本专利技术优选的方案,所述指令帧和数据帧的起始位分别为3个脉冲和2个脉冲。
[0015]作为本专利技术优选的方案,所述优先级帧的起始位为3个脉冲。
[0016]与现有技术相比,本专利技术的有益效果是:
[0017]1、本专利技术中,通过mcu主控板通过FPGA处理模块向SPI从机发送时间校准帧1,时间校准帧1内带有mcu主控板的实时时间t1,SPI从机接收到时间校准帧1后立刻给FPGA处理模块返回一个时间校准帧2,时间校准帧2内带有SPI从机的实时时间t2,FPGA处理模块接收到时间校准帧2后,向mcu主控板发送时间校准帧23,时间校准帧3内部带有FPGA处理模块的实时时间t3,mcu主控板接收时间校准帧3,并计算出延迟时间,将计算出的延迟时间输送给SPI从机,SPI从机根据输入延迟时间调整其内部的实时时间,重复上述步骤,逐一对SPI从机进行时间校准,mcu主控板通过FPGA处理模块逐个向SPI从机发送指令帧,扫描从机状态,SPI从机向mcu主控板发送优先级帧,mcu主控板根据优先级帧计算SPI从机的优先级,使用计算出的优先级来安排发送顺序,mcu主控板根据发送顺序通过FPGA处理模块逐个向SPI从机发送数据帧,提高SPI多从机的通讯效果。
具体实施方式
[0018]下面将结合本专利技术实施例,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例,基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0019]除非另有定义,本文所使用的所有的技术和科学术语与属于本专利技术的
的技术人员通常理解的含义相同,本文中在本专利技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本专利技术,本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
[0020]本专利技术提供一种技术方案:
[0021]一种基于FPGA技术实现SPI多从机的通讯方法,包括FPGA处理模块、SPI从机以及mcu主控板,包括以下步骤:
[0022]S1,mcu主控板通过FPGA处理模块向SPI从机发送时间校准帧1,时间校准帧1内带有mcu主控板的实时时间t1,SPI从机接收到时间校准帧1后立刻给FPGA处理模块返回一个时间校准帧2,时间校准帧2内带有SPI从机的实时时间t2,FPGA处理模块接收到时间校准帧2后,向mcu主控板发送时间校准帧23,时间校准帧3内部带有FPGA处理模块的实时时间t3,mcu主控板接收时间校准帧3,并计算出延迟时间,将计算出的延迟时间输送给SPI从机,SPI从机根据输入延迟时间调整其内部的实时时间,重复上述步骤,逐一对SPI从机进行时间校准;
[0023]S2,mcu主控板通过FPGA处理模块逐个向SPI从机发送指令帧,扫描从机状态,SPI从机向mcu主控板发送优先级帧,mcu主控板根据优先级帧计算SPI从机的优先级,使用计算出的优先级来安排发送顺序,mcu主控板根据发送顺序通过FPGA处理模块逐个向SPI从机发送数据帧。
[0024]进一步的,所述延迟时间的计算公式为:T=(t3

t1)/2+(t3

t2)/2。
[0025]进一步的,所述S2中从机优先级SP计算方法如下:SP=p
·
(aL+b/M)+c
·
Sn其中M是扫描次数,M=1,2,3,
……
,n,每次加1,a、b、c是常量参数。
[0026]进一步的,所述指令帧包括起始位、SPI从机地址Sn以及发送询问。
[0027]进一步的,所述优先级帧包括起始位、mcu主控板地址以及数据优先级p。
[0028]进一步的,所述主机数据帧包括起始位、SPI从机地址Sn以及数据。
[0029]进一步的,所述指令帧和数据帧的起始位分别为3个脉冲和2个脉冲。
[0030]进一步的,所述优先级帧的起始位为3个脉冲。
[0031]具体实施方式:
[0032]mcu主控板通过FPGA处理模块向SPI从机发送时间校准帧1,时间校准帧1内带有mcu主控板的实时时间t1,SPI从机接收到时间校准帧1后立刻给FPGA处理模块返回一个时间校准帧2,时间校准帧2内带有S本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA技术实现SPI多从机的通讯方法,包括FPGA处理模块、SPI从机以及mcu主控板,其特征在于,包括以下步骤:S1,mcu主控板通过FPGA处理模块向SPI从机发送时间校准帧1,时间校准帧1内带有mcu主控板的实时时间t1,SPI从机接收到时间校准帧1后立刻给FPGA处理模块返回一个时间校准帧2,时间校准帧2内带有SPI从机的实时时间t2,FPGA处理模块接收到时间校准帧2后,向mcu主控板发送时间校准帧23,时间校准帧3内部带有FPGA处理模块的实时时间t3,mcu主控板接收时间校准帧3,并计算出延迟时间,将计算出的延迟时间输送给SPI从机,SPI从机根据输入延迟时间调整其内部的实时时间,重复上述步骤,逐一对SPI从机进行时间校准;S2,mcu主控板通过FPGA处理模块逐个向SPI从机发送指令帧,扫描从机状态,SPI从机向mcu主控板发送优先级帧,mcu主控板根据优先级帧计算SPI从机的优先级,使用计算出的优先级来安排发送顺序,mcu主控板根据发送顺序通过FPGA处理模块逐个向SPI从机发送数据帧。2.根据权利要求1所述的一种基于FPGA技术实现SPI多从机的通讯方法,其特征在于:所述延迟时间的计算公式为:T=(t3

【专利技术属性】
技术研发人员:陈润平
申请(专利权)人:深圳思凯测试技术有限公司
类型:发明
国别省市:

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

1