【ZYNQ Ultrascale+ MPSOC FPGA教程】第三十一章 FreeRTOS实验

原创声明:

本原创教程由芯驿电子科技(上海)有限公司(ALINX)创做,版权归本公司全部,如需转载,需受权并注明出处。node

适用于板卡型号:

AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P /AXU9EG/AXU15EGsvg

 

实验Vivado工程目录为“ps_axi_gpio /vivado”。学习

实验vitis工程目录为“freertos /vitis”。spa

学习 ZYNQ,很大一部分都是FPGA开发人员,不太擅长使用Linux,因此我建议你们还操作系统

是先使用实时操做系统或者裸机运行,这样也有更大的灵活性。本章给你们讲解如何搭建3d

Free RTOS实时操做系统运行环境,这里不深刻探讨Free RTOS的具体使用。本实验以FreeRTOS Hello World作举例,并实现两个LED灯以不一样间隔持续闪烁。orm

本实验基于 “PL端AXI GPIO的使用”工程,硬件环境不须要修改。blog

ALINX:【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十九章PL端AXI GPIO的使用​zhuanlan.zhihu.com图标教程

软件工程师工做内容

如下为软件工程师负责内容。队列

1.VITIS程序开发

1) 参考Hello World一章,新建工程,OS选择freertos10_xilinx

2)本实验选择FreeRTOS Hello World作举例

Hello World例子中创建了两个任务,发送任务和接收任务,接收任务的优先级高于发送任务。而且建立队列,由发送任务向队列发送数据,接收任务从队列中读取数据并打印。例子中设置了timer,但在本实验中删除了timer,让发送和接收任务一直工做。

3)在此基础上增长PS和PL端LED闪烁任务,PS端闪烁间隔为100ms,PL端闪烁间隔为1S

2. 板上验证

1)下载界面设置,下载程序

2)打开串口,正在持续打印数据

3)同时也能看到开发板上LED1和LED2闪烁,直观地体现了多任务并行处理。

3. 本章小结

相对于复杂的Linux,FreeRTOS 等实时操做系统给咱们带来更灵活更方便的开发,能够更

直接的和底层FPGA进行交互,可是FreeRTOS自己也有一点难度,要想熟练应用,仍是要结

合具体的项目多加练习。

相关文章
相关标签/搜索