本帖最后由 北凉 于 2024-6-7 09:29 编辑
void FLASH_Unlock();在我的操作系统里使用这个函数的时候直接会导致我无法进入Debug,并且不知道是不是因为这个原因导致我第一次下载完程序以后我就不能第二次从Keil里面直接下载程序了。出问题的时候提示说检测不到芯片,这里我没有将PA13和PA14也就是SWDIO和SWCLK引脚复用成普通IO口并且我没使用这两个GPIO口连接任何外部器件,只是将引脚通过接插件引出来了。
这个问题我是在配置GPIO口的时候增加了一条将PA13和PA14复用成SW下载口,因此没有在提示我找不到芯片。
但是Debug会有一个错误弹窗说是Could not stop Cortex-M device! Please check the JTAG cable.
我用的是创芯工坊下载器的SW接口。
我目前能Debug,但是我的解决方法是把n32g43x_flash.c文件下面的Flash解锁函数中的其中一个FLASH->KEYR = FLASH_KEY1;给注释了。下面是我在程序上的操作,这么做不对但是我应该怎么解决这个问题。
求大佬们帮帮忙。
void FLASH_Unlock(void)
{
/* Unlocks the FLASH Program Erase Controller */
FLASH->KEYR = FLASH_KEY1;
//FLASH->KEYR = FLASH_KEY2;
}
这两个至少禁用一个我就能进debug了。
|