[发明专利]MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法在审
| 申请号: | 202010675004.5 | 申请日: | 2020-07-14 |
| 公开(公告)号: | CN111966623A | 公开(公告)日: | 2020-11-20 |
| 发明(设计)人: | 袁钟达;樊立明;杨翠翠;杨健;王剑飞;李晨曦;李泽辰;李海飞;李龙洲;黄迟;张立雄;王磊;刘洋 | 申请(专利权)人: | 西安爱生无人机技术有限公司 |
| 主分类号: | G06F13/42 | 分类号: | G06F13/42 |
| 代理公司: | 西安智邦专利商标代理有限公司 61211 | 代理人: | 王少文 |
| 地址: | 710065 陕*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | mcu fpga 使用 spi 进行 实时 双工 可靠 通信 方法 | ||
1.一种MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:MCU端与多个FPGA端通过SPI同时进行步骤1和2;
步骤1、MCU端向多个FPGA端发送数据;
步骤1.1、MCU端判断是否需要发送帧数据;若是,则MCU端将帧数据按照传输协议的数据格式构建多个子数据;若否,则MCU端将任意数据按照传输协议的数据格式构建多个子数据;所述子数据的长度为M;所述传输协议的数据格式如下:第1字节为数据性质,第2~3字节为帧数据长度,第4~(M-1)字节为所发送数据,第M字节为校验位;所述数据性质包括有效数据、无效数据和重发申请;其中,M≥5;
步骤1.2、MCU端作为主机通过SPI向多个FPGA端不断循环发送子数据;
步骤1.3、每个FPGA端接收子数据,并根据第1字节判断数据性质;若数据性质为有效,执行步骤1.4;若数据性质为无效,结束;若数据性质为重发申请,则重新发送子数据;
步骤1.4、FPGA端判断第M字节是否正确;若是,执行步骤1.5;若否,向MCU端发送指令申请重发;
步骤1.5、FPGA端根据第2~3字节计算帧数据长度;
步骤1.6、FPGA端根据帧数据长度,将多个子数据中的第4~(M-1)字节依次组成完整的一帧数据,结束;
步骤2、多个FPGA端向MCU端发送数据;
步骤2.1、FPGA端判断是否需要发送帧数据;若是,则FPGA端将帧数据按照传输协议的数据格式构建多个子数据;若否,则FPGA端将任意数据按照传输协议的数据格式构建多个子数据;所述子数据的长度为M;所述传输协议的数据格式如下:第1字节为数据性质,第2~3字节为帧数据长度,第4~(M-1)字节为所发送数据,第M字节为校验位;所述数据性质包括有效数据、无效数据和重发申请;其中,M≥5;
步骤2.2、多个FPGA端作为从机通过SPI向MCU端不断循环发送子数据;
步骤2.3、MCU端接收子数据,并根据第1字节判断数据性质;若数据性质为有效,执行步骤2.4;若数据性质为无效,结束;若数据性质为重发申请,则重新发送子数据;
步骤2.4、MCU端判断第M字节是否正确;若是,执行步骤2.5;若否,向FPGA端发送指令申请重发;
步骤2.5、MCU端根据第2~3字节计算帧数据长度;
步骤2.6、MCU端根据帧数据长度,将多个子数据中的第4~(M-1)字节依次组成完整的一帧数据,结束。
2.根据权利要求1所述的MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:
所述步骤1.1中,MCU端有帧数据要发送时,子数据的第1字节数据性质为有效数据;MCU端没有帧数据要发送时,子数据的第1字节数据性质为无效数据;
所述步骤2.1中,FPGA端有帧数据要发送时,子数据的第1字节数据性质为有效数据;FPGA端没有帧数据要发送时,子数据的第1字节数据性质为无效数据。
3.根据权利要求2所述的MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:
所述步骤1.1中,有效数据为0xAA,无效数据为0xAB,重发申请为0xAC;
所述步骤2.1中,有效数据为0xAD,无效数据为0xAE,重发申请为0xAF。
4.根据权利要求3所述的MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:
所述步骤1.1中,M=140;
所述步骤2.1中,M=140。
5.根据权利要求4所述的MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:
所述步骤1.2中,MCU端使用DMA循环发送子数据。
6.根据权利要求1至5任一所述的MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:
所述FPGA端根据MCU端的片选高低使能接收子数据,具体步骤如下:
当MCU端的片选为低电平时,FPGA端在时钟的第一个上升沿接收子数据,在时钟的第一个下降沿将子数据存入移位寄存器中。
7.根据权利要求6所述的MCU与多个FPGA使用SPI进行实时全双工可靠通信的方法,其特征在于:
所述SPI主频为84MHz。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安爱生无人机技术有限公司,未经西安爱生无人机技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010675004.5/1.html,转载请声明来源钻瓜专利网。





