15EG使用ps点亮mio的led

创建工程模板在hello_world中已经介绍过了,这里直接从配置完zynq 开始

15EG使用ps点亮mio的led_第1张图片

因为要用到ps的GPIO,所以要对ZYNQ进行额外的配置,双击ZYNQ打开配置->打开IO口配置->勾选GPIO0 MIO外设。我们可以在原理图中看到mio的led引脚为MIO24和MIO25,勾选GPIO0 MIO即可。

15EG使用ps点亮mio的led_第2张图片

15EG使用ps点亮mio的led_第3张图片

配置完成后按照hello_world工程模板生成bit文件,和创建vitis工程,下面将从创建好vitis工程模板开始。

选择应用项目下的src右键->New->File新建文件

15EG使用ps点亮mio的led_第4张图片

填入新建文件名称点击Finish,这里需要创建俩个文件,分别是gpio.c和gpio.h。

15EG使用ps点亮mio的led_第5张图片

15EG使用ps点亮mio的led_第6张图片

修改里面的代码,我会提供到工程目录下的file文件夹中,

下面代码为gpio.c中的内容

15EG使用ps点亮mio的led_第7张图片

Gpio.h中的代码

15EG使用ps点亮mio的led_第8张图片

Helloworld.c中的代码

15EG使用ps点亮mio的led_第9张图片

代码修改完成后进行编译,把板子连接好JTAG和电源线,把启动模式改为0000开启电源,由于只使用到PS端所以不需要烧写BIT文件可以直接运行

15EG使用ps点亮mio的led_第10张图片

点击Lau...把程序烧写进去

15EG使用ps点亮mio的led_第11张图片

可以看到俩个MIO的led在闪烁

15EG使用ps点亮mio的led_第12张图片

若使用SD卡启动,生成boot.bin文件也不需要添加BIT文件,右键应用工程,点击

15EG使用ps点亮mio的led_第13张图片

可以选择修改生成文件的地址,点击生成BOOT.bin文件

15EG使用ps点亮mio的led_第14张图片

把文件拷贝到sd卡并插入开发板,把启动模式改为1110使用SD卡启动,打开电源,显示效果与JTAG模式相同

15EG使用ps点亮mio的led_第15张图片

若使用EMIO则在vivado中开启EMIO引脚

15EG使用ps点亮mio的led_第16张图片

把EMIO的引脚引出来,

15EG使用ps点亮mio的led_第17张图片

添加引脚约束文件,约束添加的EMIO的引脚

15EG使用ps点亮mio的led_第18张图片

修改vitis中的代码,

15EG使用ps点亮mio的led_第19张图片

Ps的EMIO是从78开始,根据上面代码和引脚绑定可以看出,使用SW3可以控制mio24的led小灯,使用SW2可以控制mio25的led小灯,在使用到emio时则需要用到BIT文件。在线运行方式参考ps_pl_gpio_led,使用SD启动时需要添加bit文件

你可能感兴趣的:(单片机,嵌入式硬件,FPGA,fpga开发)