有關(guān)如何以操作系統(tǒng)感知的方式調(diào)試在Avnet MiniZed板上運(yùn)行的Embedded FreeRTOS應(yīng)用程序的指南。
介紹
在操作系統(tǒng)之上編寫嵌入式軟件應(yīng)用程序時(shí),通常很難檢測(cè)某些時(shí)序問題或解釋某些奇怪的行為。到底出了什么問題?另一件事是,在研究嵌入式操作系統(tǒng)時(shí),以可視方式呈現(xiàn)系統(tǒng)的運(yùn)行行為會(huì)很有用。了解任務(wù)優(yōu)先級(jí),調(diào)度程序設(shè)置,隊(duì)列管理,...
我發(fā)現(xiàn)Percepio Tracealyzer是解決這類問題的理想工具。Tracealyzer可以通過兩種方式工作:在快照模式下(這是本教程的內(nèi)容)或在流模式下。
對(duì)于本指南,您需要一個(gè)Avnet MiniZed開發(fā)板(基于Xilinx Zynq),Xilinx vivado工具和Percepio tracealyzer 4(其網(wǎng)站上的評(píng)估版)。
讓我們開始開發(fā)本指南的硬件部分(FPGA設(shè)計(jì))。如果您不熟悉FPGA設(shè)計(jì),則可以打開我的硬件設(shè)計(jì)。否則,從下面開始構(gòu)建基于ZYNQ7的設(shè)計(jì):
基于zynq7的設(shè)計(jì)
在程序框圖上放置以下組件:
- ZYNQ7 P rocessing 小號(hào)ystem
- 具有2個(gè)通道的AXI GPIO 連接到pl_led_g 和pl_led_r
- 1個(gè)通道的AXI GPIO 連接到pl_sw_1bit
您可以對(duì)ZYNQ7處理系統(tǒng)使用自動(dòng)配置(使用預(yù)設(shè)),但是隨后必須手動(dòng)添加M_AXI_GP0_ACLK 端口以連接AXI從設(shè)備外圍設(shè)備。
使用“自動(dòng)連接”功能將AXI_GPIO模塊連接到AXI總線。
不要忘記在“模塊設(shè)計(jì)”的頂部添加HDL包裝器。生成比特流,并將您的硬件設(shè)計(jì)導(dǎo)出到Vivado SDK(包括比特流)。