流水灯verilog实验原理_「正点原子FPGA连载」第三章AXI GPIO控制LED实验

1)实验平台:正点原子达芬奇FPGA开发板

2) 摘自【正点原子】达芬奇之Microblaze 开发指南
3)购买链接:https://detail.tmall.com/item.htm?id=624335496505
4)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boards/fpga/zdyz_dafenqi.html
5) 正点原子官方B站:https://space.bilibili.com/394620890
6)对正点原子FPGA感兴趣的同学可以加群讨论:876744900

第三章AXI GPIO控制LED实验


在嵌入式系统中,经常需要控制许多结构简单的外部设备或者电路,这些设备有的需要通过CPU控制,有的需要CPU提供输入信号。嵌入式微处理器通常用GPIO控制这些设备,本次实验我们将通过AXI GPIO进行LED流水灯实验。
33.1 简介
3.2实验任务
3.3硬件设计
3.4程序设计
3.5下载验证
3.1简介
AXI GPIO IP核为AXI接口提供了一个通用的输入/输出接口。AXI GPIO是一个软核(Soft IP),是由用户通过配置芯片的逻辑资源来实现的一个功能模块。
AXI GPIO可以配置成单通道或者双通道,每个通道的位宽可以单独设置。另外通过打开或者关闭三态缓冲器,AXI GPIO的端口还可以被动态地配置成输入或者输出接口。其顶层模块的框图如下所示:

a1a404cc35f44e10bdb121af7de1731b.png

图 3.1.1 AXI GPIO框图


从图 3.1.1可以看到,模块的左侧实现了一个32位的AXI4-Lite从接口,用于主机访问AXI GPIO内部各通道的寄存器。当右侧接口输入的信号发生变化时,模块还能向主机产生中断信号。不过只有在配置IP核时选择“使能中断”,才会启用模块的中断控制功能。
3.2实验任务
本章的实验任务是通过调用AXI GPIO IP核,实现LED流水灯功能,并进行程序固化,实现程序上电自启动。
3.3硬件设计
根据实验任务我们可以画出实验系统框图:

7475079ab3732b9fab169b3a21ea0622.png

图 3.3.1 系统框图


由系统框图可以看出,AXI GPIO和AXI UART都通过AXI Interconnect模块与MicroBlaze互联,Microblaze处理器输出LED灯的控制信号,通过AXI Interconnect互联模块传输到AXI GPIO模块,AXI GPIO模块根据AXI4-Lite协议将LED灯控制信号解析出来,输出到FPGA的LED引脚,从而控制LED灯。
step1:创建Vivado工程
本次实验硬件设计可以在《Hello World》实验的基础上进行,这里我们就没有必要重新创建工程了,此处顺便可以介绍下如何在先前工程的基础上继续实验而不破坏先前的工程。
我们先打开《Hello World》实验的Vivado工程,打开后依次点击菜单栏的“File->Project->Save As...”,如图 3.3.2所示:

819e7c525523205725dd3e94e963822b.png

图 3.3.2 选择另存为


在弹出的另存为界面中可以输入新的工程名或更改保存位置,此处我们输入新的工程名“axi_gpio_led”,工程位置可以选择,保持默认即可,然后点击“OK”按钮。如图 3.3.3所示:

ee0f64c91f9e019a0605d79fcfc60cf8.png

图 3.3.3 另存为工程为axi_gpio_led


之后,如果我们打开工程所在目录G:/vitis_pro/axi_gpio_led,就会看到如下的目录结构:

4c2723eae120ec3a5126c7056aca307d.png

图 3.3.4 axi_gpio_led工程目录


至此,在原工程的基础上成功创建了一个新的工程而没有破坏原来的工程,也避免了重新创建工程或复制工程后修改的麻烦。
step2:使用IP Integrator创建Processing System
在Flow Navigator中,点击IP INTEGRATOR下的“Open Block Design”,如图 3.3.5所示:

51d527312bb178fedea83fefc6b5d6fd.png

图 3.3.5 打开Block Design


因为本次实验我们是要通过GPIO控制LED流水灯,因此我们需要添加AXI GPIO IP核。点击Diagram界面的“+”按钮,并在弹出的搜索框内输入“gpio”,双击AXI GPIO选项,如图 3.3.6所示:

80fb44f0005c19a631f2277bbc6ab0af.png

图 3.3.6 添加AXI GPIO


双击AXI GPIO IP核进入配置页面,将AXI GPIO位宽配置为4,用于控制开发板上的四个LED灯,点击“OK”完成配置,如图 3.3.7所示:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值