bc45 发表于 2022-6-9 09:45

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.问题是休眠后 外部中断唤醒不了。
各位大神,请问这是什么一样呢?


tpgf 发表于 2022-7-4 11:05

逐步去掉功能确定问题发生位置

nawu 发表于 2022-7-4 11:13

会不会是应用程序的地址有问题了啊

sonicll 发表于 2022-7-4 11:19

先不要进睡眠,只测试跳转进app后,EXTI能否正常进中断

aoyi 发表于 2022-7-4 11:30

指向的地址没有问题吗

aoyi 发表于 2022-7-4 11:39

哪种休眠方式啊

zljiu 发表于 2022-7-4 11:47

可以在调试状态下看看吗

tfqi 发表于 2022-7-4 11:54

唤醒的函数是相同的吗

yygy1 发表于 2024-7-4 11:35

问题后面怎么解决的呢

lix1yr 发表于 2024-7-29 14:57

您在使用GD32E230C8T6微控制器时遇到了休眠模式下外部中断无法唤醒的问题。这可能是由于中断向量表的重定位导致的

g0d5xs 发表于 2024-7-29 16:00

您在引导程序中重置了中断向量表,这可能会导致中断处理程序的地址不正确。确保在重定位中断向量表时,中断处理程序的地址是正确的,并且与应用程序的中断向量表一致

suw12q 发表于 2024-7-29 17:06

复制代码nvic_vector_table_set(NVIC_VECTTAB_FLASH, (APP_FLASH_ADDRESS - NVIC_VECTTAB_FLASH));确保APP_FLASH_ADDRESS是应用程序的起始地址,并且减去NVIC_VECTTAB_FLASH的值是正确的偏移量。

tax2r6c 发表于 2024-7-29 18:12

在引导程序跳转到应用程序之前,确保所有必要的中断已经使能,并且配置正确。特别是外部中断,确保它们在休眠模式下仍然使能

lamanius 发表于 2024-7-29 19:13

确保在进入休眠模式之前,所有必要的中断源已经配置为能够唤醒设备。例如,检查外部中断的触发方式(上升沿、下降沿或双边沿)是否正确配置

q1ngt12 发表于 2024-7-29 20:25

在引导程序和应用程序中添加调试日志,以跟踪设备进入和退出休眠模式的状态。这可以帮助您确定问题发生的确切位置

shenxiaolin 发表于 2024-7-29 22:04

感谢分享

ex7s4 发表于 2024-7-30 08:30

检查外部中断的硬件连接是否正确,确保没有短路或断路的情况

cen9ce 发表于 2024-7-30 09:41

如果可能,尝试更新微控制器的固件到最新版本,以确保没有已知的bug或问题

w2nme1ai7 发表于 2024-7-30 10:20

建议您查看GD32E230C8T6的官方文档和示例代码,或者联系技术支持以获取进一步的帮助

原来no 发表于 2024-7-30 10:59

遇到了同样的问题,有解决方案吗?
页: [1] 2
查看完整版本: GD32E230 外部中断唤醒