全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 可编程逻辑 >

【ZYNQ Ultrascale+ MPSOC FPGA教程】第三十一章FreeRTO

时间:2021-01-30 10:16

人气:

作者:admin

标签: Zynq  FPGA  MPSoC  FreeRTOS  LED 

导读:如何搭建Free RTOS实时操作系统运行环境,这里不深入探讨Free RTOS的具体使用。本实验以FreeRTOS Hello World做举例,并实现两个LED灯以不同间隔持续闪烁。...

原创声明:

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

适用于板卡型号:

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

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

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

学习 ZYNQ,很大一部分都是FPGA开发人员,不太擅长使用Linux,所以我建议大家还是先使用实时操作系统或者裸机运行,这样也有更大的灵活性。本章给大家讲解如何搭建Free RTOS实时操作系统运行环境,这里不深入探讨Free RTOS的具体使用。本实验以FreeRTOS Hello World做举例,并实现两个LED灯以不同间隔持续闪烁。

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

软件工程师工作内容

以下为软件工程师负责内容。

1.VITIS程序开发

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

v2-1fb80ff88483411de9a5738a5432c07e_720w.jpg

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

pIYBAGATb-2ALLRmAAB9gWstVsM355.jpg

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

o4YBAGATb-2ANeQ3AAB9gJ5_czQ428.jpg

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

pIYBAGATb-6AAzoDAABFVK490pc958.jpg

2. 板上验证

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

pIYBAGATb-6AcY7CAACq-QWIQHs254.jpg

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

pIYBAGATb-6AcY7CAACq-QWIQHs254.jpg

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

3. 本章小结

相对于复杂的Linux,FreeRTOS 等实时操作系统给我们带来更灵活更方便的开发,可以更

直接的和底层FPGA进行交互,但是FreeRTOS本身也有一点难度,要想熟练应用,还是要结

合具体的项目多加练习。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信