【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自己也有一點難度,要想熟練應用,仍是要結

合具體的項目多加練習。

相關文章
相關標籤/搜索