玩轉Zynq連載30——[ex52]基于Zynq PS的GPIO控制 更多資料共享 騰訊微云鏈接:https://share.weiyun.com/5s6bA0s 百度網(wǎng)盤(pán)鏈接:https://pan.baidu.com/s/1XTQtP5LZAedkCwQtllAEyw 提取碼:ld9c ![]() 參考文檔《玩轉Zynq-基礎篇:Zynq PS的GPIO外設.pdf》。 打開(kāi)ZYNQ7 Processing System的配置頁(yè)面Peripheral I/O Pins,可以看到右側若勾選GPIO MIO選項,在對應的MIO號若點(diǎn)擊變綠,則表示該MIO號將被用于GPIO功能。當然了,原則上所有的MIO都可以配置為GPIO,但是實(shí)際應用中大家不會(huì )這么干,MIO的分配需要從系統角度考慮,兼顧各個(gè)外設的需要。如果大多數的MIO都被其它外設占用了,而能用于GPIO的MIO捉襟見(jiàn)肘時(shí)也不用當心,可以打開(kāi)GPIO EMIO,連接PL端的IO作為PS可控的GPIO使用,這個(gè)功能下一個(gè)例程我們會(huì )講,這里我們重點(diǎn)要來(lái)看看GPIO MIO怎么用。
![]() Zstar板載2個(gè)LED,即D29和D30分別連接到了PS的MIO0(PS_LED0)和MIO9(PS_LED1)。
![]() 因此,在這個(gè)GPIO控制LED的實(shí)例中,我們不能夠讓任何會(huì )用到MIO0和MIO9的PS外設打開(kāi)(勾選),而必須把MIO0和MIO9保留給GPIO MIO使用。
![]() 完成配置后,重新編譯PL工程,確保當前配置產(chǎn)生.bit文件。 參考文檔《玩轉Zynq-工具篇:導出PS硬件配置和新建SDK工程.pdf》。 其中新建SDK工程名稱(chēng)為GPIO_MIO_project。
![]() 工程模板(Available Templates)選擇空白應用(Empty Application)即可。
![]() 展開(kāi)新建工程GPIO_MIO_project,選中文件夾src,單擊右鍵,彈出菜單中選擇New --> Source File。
![]() 新建一個(gè)名為main.c的Default C source template源文件。
![]() 輸入GPIO控制MIO0和MIO9的程序,程序中實(shí)現MIO0和MIO9每秒高低交錯輸出,實(shí)現2個(gè)LED交錯閃爍的功能。
![]() 在Zstar板子上,設置跳線(xiàn)帽P3為JTAG模式,即PIN2-3短接。 連接好串口線(xiàn)(USB線(xiàn)連接PC的USB端口和Zstar板的UART接口)和Xilinx下載線(xiàn)(下載器連接PC的USB端口和Zstar板的JTAG插座)。使用5V電源給板子供電。 接著(zhù)參考《玩轉Zynq-工具篇:SDK在線(xiàn)運行裸跑程序.pdf》將zstar.bit文件和GPIO_MIO_project.elf文件燒錄到Zynq中運行起來(lái)。 程序運行起來(lái)后,我們就可以看到Zstar板上D4和D5這兩顆LED交替的閃爍起來(lái)。D4和D5這兩顆LED指示燈的位置示意如圖所示。
![]() 騰訊微云鏈接:https://share.weiyun.com/5s6bA0s 百度網(wǎng)盤(pán)鏈接:https://pan.baidu.com/s/1XTQtP5LZAedkCwQtllAEyw 提取碼:ld9c |