標(biāo)題: 下載HAL庫寫的STM32代碼后J-Link識別不到芯片,必須要按住復(fù)位才能下載? [打印本頁]

作者: lhhtyid1    時間: 2019-4-28 20:16
標(biāo)題: 下載HAL庫寫的STM32代碼后J-Link識別不到芯片,必須要按住復(fù)位才能下載?
問題描述:最近在學(xué)STM32的HAL庫,據(jù)說可以統(tǒng)一STM32江湖,前途無量。最近一段時間參照STM32CubeMX和原子的資料自己學(xué)著建了兩個HAL庫的工程模板,F(xiàn)4的還好說,F(xiàn)1的出現(xiàn)了一個玄學(xué)問題:
芯片為STM32F103C8T6,下進(jìn)HAL庫編寫的工程后J-Link就識別不到芯片了,下載也是,只有J-Link讀取時按住復(fù)位才可以。更神奇的是用標(biāo)準(zhǔn)庫的代碼卻沒問題,具體表象就是下進(jìn)標(biāo)準(zhǔn)庫的代碼,然后HAL庫的代碼可以正常下載,但是HAL庫的代碼一旦下進(jìn)去,標(biāo)準(zhǔn)庫和HAL庫的代碼就都不能通過正常手段下載了。這很明顯是軟件問題。

經(jīng)過查資料得知,用cubemx配置的代碼禁止了swd端口。

解決方法:
在【STM32CubeMX】中配置【SYS->Debug】為【Serial Wire】
代碼表現(xiàn)為:
在“stm32f1xx_hal_msp.c”中
禁止SWD /** DISABLE: JTAG-DP Disabled and SW-DP Disabled   */  __HAL_AFIO_REMAP_SWJ_DISABLE();使用SWD /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled   */  __HAL_AFIO_REMAP_SWJ_NOJTAG();

附:HAL庫用戶程序文件描述


作者: 三色丸子    時間: 2020-8-11 23:58
我也遇到這個問題,按下復(fù)位才能識別到單片機(jī),偶爾能燒錄成功,但是程序燒不進(jìn)去,真的吐了,而且stlinkvt   仿真器發(fā)燙很嚴(yán)重
作者: wojiaoguogai    時間: 2020-8-12 10:10
SYS-DEBUG  改成你要的,默認(rèn)是No Debug,也就是禁用調(diào)試




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1