zynq 7000 petalinux 2018.2下的流水灯实验

本文介绍了一个使用Petalinux 2018.2在Zynq 7000平台上进行LED流水灯实验的过程。首先在Vivado 2018.2中完成硬件设计,添加GPIO IP并配置约束文件。然后,通过查看设备树找到GPIO的地址信息。接着,编写并编译C代码来控制GPIO,实现流水灯效果。最后,在Petalinux串口终端上运行程序,观察LED流水灯的运行情况。
摘要由CSDN通过智能技术生成

流水灯实验通过简单的硬件,演示在petalinux 下对zynq 7000的外设的操控。

1:硬件设计

硬件设计是在Vivado 2018.2 下完成的。 除了满足petalinux 的基本硬件设计要求外,需要添加 一个gpio ip。这个ip 可以是vivado 2018.2 本身自带的gpio, 也可以是另篇自定义ip 设计中我们设计的ip。 如果是自带的,注意设置为4位,只输出。

在约束文件中,定义好对应的4位led。我的约束文件中led 如下:

set_property PACKAGE_PIN J16 [get_ports {leds_tri_o[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_tri_o[0]}]
set_property PACKAGE_PIN K16 [get_ports {leds_tri_o[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_tri_o[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_tri_o[2]}]
set_property PACKAGE_PIN H15 [get_ports {leds_tri_o[3]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_tri_o[3]}]
set_property PACKAGE_PIN G15 [get_ports {leds_tri_o[2]}]

set_property PACKAGE_PIN T19 [get_ports {switch_tri_i[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {switch_tri_i[0]}]
set_property PACKAGE_PIN R19 [get_ports {switch_tri_i[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {switch_tri_i[1]}]

在硬件设计好后,产生比特流文件,输出硬件,菜单 File ->Export ->Export Hardware,当然要包含比特流。 详细操作请看petalinux 2018.2 工程建立一文。

在成功petalinux 工程建立并petalinux-build 之后,我们可以查看硬件设计的地址信息。

打开工程目录下的: components/plnx_workspace/device-tree/device-tree$

  • 0
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值