N32G43x芯片的程序跳转出现故障。
N32G43x芯片的程序跳转出现故障。 调试单步跟踪试试。或者输出log确认程序工作顺序。 未处理的中断请求吧,可能会这样 在执行跳转前,当前程序区可能存在尚未处理的中断请求。 如果这些中断请求未被全面地逐个清零关闭,可能会导致跳转失败。因此,在跳转前,应对开启过的中断使能进行全面关闭,而不仅仅是调用临时关闭中断响应的函数(如__disable_irq()),因为该函数不会阻止中断事件的发生及相应中断标志的生成。 外设未复位,在跳转前,如果开启过的外设没有进行复位操作,可能会导致跳转过程中出现不确定的状态。 建议跳转前对开启过的外设做复位,确保它们彻底静默下来,待到新的程序执行区根据实际情况再行初始化。 跳转地址或中断矢量表地址错误,跳转前需要确认即将跳转到程序区的内存地址和中断矢量表地址是否正确。 在STM32库例程里,中断矢量表地址的修改一般采用基地址加偏移量的代码写法,需确保这一步骤无误。 SWD端口或程序跑飞问题,也可能会这样的 在极端情况下,如程序跑飞,可能会导致SWD端口无法使用,进而无法进行正常的程序跳转和烧录。 可以尝试将BOOT0短接至VDD,以重新连接并进行烧录。
页:
[1]