Arduino Due与FPGA的数据通信方法及系统技术方案

技术编号:20944235 阅读:33 留言:0更新日期:2019-04-24 02:17
本申请涉及通信控制技术领域,具体公开一种Arduino Due与FPGA的数据通信方法包括:分别配置Arduino Due和FPGA的通信信号引脚的第一电平强度,在所述时钟信号引脚为输入引脚时,配置所述片选信号引脚的电平强度为第二电平强度,开始由Arduino Due向FPGA写数据或由Arduino Due从FPGA读数据;若检测到所述输入引脚触发中断响应,则完成一次由Arduino Due向FPGA写数据或由Arduino Due从FPGA读数据;在所述时钟信号引脚为输出引脚时,若检测到所述片选信号引脚的片选信号下降,则开始由FPGA向Arduino Due写数据或由FPGA从Arduino Due读数据;若检测到所述输出引脚触发响应,则完成一次由FPGA向Arduino Due写数据或由FPGA从Arduino Due读数据。通过上述方法可使Arduino Due与FPGA之间进行快速数据通讯。

Data Communication Method and System between Arduino Due and FPGA

This application relates to the field of communication control technology. Specifically, a data communication method between Arduino Due and FPGA is disclosed, including: configuring the first level strength of the communication signal pins of Arduino Due and FPGA respectively. When the clock signal pin is the input pin, configuring the level strength of the chip-selected signal pin is the second level strength, and starting to write data from Arduino Due to the FPGA or from Arduino Due to the FPGA. Ino Due reads data from the FPGA; if the interrupt response triggered by the input pin is detected, the data written by Arduino Due to the FPGA or read by Arduino Due from the FPGA is completed once; when the clock signal pin is the output pin, if the chip selection signal of the chip selection signal pin is detected to decline, the data written from the FPGA to Arduino Due or read from Arduino Due by the FPGA is started; When the trigger response of the output pin is detected, data is written to Arduino Due by the FPGA or read from Arduino Due by the FPGA. Through the above method, Arduino Due can communicate with FPGA rapidly.

