問題描述:在使用STM32 的debug功能時,報錯“Cannot access target Shutting down debug session”
操作環境:STM32CubeMX+Keil5,使用STM32CubeMX生成配置代碼,用keil5做IDE開發。
經過查找問題發現是在STM32CubeMX的配置時出現的問題,SYS→Debug中選擇了No Debug,如下圖所示,這就默認使得程序配置關閉了Debug模式,所以導致上述錯誤。
STM32CubeMX的SYS→Debug中可選的Debug模式有,如下圖所示
我在keil中配置的是使用ST-link的SWD模式,SWD模式只需要最少的2根引腳線就可以下載並且調試代碼,所以我們在上述幾種debug模式中選擇的模式為:Trace Synchro Sw (2 bits),選擇之后的引腳圖如下所示:
只有這兩個引腳被配置成了調試引腳,然后重新生成代碼,在keil中打開調試通過。
注:經過測試發現選擇Jtag with Trace Synchro Sw (2 bits)也可以調試,但是會占用其他引腳,所以最終還是選擇的Trace Synchro Sw (2 bits)。