最近下了stm32cube,做了个小测试,配置RCC外部晶振,PA0,PA1配置为output,在测试版上点了2个led。使用JLINK可以下载,但调试就不行,提示"***JLink Error: Can not read register 15 (R15) while CPU is running"还有一大堆类似不能读寄存器的错误,结果发现在自动生成的程序中,有段初始化HAL_Init();进入发现卡在HAL_MspInit();这里,把这句注释掉就可以调试了。 不知这是怎么回事,在这请教下高手,这个函数其实就是__weak void HAL_MspInit(void) |
Cube这点好像做的不太好,模板里就把jtag/sw禁用掉了,这不是坑调试么。。。。
还是我没仔细看的问题,在CubeMX的pinout配置的时候,在SYS里面的Debug子项可以选是否禁用jtag/sw,倒是错怪Cube了