器件型号: TDA4VH-Q1
嗨、 我尝试在 MCU 域的下降沿配置四个 GPIO 中断。 其中三个在硬件中工作、但最后一个不会触发回调。 因此、我交换了 GPIO_PinConfig gpioPinConfigs[]数组中的中断配置顺序(我只更改了这一个)、第四个开始工作、而第一个停止工作。 pdk_j784s4_10_01_00_25 中是否有一个定义来定义 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.
器件型号: TDA4VH-Q1
嗨、 我尝试在 MCU 域的下降沿配置四个 GPIO 中断。 其中三个在硬件中工作、但最后一个不会触发回调。 因此、我交换了 GPIO_PinConfig gpioPinConfigs[]数组中的中断配置顺序(我只更改了这一个)、第四个开始工作、而第一个停止工作。 pdk_j784s4_10_01_00_25 中是否有一个定义来定义 GPIO 中断的最大数量?
尊敬的 Mikolaj:
如果 内的 GPIO_setConfig_V0 () 函数出现以下情况、则会出现主要问题 DRV/GPIO/GPIO/V0/GPIO_V0.c src :
if ((portHwiCreatedBitMask & gpioPortIntBitMask) == 0U) {
我认为这会阻止所有 GPIO 引脚的 GPIO 中断注册发生。 您能否测试注释内容并查看您是否可以在所有 GPIO 上注册中断?
谢谢、
Neehar
你好 Neehar、
我们注意到您的提示无法解决问题。 向代码中添加提示后、另一个 MCU 上的中断停止工作。
尝试以下配置:
GPIO33 MAIN_GPIO_PORT MCU2_1
GPIO34 MAIN_GPIO_PORT MCU2_1
GPIO35 MAIN_GPIO_PORT MCU2_0
GPIO27 MAIN_GPIO_PORT MCU2_0
并且内核 MCU2_1 上的中断已停止执行。
谢谢、
Mikolaj
尊敬的 Mikolaj:
这无法完全解决该问题、开发团队正在分析该问题以在 SDK 版本中进行修复。
因此、您当前的状态是 MCU2_0 上的 GPIO 没有中断问题、但 MCU2_1 上的 GPIO 不起作用? 中断注册是否传递诸如 GPIO_socConfigIntrPath () 的返回值?
尝试以下配置:
GPIO33 MAIN_GPIO_PORT MCU2_1
GPIO34 MAIN_GPIO_PORT MCU2_1
GPIO35 MAIN_GPIO_PORT MCU2_0
GPIO27 MAIN_GPIO_PORT MCU2_0
此外、我不建议使用这种 GPIO 配置、因为您的同一组中有 GPIO 会在不同的内核上生成中断。 由于我们的驱动程序使用分组中断、因此可能会导致 MCU2_0 或 MCU2_1 上发生错误中断。
谢谢、
Neehar
尊敬的 Mikolaj:
上发生错误中断此外、我不建议使用此 GPIO 配置、因为您在同一组中有 GPIO、可以在不同的内核上生成中断。 由于我们的驱动程序使用分组中断、因此可能会导致 MCU2_0 或 MCU2_1
您是否更新了您是否对每个内核的 GPIO 分配进行了任何调整? 这可能会导致将来出现严重问题。
GPIO_socConfigIntrPath () 在两个内核 (MCU2_0 和 MCU2_1) 上仅返回 0 值
我建议使用以下 常见问题解答中的信息 以及有关设置目标 IRQ 的信息来手动调整 DST_HOST_IRQ 值。 然后检查 Sciclient_rmIrqSet() 的返回值。 我们已经向开发团队提出了此问题、他们正在努力发布此问题的修复程序。
谢谢、
Neehar