【技术实现步骤摘要】
ArduinoDue与FPGA的数据通信方法及系统
本申请涉及通信控制
,尤其涉及一种ArduinoDue与FPGA的数据通信方法及系统。
技术介绍
电子信息应用技术的发展带动了集成芯片和软件工具的飞速发展,使得基于C/C++、python、Java、verilogHDL等语言的集成芯片得到广泛引用。其中基于C/C++的ARM、DSP和基于verilogHDL的FPGA及其集成嵌入式系统在实际信号处理、运动控制等领域中应用较为广泛。自2005年MassimoBanzi等人开发出Arduino以来,目前已经出现ArduinoUno、Nano、Mega2560、Due等众多Arduino型号及其ArduinoGSMShield、WirelessProtoShield、WiFiShield、MotorShield等多种扩展硬件平台。其中ArduinoDue采用AtmelSAM3X8ECPU芯片,是第一块基于32位ARM核心微控制器的Arduino型号,时钟频率为84MHz,性能远优于ArduinoUno、Nano、Mega2560等同类产品。但其在基于数据信号采集处理方面的应用较为欠缺。一方面,由于ArduinoDue之外的其它Arduino型号是时钟速率和数据位宽均较低,而性能强大的ArduinoDue出现较晚,发展速度还未突显;另一方面,目前在数据信号采集处理方面主要采用FPGA来实现,ArduinoDue相比较于STM32FXX系列ARM和DSP,缺少与FPGA进行数据快速通讯的控制-地址-数据并行总线传输协议和扩展功能,虽然可利用UART、IIC、SPI等串行通信方式,且占有I/O引脚较少,但是通信速率有限,使得其应用受限,性能无法显著提升。
技术实现思路
有鉴于此,本申请实施例提供一种ArduinoDue与FPGA的数据通信方法及系统,以解决现有技术中ArduinoDue与FPGA之间不能进行快速数据通讯的问题。本申请实施例第一方面提供了一种ArduinoDue与FPGA的数据通信方法,所述数据通信方法包括:分别配置ArduinoDue和FPGA的通信信号引脚的第一电平强度,其中,所述通信信号引脚包括片选信号引脚、地址线信号引脚、数据线信号引脚和时钟信号引脚;在所述时钟信号引脚为输入引脚时,配置所述片选信号引脚的电平强度为第二电平强度,开始由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据;若检测到所述输入引脚触发中断响应,则完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据;在所述时钟信号引脚为输出引脚时,若检测到所述片选信号引脚的片选信号下降,则开始由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据;若检测到所述输出引脚触发响应,则完成一次由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据。可选地,所述若检测到所述输入引脚触发中断响应,则完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据,包括:若检测到所述输入引脚的时钟信号下降沿触发中断响应,则根据传输的地址和数据依次对所述地址线信号引脚和所述数据线信号引脚进行高低电平的配置,以完成一次由ArduinoDue向FPGA写数据;若检测到所述输入引脚的时钟信号上升沿触发中断响应,则依次读取所述地址线信号引脚和所述数据线信号引脚的高低电平,以完成一次由ArduinoDue从FPGA读数据。可选地,所述若检测到所述输出引脚触发响应,则完成一次由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据包括:若检测到所述输出引脚对应的时钟信号上升沿响应,则根据传输的地址和数据对所述地址线引脚和数据线引脚的高低电平进行配置,以完成一次由FPGA向ArduinoDue写数据;若检测到所述输出引脚对应的时钟信号下降沿响应,则并行读取所述地址线引脚和数据线引脚的高低电平,以完成一次由FPGA从ArduinoDue读数据。可选地,在完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据之后,包括:在所述片选信号引脚的电平强度恢复为所述第一电平强度时,停止由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据。可选地,在完成一次由FPGA向ArduinoDue写数据或由FPGA向ArduinoDue读数据之后,包括:若检测到所述片选信号引脚的片选信号上升,则停止由FPGA向ArduinoDue写数据或由FPGA向ArduinoDue读数据。本申请实施例第二方面提供了一种ArduinoDue与FPGA的数据通信系统,所述数据通信系统包括:配置模块,用于分别配置ArduinoDue和FPGA的通信信号引脚的第一电平强度,其中,所述通信信号引脚包括片选信号引脚、地址线信号引脚、数据线信号引脚和时钟信号引脚;第一读写模块,用于在所述时钟信号引脚为输入引脚时,配置所述片选信号引脚的电平强度为第二电平强度,开始由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据;若检测到所述输入引脚触发中断响应,则完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据;第二读写模块,用于在所述时钟信号引脚为输出引脚时,若检测到所述片选信号引脚的片选信号下降,则开始由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据;若检测到所述输出引脚触发响应,则完成一次由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据。可选地,所述第一读写模块在若检测到所述输入引脚触发中断响应,则完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据时,具体用于:若检测到所述输入引脚的时钟信号下降沿触发中断响应,则根据传输的地址和数据依次对所述地址线信号引脚和所述数据线信号引脚进行高低电平的配置,以完成一次由ArduinoDue向FPGA写数据;若检测到所述输入引脚的时钟信号上升沿触发中断响应,则依次读取所述地址线信号引脚和所述数据线信号引脚的高低电平,以完成一次由ArduinoDue从FPGA读数据。可选地,所述第二读写模块在检测到所述输出引脚触发响应,则完成一次由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据时,具体用于:若检测到所述输出引脚对应的时钟信号上升沿响应,则根据传输的地址和数据对所述地址线引脚和数据线引脚的高低电平进行配置,以完成一次由FPGA向ArduinoDue写数据;若检测到所述输出引脚对应的时钟信号下降沿响应,则并行读取所述地址线引脚和数据线引脚的高低电平,以完成一次由FPGA从ArduinoDue读数据。可选地,所述ArduinoDue与FPGA的数据通信系统还用于:在所述片选信号引脚的电平强度恢复为所述第一电平强度时,停止由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据。可选地,所述ArduinoDue与FPGA的数据通信系统还用于:若检测到所述片选信本文档来自技高网
...

