This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我们使用的是 SDK7.3。
我可以在 R5F MCU3_0中使用 GPIO 中断、中断触发正常、但无法使用移植到 MCU2_1的相同代码、并且无法触发中断。
我看到 GPIOMUX_INTR0_MUXCNTL_n 寄存器配置在 MCU3_0上可用、但在 MCU2_1或 MCU2_0上不可用。
我已经尝试将代码移植到 MCU3_1、并且可以触发中断
在使用中断时、MCU2_1和 MCU3_0之间有何区别?
为什么相同的测试代码中断在 MCU3_0和 MCU3_1上有效、但在 MCU2_0和 MCU2_1上无效?
//使用银行4.
*(volatile uint32_t *) 0x11c12C = 0x50007 |(2 << 4);
*(volatile uint32_t *) 0x11c130 = 0x50007 |(2 << 4);
*(volatile uint32_t *) 0x11c134 = 0x50007 |(2 << 4);
*(volatile uint32_t *) 0x11c138 = 0x50007 |(2 << 4);
*(volatile uint32_t *) 0x11c13C = 0x50007 |(2 << 4);
*(volatile uint32_t *) 0x11c140 = 0x50007 |(2 << 4);
GPIO_socGetInitCfg (USE_DEF_PORTNUM、&GPIO_cfg);
GPIO_cfg.baseAddr = CSL_GPIO4_base;
intCfg = gpio_cfg.intCfg;
intCfg[74].intNum= 176;//gpio0_74 in272
intCfg[74].EventID=0;
intCfg[74].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[74].intcMuxInEvent=0;
intCfg[74].intcMuxOutEvent=0;
intCfg[75].intNum= 176;/GPIO0_75
intCfg[75].EventID=0;
intCfg[75].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[75].intcMuxInEvent=0;
intCfg[75].intcMuxOutEvent=0;
intCfg[76].intNum= 176;/GPIO0_76
intCfg[76].EventID=0;
intCfg[76].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[76].intcMuxInEvent=0;
intCfg[76].intcMuxOutEvent=0;
intCfg[77].intNum= 176;/GPIO0_77
intCfg[77].EventID=0;
intCfg[77].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[77].intcMuxInEvent=0;
intCfg[77].intcMuxOutEvent=0;
intCfg[78].intNum= 176;/GPIO0_78
intCfg[78].EventID=0;
intCfg[78].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[78].intcMuxInEvent=0;
intCfg[78].intcMuxOutEvent=0;
intCfg[79].intNum= 176;/GPIO0_79
intCfg[79].EventID=0;
intCfg[79].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[79].intcMuxInEvent=0;
intCfg[79].intcMuxOutEvent=0;
GPIO_socSetInitCfg (USE_DEF_PORTNUM、&GPIO_cfg);
#if 0
GPIO_socGetInitCfg (6、&GPIO_cfg6);
GPIO_cfg6.baseAddr = CSL_GPIO6_BASE;
intCfg = gpio_cfg6.intCfg;
intCfg[64].intNum= 190;//GPIO0_64
intCfg[64].EventID=0;
intCfg[64].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[64].intcMuxInEvent=0;
intCfg[64].intcMuxOutEvent=0;
intCfg[65].intNum= 190;//GPIO0_65
intCfg[65].EventID=0;
intCfg[65].intcMuxNum=invalid_intc_MUX_NUM;
intCfg[65].intcMuxInEvent=0;
intCfg[65].intcMuxOutEvent=0;
GPIO_socSetInitCfg (6、&GPIO_cfg6);
#endif
//*(volatile uint32_t *) 0xA00004 = 0x1010c
GPIO_init();
#if 0
int irqindex = 0;
irqindex = 176;
for (irqindex = 176;irqindex < 192;irqindex++){
RET = GPIO_configIntRouter (irqindex、77、0、&GPIO_cfg、true);
appLogPrintf ("\n\n**** irqindex =%d *** ret =%d **** \n",irqindex,ret);
}
#endif
/*使用 GPIO IRQ*/
//register gpioPinConfigs num0~num5 to IRQ
GPIO_setCallback (0、AppElmosCallbackFxn1);//RX1_IRQ
GPIO_setCallback (1、AppElmosCallbackFxn2);//RX2_IRQ
GPIO_setCallback (2、AppElmosCallbackFxn3);//RX3_IRQ
GPIO_setCallback (3、AppElmosCallbackFxn4);//RX4_IRQ
GPIO_setCallback (4、AppElmosCallbackFxn5);//RX5_IRQ
GPIO_setCallback (5、AppElmosCallbackFxn6);//RX6_IRQ
//启用 IRQ
GPIO_enableInt (0);
GPIO_enableInt (1);
GPIO_enableInt (2);
GPIO_enableInt (3);
GPIO_enableInt (4);
GPIO_enableInt (5);
您好!
您能否检查当传递到 GPIO_SoC.c 中 GPIO_socConfigIntraPath 中的 Sciclient_rmIrqSet 时、为 rmIrqReq 获取的值是什么?
此致、
Parth