导航菜单

基于FPGA的无线通信系统设计

刘红光,路瑞军,赵艳,李元耀,张欣

(天津市计量监督检测科学研究院,天津300192)

摘要:nRF24L01是Nordic公司推出的一款工作在2.4~2.5 GHz世界通用ISM频段的新型高速无线收发器芯片,在中短距离无线通信领域应用非常广泛,其参数配置、模式转换、数据收发等操作都是通过SPI总线完成的。采用硬件的方法,实现了通信系统真正意义上数据收和发的同时进行,提高了数据传输的实时性。通过实验证明,基于FPGA的无线通信系统数据,传输效率高、性能稳定、可扩展性强,具有很高的应用价值。

关键字:FPGA;nRF24L01;SPI总线;Verilog

中图分类号:TN926?34 文献标识码:A 文章编号:1004?373X(2015)13?0036?03

收稿日期:2015?01?25

0 引言

在现代工业数据传输现场,有线电缆往往扮演着十分重要的角色,与此同时,也引来了很多有线传输束缚仪器作业的系列问题,因此数据无线通信系统的研制越来越受到关注。nRF24L01芯片是挪威Nordic公司的一款射频收发器件,该芯片的数据传输速率可以高达2 Mb/s。

nRF24L01芯片在提供较高数据传输速率的同时,只需要花较小的功耗,因此该芯片在中短距离的无线传输领域应用十分广泛。芯片的数字传输包括参数配置、模式转换、数据收发在内的操作都是通过SPI接口完成的。在目前的市场上,控制器件在控制芯片收发数据的时候大都采用软件扩展,利用I/O 口通过软件模拟SPI接口进行数据交换。然而这种情况严重影响了无线芯片数据传输的高速性能,制约了无线通信系统的传输速率,类似问题在以单片机控制的无线通信系统里非常普遍,亟待解决。相比较单片机的控制,FPGA 设计SPI总线只要对设计做简单的改动,即可对SPI 总线的数据位数、工作模式等进行扩展,因此基于FPGA 设计的无线通信系统,具有便于修改、可扩展性强的特点。

根据nRF24L01PA芯片的读写时序可以知道SPI主模块的工作模式应该是在CPOL=0,CPHA=0 模式下进行的,本文选用的nRF24L01PA 芯片模块如图1 所示。整体的无线系统包括射频模块、控制模块、SPI主模块、串口模块、计算机。其中控制模块、SPI主模块、串口模块是通过FPGA设计实现的。

1 SPI_Master 模块的设计

图2 为nRF24L01 芯片的引脚功能说明,其中CSN是芯片的输入引脚,作为SPI从机的片选信号,由主机控制输出。SCK为芯片的输入引脚,作为SPI的时钟信号。由此可以知道本文设计的SPI总线接口模块应为主机,nRF24L01的SPI模块为从机。

每当一个周期的SPI发送完成以后,计数器count加1。以此类推,后面7个周期的数据传输过程与第一个周期类似,当全部8位数据传输完成之后,将字节传输完成信号byte_end置1。移位寄存器模块的RTL视图如图4 所示。至此,完成了整个SPI 主模块的设计,在Quartus Ⅱ软件下对SPI主模块进行综合与实现。

2 控制模块的设计

在本文设计中,串口是计算机和FPGA进行数据通信的桥梁。本文的设计中串口模块包括发送模块和接收模块,波特率设计为115 200 b/s(可调),发送的数据帧格式为:1位起始位,8位数据位,无校验位,1 位停止位。上位机是通过串口调试助手进行调试的。通过FPGA设计的nRF24L01控制模块主要工作是控制射频模块,协调SPI 模块和串口模块完成数据的采集和发送。数据的发送和接收流程如图5和图6所示。

3 系统验证

该系统的设计进行了最后的板级验证,使用ModelSim?Altera仿真工具对各个模块进行了仿真,实验证明设计的无线系统工作稳定,数据的传输速率有了明显的提高,达到了预期的目的。如图7所示为基于FPGA实现的无线通信系统实物连接图。其中EP2C5T144C8N开发板、USB转串口模块、nRF24L01PA模块组成通信系统的一端。USB转串口模块负责电脑和开发板的数据传送。

通过计算机向发送端传输1 056 KB 的数据包,数据经过串口模块、控制模块、SPI模块、射频模块发送出去。接收端接收到有效数据后通过串口调试工具在计算机上显示出来,实验证明接收到了1 056 KB数据,数据正确,没有发生掉包现象。另外,nRF24L01PA 模块设计了功率放大电路,经过实验测试在室内的情况下,整个无线通信系统的通信距离能达到15 m,证明该无线系统的实用性很强。

4 结论

无线通信系统实用性强,而高速率的无线收发芯片nRF24L01应用十分广泛,本文是在实际应用的基础上,提出了一种基于FPGA 实现的无线通信系统的设计。经验证该无线通信系统工作稳定、数据传输效率高、可扩展性强,发挥了nRF24L01芯片高速通信的优势。

本文创新点:根据SPI 总线规范,采用硬件的方法扩展SPI接口,用Verilog HDL设计并实现带有移位寄存器的SPI总线模块、nRF24L01PA 控制模块、串口模块,使用仿真工具ModelSim对其进行仿真,并在FPGA上完成了下载与验证。采用EP2C5T144C8N 完成整个系统的控制和数据采集功能,性能大大优于传统的单片机控制数据无线通信系统。该系统具有数据传输速率高、简洁高效、便于修改、可扩展性强、工作稳定可靠等特点,提高了nRF24L01芯片无线数据传输的工作效率,具有较强的实用性。

教育期刊网 http://www.jyqkw.com
参考文献

[1] 李大江,崔建明.一种基于FPGA的可配置SPI Master接口设计实现[J].电子技术应用,2010,36(10):60?62.

[2] 周毅,朱超,吴武臣,等.基于FPGA的RFID无线通信系统的实现[J].现代电子技术,2010,33(17):69?72.

[3] 王珏文,金伟信,蔡一兵,等.基于FPGA的SPI总线接口的实现[J].现代电子技术,2010,33(14):102?104.

[4] 王松.基于FPGA的串行外围接口SPI设计与实现[J].微计算机信息,2010(32):117?119.

[5] 杨承富,徐志军.SPI总线接口的FPGA 设计与实现[J].军事通信技术,2004,25(2):72?76.

[6] 夏宇闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2003.

[7] 梁祥,封吉平,安学军.基于PC/104总线与CPLD的SPI接口设计[J].微计算机信息,2005(35):29?32.

作者简介:刘红光(1986—),男,河北衡水人,硕士研究生。研究方向为无线通信与电子测控技术。

下载文本