Ultra96-v2 GPIO test
本篇主要紀錄使用ultra96-v2寫一個簡單的GPIO程式,包含以下功能:
按鈕MIO23觸發console(uart)輸出一行命令,並且LED(D3-D7)亮燈,同時MIO36/37/39/40按照預先規劃好的流程動作輸出時序
環境
系統環境: ubuntu 18.04
Xilinx版本: 2021.2
操作流程
A. XSA檔建立 / Vivado building
如果尚未建立基本的XSA供Vitis使用,請參考A項目
board file update
在create project若找不到ultra96的板子資訊,必須先更新或是把board file放到對應路徑,才可以建立專案。
可以參考這篇(ultra 96 v2 board not available in vivado),不過bdf放的路徑要改在 <your path>/Vivado/202x.2/data/xhub/boards/XilinxBoardStore/boards/Xilinx
以Ultral96-V2建立block diagram
systhises,implentment,(沒有pl external就不用設定io)
bitstream,建立xsa
B. Vitis
根據xsa建立platform project
設定好之後對platform project,build project
確認都沒問題之後,建立appilcation project
選擇剛剛建立好的platform project作為基底,並且選你要使用的core
選擇hello world project產生模板,並且直接build project
C. Verilog Module
有時候會想快速的寫一個小module做測試,但又不想create IP package,可以將add verilog,再拖曳到block design,這樣就可以快速地進行測試。
Axi module可以參考這篇的做法,裡面包含
LaserAXI_Wapper.v : 用來跟外部PS Side連接
LasrCnt_fstate.v : 主要是自己做的module
Xilinx_AxiGpioTest.c : 放在vitis project,讓PS side可以控制
本篇參考
Last updated