【技术保护点】
1.一种Arduino Due与FPGA的数据通信方法,其特征在于,所述数据通信方法包括:分别配置Arduino Due和FPGA的通信信号引脚的第一电平强度,其中,所述通信信号引脚包括片选信号引脚、地址线信号引脚、数据线信号引脚和时钟信号引脚;在所述时钟信号引脚为输入引脚时,配置所述片选信号引脚的电平强度为第二电平强度,开始由Arduino Due向FPGA写数据或由Arduino Due从FPGA读数据;若检测到所述输入引脚触发中断响应,则完成一次由Arduino Due向FPGA写数据或由Arduino Due从FPGA读数据;在所述时钟信号引脚为输出引脚时,若检测到所述片选信号引脚的片选信号下降,则开始由FPGA向Arduino Due写数据或由FPGA从Arduino Due读数据;若检测到所述输出引脚触发响应,则完成一次由FPGA向Arduino Due写数据或由FPGA从Arduino Due读数据。

【技术特征摘要】
1.一种ArduinoDue与FPGA的数据通信方法,其特征在于,所述数据通信方法包括:分别配置ArduinoDue和FPGA的通信信号引脚的第一电平强度,其中,所述通信信号引脚包括片选信号引脚、地址线信号引脚、数据线信号引脚和时钟信号引脚;在所述时钟信号引脚为输入引脚时,配置所述片选信号引脚的电平强度为第二电平强度,开始由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据;若检测到所述输入引脚触发中断响应,则完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据;在所述时钟信号引脚为输出引脚时,若检测到所述片选信号引脚的片选信号下降,则开始由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据;若检测到所述输出引脚触发响应,则完成一次由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据。2.如权利要求1所述的ArduinoDue与FPGA的数据通信方法,其特征在于,所述若检测到所述输入引脚触发中断响应,则完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据,包括:若检测到所述输入引脚的时钟信号下降沿触发中断响应,则根据传输的地址和数据依次对所述地址线信号引脚和所述数据线信号引脚进行高低电平的配置,以完成一次由ArduinoDue向FPGA写数据;若检测到所述输入引脚的时钟信号上升沿触发中断响应,则依次读取所述地址线信号引脚和所述数据线信号引脚的高低电平,以完成一次由ArduinoDue从FPGA读数据。3.如权利要求1所述的ArduinoDue与FPGA的数据通信方法,其特征在于,所述若检测到所述输出引脚触发响应,则完成一次由FPGA向ArduinoDue写数据或由FPGA从ArduinoDue读数据包括:若检测到所述输出引脚对应的时钟信号上升沿响应,则根据传输的地址和数据对所述地址线引脚和数据线引脚的高低电平进行配置,以完成一次由FPGA向ArduinoDue写数据;若检测到所述输出引脚对应的时钟信号下降沿响应,则并行读取所述地址线引脚和数据线引脚的高低电平,以完成一次由FPGA从ArduinoDue读数据。4.如权利要求1或2所述的ArduinoDue与FPGA的数据通信方法,其特征在于,在完成一次由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据之后,包括:在所述片选信号引脚的电平强度恢复为所述第一电平强度时,停止由ArduinoDue向FPGA写数据或由ArduinoDue从FPGA读数据。5.如权利要求1或3所述的ArduinoDue与FPGA的数据通信方法,其特征在于,在完成一次由FPGA向ArduinoDue写数据或由FPGA向ArduinoDue读数据之后,包括:若检测到所述片选信号引脚的片选信号上升,则停止由FPGA向ArduinoDue写数据或由FPGA向ArduinoDue读数据。...

【专利技术属性】
技术研发人员:王卫兵张鲁薇王锐王挺峰郭劲
申请(专利权)人:中国科学院长春光学精密机械与物理研究所
类型:发明
国别省市:吉林,22

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

1