FPGA—ZYNQ学习GPIO-EMIO(三)

EMIO使用

GPIO 可以通过 MIO 连接到 PS 端的引脚,也可以通过 EMIO 连接到 PL再到引脚。 mio是通过arm处理芯片和器件相互连接,emio是通过ps控制PL在到引脚。emio的时候,ps通过M_AXI_GPO的口然后进行互联和GPIO再输出,这些是EMIO 的路劲,再到管脚。



1.创建bd与PL进行互联

在原有的基础上进行扩展,前面说了MIO 是通过ps的GPIO口直接与pin脚相连控制外设器件的,而EMIO是通过ps的GPIO到FPGA的pl侧进行处理,然后在到外部管脚。现在拓展EMIO外设

2.在bd中打开GPIO

设置一个GPIO管脚

3.配置PS给PL侧进行传输信息通道GP

4.在配置给PL侧的时钟和复位

给PL的时钟

给PL的复位

总的图如下图

5.PS的ARM设计完后,需要GPIO外设模块

上述是给FPGA和外设的三态门

本工程用输出去控制

接下来需要给PL进行控制外设,但是上面的还不够完整还需要配置ps与gpio的axi互联模块

6.ps与gpio的axi互联模块

找到smartconnect模块。

互联模块给一个输入端口,,可以多个输出端口

7.进行同步复位模块,每个工程基本的都有没有也可以,最好有,进行同步复位

完整框架如下

8.连接网络

将ps的时钟链接互联模块,以及M_AXIGP0_ACLK,给去全局工作时钟。PS的复位给同步复位模块,然后同步复位给互联模块的复位

点击上述进行排版

上述接错了后面会报错正确连接如下互联模块复位链接错了

9.分配AXI总线的地址

自动分配地址值

10报错检查

11,将bd输出并打包生成顶层

打包可以看到顶层

12打包代码

除了DDR以及DIXED的口其他都是PL侧的资源

会看到iobuffer

IOBUF是什么

相关推荐
西岸行者4 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
ZPC82104 天前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC82104 天前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码5 天前
嵌入式学习路线
学习
毛小茛5 天前
计算机系统概论——校验码
学习
babe小鑫5 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms5 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下5 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。5 天前
2026.2.25监控学习
学习