目前项目需要GPIO28做GPIO中断输入,但是无法产生中断。
大概流程是这样的
1、设置GPIO28为输出,上升沿触发,GPIO_BITEN = 0x3.
2、将GPIO28的sysint映射到hostInt 0
CpIntc_mapSysIntToHostInt(0, 12, 0);
CpIntc_enableSysInt(0, 12);
CpIntc_enableHostInt(0, 0);
CpIntc_dispatchPlug(12, &gpioIsr, 12, TRUE);
int eventId = CpIntc_getEventId(0);
Hwi_Params_init(¶ms);
params.eventId = eventId;
params.enableInt = 1;
params.arg = 0;
Hwi_create(5, &CpIntc_dispatch, ¶ms, NULL);
调试不同的GPIO(0——31)中断时发现GPIO中断状态寄存器只有低16能变为1,高16位始终为0.
流程就是这样,麻烦各位工程师帮忙看看哪里有问题?
项目最近几天就必须完成,所有比较急,麻烦给位了!