大家好!
我要在 MCU2_0中将 GPIO 配置为中断输入引脚、并对其进行设置
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.
大家好!
我要在 MCU2_0中将 GPIO 配置为中断输入引脚、并对其进行设置
我使用 GPIO0_118作为输入引脚。 (Y1)
现在我要执行这个:
1.在"vision_apps\utils\mis\src\app_pinmux_j721e.c"中、

2.在"ethfw\utils\board\src\j721e\board_j721e_evm.c"中:

3.在"pdk_jacinto_08_04_00_21\packages\ti\drv\gpio\soc\j721e\gpio_soc.c"中

完成此更改后、我重新编译 RTOS SDK、并替换"/lib/firmware/vision_apps_evm "中的"vx_app_rtos_linux_mcu2_0.out"。
但是,当重新启动系统时,终端不会打印日志。
我还需要做什么?
谢谢、我参考了、并添加了中断使能代码; 已成功设置触发模式。但 intNum 错误。
在我的示例中、我使用了 GPIO0_118、表示 GPIO_port_num = 0、PIN_num = 118、当我要获取 intNum to "GPIO_socConfigIntrPath ()"时、它返回-1;代码如下:
int32_t GPIO_socConfigIntrPath(uint32_t portNum, uint32_t pinNum,void *hwAttrs,bool setIntrPath)
{
GPIO_v0_HwAttrs *cfg = (GPIO_v0_HwAttrs *)hwAttrs;
...
if(CSL_PASS == retVal)
{
/* Get the valid range of valid interrupts based on the ir_id. */
retVal = GPIO_socGetIrqRange(ir_id, dst_id, &irq_range_start, &irq_range_num);
}
if(CSL_PASS == retVal)
{
if(bankNum <= irq_range_num)
{
dst_host_irq = irq_range_start + bankNum;
...
}
}
...
return(retVal);
}
在代码中、irq_range_num 为4、bankNum=7、因此它返回-1;
我想知道:
1.其中将 irq_range_num 定义为4;
2.如何为 GPIO0_118获取 irqnum,如何路由中断 func;
您好!,
在本例中、"Sciclient_rmIrqSet ()" 将不会运行、因为 条件"if (bankNum <= IRQ_RANGE_NUM)"未保持不变。 因此、RetVal 将为 CSL_EFAIL、并 立即返回。
一些参数如下:
src_id = TISCI_DEV_GPIO0;
src_index =(uint16_t) bankNum; // GPIO0_118、bankNum = 7