GD32E230 外部中断唤醒
1.GD32E230C8T62.设置外部中断唤醒,
pmu_to_deepsleepmode(PMU_LDO_LOWPOWER, WFI_CMD);
可以唤醒,功能正常
3. 增加引导程序功能。
引导程序 0x8000000 - 0x8002FFF
应用程序:0x8003000 - 0x800EFFF
4.引导程序跳转到应用程序正常,应用程序功能正常
定时器、串口功能正常(中断正常)
5.引导程序有重置中断向量表
nvic_vector_table_set(NVIC_VECTTAB_FLASH, (APP_FLASH_ADDRESS-NVIC_VECTTAB_FLASH));
6.问题是休眠后 外部中断唤醒不了。
各位大神,请问这是什么一样呢?
逐步去掉功能确定问题发生位置 会不会是应用程序的地址有问题了啊 先不要进睡眠,只测试跳转进app后,EXTI能否正常进中断 指向的地址没有问题吗 哪种休眠方式啊 可以在调试状态下看看吗 唤醒的函数是相同的吗 问题后面怎么解决的呢 您在使用GD32E230C8T6微控制器时遇到了休眠模式下外部中断无法唤醒的问题。这可能是由于中断向量表的重定位导致的 您在引导程序中重置了中断向量表,这可能会导致中断处理程序的地址不正确。确保在重定位中断向量表时,中断处理程序的地址是正确的,并且与应用程序的中断向量表一致 复制代码nvic_vector_table_set(NVIC_VECTTAB_FLASH, (APP_FLASH_ADDRESS - NVIC_VECTTAB_FLASH));确保APP_FLASH_ADDRESS是应用程序的起始地址,并且减去NVIC_VECTTAB_FLASH的值是正确的偏移量。 在引导程序跳转到应用程序之前,确保所有必要的中断已经使能,并且配置正确。特别是外部中断,确保它们在休眠模式下仍然使能 确保在进入休眠模式之前,所有必要的中断源已经配置为能够唤醒设备。例如,检查外部中断的触发方式(上升沿、下降沿或双边沿)是否正确配置 在引导程序和应用程序中添加调试日志,以跟踪设备进入和退出休眠模式的状态。这可以帮助您确定问题发生的确切位置 感谢分享 检查外部中断的硬件连接是否正确,确保没有短路或断路的情况 如果可能,尝试更新微控制器的固件到最新版本,以确保没有已知的bug或问题 建议您查看GD32E230C8T6的官方文档和示例代码,或者联系技术支持以获取进一步的帮助 遇到了同样的问题,有解决方案吗?
页:
[1]
2