ZYNQ学习笔记_GPIO实例:通过EMIO实现按键控制LED
总体思路
首先需要先导出硬件环境到SDK中。
因为是通过EMIO接口,所以这次要使用PL端的引脚,不只是单纯的PS端设计,导出前要生成Bit流并在导出时要勾选包含bit文件。
其次在SDK设计中要将一个引脚设置为输入,另一个设置为输出,并将输入读到的值传给输出。
(没有先做MIO的实例是因为PYNQ-Z2上没有PS端的LED和按键…
Block Design界面配置IP核并导出硬件配置
从0到1的配置过程在Hello World那一节已经讲过了,所以这里直接贴出不一样的部分。
勾选UART0,GPIO_MIO和GPIO_EMIO,勾选MIO是因为UART0(14、15)是PS端的引脚。
因为仅需要用到2个EMIO引脚,一个按键和一个LED,所以EMIO接口数量选择2。
确认后可以发现多了一个GPIO_0的接口。
同时,打开RTL原理图可以看到,GPIO_EMIO引脚是一个输入输出引脚,向内连接着两个三态门。
配置好后写约束文件将这两个引脚连接到PL端的LED和按键上,再生成bit流文件即可导出硬件配置,之后的开发则在SDK中进行。
需要注意的是导出时需要勾选包含bit流文件。