from:www.jianshu.com/p/1ee2f932e…app
參考:blog.csdn.net/weixin_3807…函數
在ZYNQ進階之路1-4中咱們大體瞭解了ZYNQ PL端的開發流程以及使用verilog硬件描述語言寫了幾個硬件模塊,但願你們在以前的章節中能有所收穫,若是其中有技術上的問題屬於博主技術知識有限但願讀者多多諒解!也但願能經過博主郵箱(wanpengwork@163.com)告知博主,達到相互學習共同進步的目標。在接下來的幾章節中博主主要針對PS端的基礎開發流程以及外設模塊設計,本章節講解PS端hello xilinx zynq的設計,主要是熟悉基礎開發流程。學習
首先咱們打開vivado2018.1建立新的工程:ui
接下來按照第一章節中的工程創造流程操做接OK了,工程創造完成後以下所示:.net
接下來點擊Create Block Design,設置Design name爲ps_hello_xilinx_zynq:設計
點擊圖標添加ZYNQ PS的IP,xilinx將PS端的A9處理器以IP核的形式呈現的:orm
而後雙擊這個IP核進入設置界面:cdn
點擊上圖左側邊欄 PS-PL Configuration 項,由於本設計只須要包含PS部分,不包含 PL 部分,也不和任何 PL 部分進行交互,因此勾掉默認的 FCLK_RESET0_N, M AXI GP0 interface,以下:blog
點擊左側邊欄 Peripheral I/O Pins, 由於本設計要用到 UART 接口,核心板串口接口接在MIO48, 49 上,單擊下圖對應位置的 UART1, 變爲綠色即爲設置成功:接口
點擊左側邊欄 Clock Configuration, 由於沒有 PL 部分,勾掉默認的 FCLK_CLK0 項:
點擊左側邊欄的 DDR Configuration 項, Memory 選擇與硬件一致的 MT41J128M16 HA-125:
點擊OK,到這裏咱們PS端就配置完成了。
回到 Diagram 窗口, 單擊 Run Block Automation, 系統自動生成外圍管腳:
以下, 自動生成了外圍 DDR 和 FIXED_IO 端口, 點擊下圖左側邊欄 Validation Design 驗證設計:
彈出成功窗口,點擊OK:
回到 Source 窗口, 右鍵單擊 ps_hello_xilinx_zynq, 選擇 Generate Output Products, 生成此設計相關文件,以下
生成完成彈窗點擊 OK。
再在 Source 窗口, 右鍵單擊 ps_hello_xilinx_zynq, 選擇 Create HDL Wrapper,生成此設計的頂層文
件, 以下:
彈出窗口選擇讓vivado自動更新,而後點擊OK:
生成完成後,此設計的層次結構以下:
導出SDK,菜單欄選擇 File > Export > Export Hardware, 以下:
彈出窗口不選擇include bitstream,由於咱們沒有PL部分,因此沒有bitstream文件:
而後點擊launch SDK:
彈窗點擊OK,便可打開SDK界面,系統已經給咱們分配好了地址空間和一些基礎文件:
創建 SDK 工程
菜單欄點擊 File > New > Application Project,彈出 以下窗口,填寫好工程名點擊next:
點擊hello_world,而後點擊finish:
以下, 在生成的工程文件 src 窗口, 右鍵單擊 helloworld.c選擇Rename,文件名改成 ps_hello_xilinx_zynq.c, 雙擊打
開編輯窗口:
將主函數修改爲咱們的內容:
右擊工程名,點擊build Project從新編譯工程:
將開發板上電, 鏈接電腦 USB 到開發板 JTAG 口,鏈接電腦另外一 USB 到開發板 UART 口,開發板撥碼開關 1, 2 都
設置爲 ON,給開發板上電,菜單欄選擇 Window > Show View > Other,以下圖,
以下彈窗選擇 Terminal, 點擊 OK
點擊以下鏈接按鈕:
在以下打開的 Terminal Settings 窗口, 鏈接類型選擇 Serial, Port 口選爲 COM3(讀者能夠右鍵
單擊桌面個人電腦 > 管理 > 設備管理 > 端口(COM & LPT)確認本身的串口 COM 號) , 波特率
選擇 115200 (這是 Zynq 系統的默認串口速率) , 點擊 OK
而後鏈接上下載線,以下操做將程序下載到開發板中:
而後接能夠在串口上看到發送的數據啦。