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.
1 使用AM6254官方开发板仿真GPIO开入中断功能,使用《mcu_plus_sdk_am62x_08_04_00_16》中的gpio_input_interrupt程序,在/lib/firmware/目录下替换新编译的am62-mcu-m4f0_0-fw,重新上线后M核运行程序异常,提示为:
[Error] Sciclient event config failed!!!
ASSERT: 0.6697s: ../board.c:Sciclient_gpioIrqSet:107: FALSE failed !!!
2 查看源码,发现GPIO中断初始化处断言错误,具体代码如下:
retVal = Sciclient_rmIrqSetRaw(&rmIrqReq, &rmIrqResp, SystemP_WAIT_FOREVER);
if(0 != retVal)
{
DebugP_log("[Error] Sciclient event config failed!!!\r\n");
DebugP_assert(FALSE);
}
3 一切都使用的是官方默认的硬件和官网的SDK包,其他内容一律没有修改.
4 更换为其他GPIO管脚,现象依旧。
能帮忙看看是怎么回事导致的这个现象吗?
建议您点击链接AM62x MCU+ SDK: GPIO Input Interrupt并浏览含有“Attention”的部分。
完成相同的操作并按照步骤操作后,请再次尝试运行。
尝试后,如果您仍然遇到之前问题,请与我联系。
1 按照这个帖子修改了设备树后替换,发现中断异常的问题消失,短接GPIO0_15和GND 确实能检测到开入中断。
2 同一个设备树,在ccs修改example.syscfg文件,将GPIO0_15(E5)改为GPIO0_16(D4)编译后将am62-mcu-m4f0_0-fw和gpio_input_interrupt_am62x-sk_m4fss0-0_nortos_ti-arm-clang.out 两个可执行文件通过FTP拷贝至开发板。 此时重新上电,会加载am62-mcu-m4f0_0-fw 。中断配置错误不提示,但此时短接GPIO0_16(P9端子11位)和GND,此时应用程序无法检测到开入,一直处于等待开入中断的状态。
3 使用加载out文件的方法,先切换到/sys/class/remoteproc/remoteproc0目录,然后查看M核状态为running,输入echo stop > state 停止M核程序,此时在将out文件加载(echo m4fss_firmware/*.out > firmware),然后输入echo start > state运行。 此时现象不一样,重新报中断配置异常,和最初的现象一致。
4 我用grep命令搜索了kernel和boot的设备树文件,没有发现对GPIO0_15和GPIO0_16节点的定义,我现在不知道如何操作能解决GPIO0_16无法使用开入中断的问题。
想跟您确认一下,您要将哪个 GPIO 引脚用于您的应用程序?
我理解的是您想使用 MCU_GPIO016。
因此,在这种情况下,请在您的应用程序中将标记为黄色的行更新到 SRC_IDX_BASE_MCU_GPIO_BANK_1。