原創(chuàng)聲明:
本原創(chuàng)教程由芯驛電子科技(上海)有限公司(ALINX)創(chuàng)作,版權(quán)歸本公司所有,如需轉(zhuǎn)載,需授權(quán)并注明出處。
適用于板卡型號:
AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P /AXU9EG/AXU15EG
實驗Vivado工程目錄為“ps_axi_gpio /vivado”。
實驗vitis工程目錄為“freertos /vitis”。
學(xué)習(xí) ZYNQ,很大一部分都是FPGA開發(fā)人員,不太擅長使用Linux,所以我建議大家還是先使用實時操作系統(tǒng)或者裸機運行,這樣也有更大的靈活性。本章給大家講解如何搭建Free RTOS實時操作系統(tǒng)運行環(huán)境,這里不深入探討Free RTOS的具體使用。本實驗以FreeRTOS Hello World做舉例,并實現(xiàn)兩個LED燈以不同間隔持續(xù)閃爍。
本實驗基于 “PL端AXI GPIO的使用”工程,硬件環(huán)境不需要修改。
軟件工程師工作內(nèi)容
以下為軟件工程師負責(zé)內(nèi)容。
1.VITIS程序開發(fā)
1) 參考Hello World一章,新建工程,OS選擇freertos10_xilinx

2)本實驗選擇FreeRTOS Hello World做舉例

Hello World例子中建立了兩個任務(wù),發(fā)送任務(wù)和接收任務(wù),接收任務(wù)的優(yōu)先級高于發(fā)送任務(wù)。并且創(chuàng)建隊列,由發(fā)送任務(wù)向隊列發(fā)送數(shù)據(jù),接收任務(wù)從隊列中讀取數(shù)據(jù)并打印。例子中設(shè)置了timer,但在本實驗中刪除了timer,讓發(fā)送和接收任務(wù)一直工作。

3)在此基礎(chǔ)上增加PS和PL端LED閃爍任務(wù),PS端閃爍間隔為100ms,PL端閃爍間隔為1S

2. 板上驗證
1)下載界面設(shè)置,下載程序

2)打開串口,正在持續(xù)打印數(shù)據(jù)

3)同時也能看到開發(fā)板上LED1和LED2閃爍,直觀地體現(xiàn)了多任務(wù)并行處理。
3. 本章小結(jié)
相對于復(fù)雜的Linux,F(xiàn)reeRTOS 等實時操作系統(tǒng)給我們帶來更靈活更方便的開發(fā),可以更
直接的和底層FPGA進行交互,但是FreeRTOS本身也有一點難度,要想熟練應(yīng)用,還是要結(jié)
合具體的項目多加練習(xí)。
-
FPGA
+關(guān)注
關(guān)注
1660文章
22416瀏覽量
636580 -
led
+關(guān)注
關(guān)注
243文章
24612瀏覽量
691026 -
RTOS
+關(guān)注
關(guān)注
25文章
866瀏覽量
123047 -
FreeRTOS
+關(guān)注
關(guān)注
14文章
499瀏覽量
66963 -
Zynq
+關(guān)注
關(guān)注
10文章
630瀏覽量
49468 -
MPSoC
+關(guān)注
關(guān)注
0文章
203瀏覽量
25180
發(fā)布評論請先 登錄
如何調(diào)試Zynq UltraScale+ MPSoC VCU DDR控制器
如何調(diào)試Zynq UltraScale+ MPSoC VCU DDR控制器
Ti推出面向Zynq UltraScale+ MPSoC的電源參考設(shè)計
基于Zynq UltraScale+ MPSoC上運行 Xen 管理程序
Xilinx基于ARM的Zynq-7000和Zynq UltraScale+ MPSoC及RFSoC器件是否存在安全漏洞
Zynq UltraScale+ MPSoC的發(fā)售消息
米爾科技Zynq UltraScale+ MPSoC技術(shù)參考手冊介紹
如何調(diào)試 Zynq UltraScale+ MPSoC VCU DDR 控制器?
米爾電子zynq ultrascale+ mpsoc底板外設(shè)資源清單分享
ZYNQ Ultrascale+ MPSoC系列FPGA芯片設(shè)計
Zynq UltraScale+ MPSoC中的隔離方法
Zynq UltraScale+ MPSoC的隔離設(shè)計示例
Zynq UltraScale+ MPSoC驗證數(shù)據(jù)手冊
【ZYNQ Ultrascale+ MPSOC FPGA教程】第三十一章FreeRTOS實驗
評論