原始声明:该原始教程是由信义电子技术(上海)有限公司(ALINX)创建的。
版权归我们公司所有。
如果需要重印,则需要授权并注明出处。
适用于板型号:AXU2CGA / AXU2CGB / AXU3EG / AXU4EV-E / AXU4EV-P / AXU5EV-E / AXU5EV-P / AXU9EG / AXU15EG实验Vivado项目目录为“ ps_axi_gpio / vivado”。
实验葡萄项目目录为“ freertos / vitis”。
在学习ZYNQ时,其中很大一部分是不擅长使用Linux的FPGA开发人员,因此我建议您仍然首先使用实时操作系统或裸机操作,这也具有更大的灵活性。
本章将向您说明如何构建FreeRTOS实时操作系统的操作环境。
我不会深入讨论FreeRTOS的具体用法。
本实验以FreeRTOSHelloWorld为例,了解到两个LED灯继续以不同的间隔闪烁。
该实验基于“在PL上使用AXIGPIO”。
项目,并且不需要修改硬件环境。
软件工程师的工作内容以下是软件工程师的责任。
1. VITIS程序开发1)参考HelloWorld章节,创建一个新项目,并选择freertos10_xilinx作为OS。
2)本实验以FreeRTOSHelloWorld为例。
在HelloWorld示例中,创建了两个任务,即发送任务和接收任务。
接收任务的优先级高于发送任务。
创建队列,发送任务将数据发送到队列,接收任务从队列中读取数据并打印。
在示例中设置了计时器,但在本实验中将其删除,因此发送和接收任务始终有效。
3)在此基础上,增加了PS和PL侧LED闪烁任务。
PS侧的闪烁间隔为100ms,PL侧的闪烁间隔为1S2。
板载验证1)下载接口设置,下载程序2)打开串行端口,并继续打印数据3)在同时,您可以在开发板上看到LED1和LED2闪烁,从而直观地反映了多任务并行处理。
3.本章小结与复杂的Linux相比,FreeRTOS和其他实时操作系统给我们带来了更灵活,更方便的开发,并且可以更直接地与底层FPGA交互,但是FreeRTOS本身也有些困难。
如果您想精通应用程序,则仍然必须将特定项目与更多实践结合起来。