【Ultrascale+ MPSOC学习记录】7、PS端的MIO使用-LED

首先,先承认一个之前犯得错误:我误以为MIO就是GPIO

原理介绍

首先看这张图:
在这里插入图片描述
可以看出来,GPIO是PS端的一个外设,而MIO是各种外设出去的途径。比如串口、IIC、SPI等等,都可以通过MIO出芯片,当然,GPIO也可以通过MIO出芯片。
GPIO有6个BANK,BANK0-2可以从MIO出去;BANK3-5从EMIO进入PL;

Vivado工程修改

为了使用GPIO,首先还是得在BD中设置好用哪些IO,ALINX这个4EV开发板有LED灯,还有按键,我们把这些都先设置好。
首先拷贝一份之前的vivado工程,打开MPSOC的设置界面,勾选GPIO:
在这里插入图片描述
检查电路板原理图,可以看到LED接到MIO40,按键接到了MIO26,默认高电平,按下低电平。
工程修改好后,运行工程,然后导出xsa文件。

Vitis工程搭建

还是不偷懒原则,新建vitis工程,先建立一个hello world的工程。
在这里插入图片描述
建立好hello工程后,怎么开始写代码?我一头雾水,所以呢,我们先不用hello工程, 直接先去看看xilinx提供的GPIO的例子工程:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
例子工程打开后,找到GpioPolledExample()这个函数,因为我们板子是使用的MIO40,所以需要小小的修改一丢丢代码,把IO改成40:
在这里插入图片描述
然后直接在xgpiops_polled_example上右键,Run As,发现连接不上板子,提示我不是在jtag模式下,我在SD启动模式下,这种模式下经常连接不上下载器。哎,算了,还是换成jtag模式吧。
然后换成jtag模式

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值