OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4552|回复: 6

[XILINX] AXI总线上IO口的中断求助,设置输出位会直接进入中断

[复制链接]

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
345
金钱
345
注册时间
2016-12-5
在线时间
57 小时
发表于 2022-5-11 16:47:52 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 dai410257573 于 2022-5-11 19:38 编辑

看了原子哥的PL按键控制视频,然后我自己拓展了一下,
在axi总线上设置5个PL的IO,其中0号位为KEY,1234号位为LED,
想实现的功能是利用PL按键的中断,来控制PL 的LED灯变化。在这个过程中,遇到了问题
设置中断
下载.png
设置LED灯,这里我还暂时没有引入中断的控制(因为遇到了问题,改成这样的,但是问题依旧存在)
下载 (1).png
发现在上图中设置LED的时候,中断函数每次都会进入,而读取端口寄存器值打印出来,发现最低位一直保持1,不是key引入的中断。
下载 (2).png
求助大佬指点一下,谢谢,为啥在设置LED位时,明明只使能了最低位,还是会进入中断

最佳答案

查看完整内容[请看2#楼]

这个问题我也记不清了,这么长时间的使用我都是将Channel1设置为输出、Channel2设置为输入,一般不会混合在一个通道使用。 我刚才也仔细阅读了pg144文档,对于你的问题,没有作为特例进行说明。 但是根据图2-2可以看出,GPIO_TRI寄存器实际上是控制输出寄存器的“通线”,只有为Enable时,GPIO_DATA的值才会连通到I/O Pin。而输入寄存器则直接与I/O引脚相连。 所以我的猜测是,输出寄存器GPIO_DAT的值会直接返回到G ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

202

帖子

0

精华

高级会员

Rank: 4

积分
527
金钱
527
注册时间
2012-10-27
在线时间
65 小时
发表于 2022-5-11 16:47:53 | 显示全部楼层
pg144-axi-gpio.pdf (648.9 KB, 下载次数: 0)
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2022-5-12 09:15:48 | 显示全部楼层
本帖最后由 QinQZ 于 2022-5-12 09:17 编辑

你是做的GPIO 之 EMIO 按键控制 LED 实验 ,

由原来PL KEY控制PS LED灯,改成PL KEY控制PL LED灯吗
回复

使用道具 举报

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
345
金钱
345
注册时间
2016-12-5
在线时间
57 小时
 楼主| 发表于 2022-5-14 10:08:11 | 显示全部楼层
QinQZ 发表于 2022-5-12 09:15
你是做的GPIO 之 EMIO 按键控制 LED 实验 ,

由原来PL KEY控制PS LED灯,改成PL KEY控制PL LED灯吗

是的,PL按键中断来控制PL的LED,使用axi接口,因为刚刚看原子哥的视频看到这个地方,想拓展一下看看,结果就是遇到了这个问题,您能解答一下吗?谢谢
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2022-5-16 09:38:54 | 显示全部楼层
有AXI GPIO PL按键作为中断输入的例程的,你可以对比看下
回复

使用道具 举报

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
345
金钱
345
注册时间
2016-12-5
在线时间
57 小时
 楼主| 发表于 2022-5-16 10:06:48 | 显示全部楼层
本帖最后由 dai410257573 于 2022-5-16 10:20 编辑
QinQZ 发表于 2022-5-16 09:38
有AXI GPIO PL按键作为中断输入的例程的,你可以对比看下

嗯,我就是看的第五章的资料,PL控制PS的LED,然后我想改变一下,改为PL控制PL的LED,
如果在程序里面,注释写LED的那一段,那么我的PL的按键中断打印也是无误的,如果注释掉初始化PL按键中断那一段,LED的运行也是没有问题的,但是综合到一起,就有点儿问题,只要写LED,中断就必定触发,一直还没改好。  然后我设置bolck design的时候里面Default Tri State Value 是0xFFFFFFE1,虽然在程序里面初始化的时候,XGpio_SetDataDirection(&axiGpio, GPIO_CHANNEL1, 0x0000001) ;只配置地址最低位为输入,但是设置1-4位的电平的时候,依旧会触发中断。。。
回复

使用道具 举报

18

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
345
金钱
345
注册时间
2016-12-5
在线时间
57 小时
 楼主| 发表于 2022-5-16 15:31:39 | 显示全部楼层
QinQZ 发表于 2022-5-16 09:38
有AXI GPIO PL按键作为中断输入的例程的,你可以对比看下

一组例化的AXI_GPIO  其中包括的输入输出5个PL IO,虽然只使能了最低位的中断,但是操作其他IO也会进入中断,这个点我没有理解
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 13:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表