【SDK驱动开发3】使用PS侧gpio作为中断输入

来源:互联网 发布:淘宝导航所有分类代码 编辑:程序博客网 时间:2024/06/18 09:52

网上看到一篇文章(编写你的第一个GPIO中断程序,Run your first gpio-ps interrupt application),这里把这篇文章简单记录一下。


如果要用ps侧gpio作为中断输入,基本步骤如下:

1.设置gpio引脚方向和中断检测逻辑;

2.Route gpio中断到scu gic模块;

3.Route scu gic到cpu exception table;


1.配置GPIO PS 模块

1.1 设置gpio引脚为输入引脚,disable掉输出使能开关;

首先初始化gpio ps模块

XGpioPs GpioPs;

xgpiops_config* pgpiopscfg;

pgpiopscfg=xgpiops_lookupconfig(xpar_xgpiops_0_device_id);

xgpiops_cfginitialize(&gpiops,pgpiopscfg,pgpiopscfg->baseaddr);


然后disable掉输出使能开关

xgpiops_setoutputenablepin(&gpiops,50,0x0); //0 to disable output


设置中断检测逻辑

xgpiops_setintrtypepin(&gpiops, 50, xgpiops_irq_edge_rising);


设置中断handler(包括创建一个中断handler,连接中断handler到gpio模块)







原创粉丝点击