找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3164|回复: 2
收起左侧

下载HAL库写的STM32代码后J-Link识别不到芯片,必须要按住复位才能下载?

[复制链接]
ID:221815 发表于 2019-4-28 20:16 | 显示全部楼层 |阅读模式
问题描述:最近在学STM32的HAL库,据说可以统一STM32江湖,前途无量。最近一段时间参照STM32CubeMX和原子的资料自己学着建了两个HAL库的工程模板,F4的还好说,F1的出现了一个玄学问题:
芯片为STM32F103C8T6,下进HAL库编写的工程后J-Link就识别不到芯片了,下载也是,只有J-Link读取时按住复位才可以。更神奇的是用标准库的代码却没问题,具体表象就是下进标准库的代码,然后HAL库的代码可以正常下载,但是HAL库的代码一旦下进去,标准库和HAL库的代码就都不能通过正常手段下载了。这很明显是软件问题。

经过查资料得知,用cubemx配置的代码禁止了swd端口。

解决方法:
在【STM32CubeMX】中配置【SYS->Debug】为【Serial Wire】
代码表现为:
在“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库用户程序文件描述
1.png 2.png

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:531151 发表于 2020-8-11 23:58 来自手机 | 显示全部楼层
我也遇到这个问题,按下复位才能识别到单片机,偶尔能烧录成功,但是程序烧不进去,真的吐了,而且stlinkvt   仿真器发烫很严重
回复

使用道具 举报

ID:415064 发表于 2020-8-12 10:10 | 显示全部楼层
SYS-DEBUG  改成你要的,默认是No Debug,也就是禁用调试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表