赛灵思
直播中

姚远

7年用户 219经验值
私信 关注
[问答]

怎么为nexys 4 ddr配置中断和ISR?

嗨,
我想在nexys 4 ddr上配置外部中断。
我目前有一个微型BD设置,其硬件和比特流在SDK中导出和启动。
我的BD配置包括2个AXI GPIO IP(其中GPIO_0 = 16位LED,GPIO_1 = 16位DIP开关)。
GPIO_1已选中“启用中断”框,因此从该GPIO连接到concat microblaze IP(然后连接到AXI中断控制器)。
concat模块的宽度仅为[0:0],因此我只使用单个DIP开关来触发外部中断。
在块自动化等之前最初配置微膨胀时,我也检查了“中断”框。
所以我猜这是你需要从硬件方面做的所有事情。
现在我完全不确定如何在SDK中配置端。
我已经为SDK中的LED和开关设置了GPIO配置,并且有一个简单的轮询程序,并且LED与开关完美配合。
所以我只需要覆盖外部中断端。
我看到人们的博客和什么不是,他们包括各种头文件和东西,我在想:“他们从哪里得到这些信息???”
有人可以帮忙吗?
我附上了我的方框图的打印屏幕。

回帖(1)

廖阿朋

2020-4-10 10:58:53
所以我已经配置了外部中断并让它们触发上升和下降沿(它们只是触发上升沿)。
我已将AXI中断控制器配置为使用“快速中断逻辑”,我手动将所有字段(中断类型,电平类型,边沿类型)设置为0xFFFFFFFF。
处理器中断类型设置为“edge int”,边缘类型设置为“rising”。
在高级选项卡中,除“启用中断级别寄存器”外,所有寄存器用法框都被勾选。
我没有更改其他选项卡中的任何其他内容。
我猜这是一个电压反弹问题,但不确定。
在调试模式下单步执行我的程序允许我为每个按下按钮输入我的ISR例程...以及按钮释放。
我正在使用5位按钮来触发中断。
有任何想法吗?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分