搜索
12
返回列表 发新帖
楼主: allemdddd

[已解决] 外部晶振会导致无法下载程序

[复制链接]

该用户从未签到

1

主题

72

帖子

2

蝴蝶豆

中级会员

最后登录
2021-2-20
发表于 2020-4-10 09:46:49 | 显示全部楼层
10楼说的有道理,建议换一个别的程序下载试试看,或者直接用个空程序下载试试。还有我之前遇到过复位电路的电容出现异常而导致无法下载程序的现象,提供一下参考。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2017-12-6 11:47
  • 签到天数: 1 天

    [LV.1]初来乍到

    49

    主题

    3724

    帖子

    429

    蝴蝶豆

    论坛元老

    最后登录
    2021-8-7
    发表于 2020-4-10 10:58:37 | 显示全部楼层
    SWD接口最好引出复位管脚,在复位状态下,不论boot0、boot1是什么设置,可以进入SWD调试模式。
    大多数仿真器可以通过内部复位,瞬间连接目标芯片,进入SWD调试模式。
    如果没有引出复位管脚,并且SWD还被程序给禁用了,那么就只好自求多福。在某次按下复位按键,快速释放复位键的时候,与仿真器连接相配合,有可能会连接成功。
    如果引出了USART1串口的话,可以进ISP模式下载程序。

    评分

    参与人数 1蝴蝶豆 +3 收起 理由
    STMCU + 3

    查看全部评分

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    82

    主题

    718

    帖子

    121

    蝴蝶豆

    版主

    最后登录
    2021-1-2
    发表于 2020-4-10 15:32:02 | 显示全部楼层
    我也遇到过此问题.KEIL中必须按Reset键 松手后开始下载,但在秒日下就不需要.原因未明.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    9

    帖子

    0

    蝴蝶豆

    新手上路

    最后登录
    2020-6-28
     楼主| 发表于 2020-4-10 20:02:01 | 显示全部楼层
    swd的下载口没有设置,我是用了stm32cube自动生成的代码。刚才也检查了生成的代码,没有初始化swd接口的两个io口
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    9

    帖子

    0

    蝴蝶豆

    新手上路

    最后登录
    2020-6-28
     楼主| 发表于 2020-4-10 20:52:14 | 显示全部楼层
    问题解决了,还是mcboy说的对,我用空程序发现下载正常了,然后就在外设初始化里找,发现把wakepu的引脚重新配置了,就好了,但是好了之后想再次确认问题到底出在那里了,把wakeup引脚重新配置成原来的,问题却复现不了。。。。就这样莫名其妙的好了。。

    toofree 说的也对,程序下载完之后,系统提示
    **JLink Warning: Could not set S_RESET_ST
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17

    主题

    470

    帖子

    68

    蝴蝶豆

    金牌会员

    最后登录
    2022-5-6
    发表于 2020-4-10 21:28:43 | 显示全部楼层
    所有ST芯片都有保护机制: 一旦外部晶振出问题,立刻启动HSI->LSI等,好让系统运行起来!所以,缺省状态下芯片首先开启HSI,由软件再切换到HSE; 同理,低速也是缺省启动LSI,若需要再由软件启动LSE。

    楼主按复位键能侥幸成功,因为此时是上电缺省状态(HSI)!而你一接晶振就有问题说明你的下载程序还没有成功切换到HSE,导致二者冲突!而一去掉又正常了,此时是HSI在工作
    库函数将这一过程帮大家自动完成的!



    回复 支持 反对

    使用道具 举报

    该用户从未签到

    133

    主题

    4688

    帖子

    239

    蝴蝶豆

    版主

    最后登录
    2021-4-10
    发表于 2020-4-10 23:24:02 来自手机 | 显示全部楼层
    怀疑是外部时钟导致系统启动失败。楼主可以在仿真模式下,设置不进入main,单步确定哪儿出错了。如果怀疑时钟不兼容,可以换一个其他品牌的晶振试试。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3

    主题

    1306

    帖子

    929

    蝴蝶豆

    版主

    最后登录
    2021-3-31
    发表于 2020-4-13 17:06:07 | 显示全部楼层
    如果是通过SWD下载程序,与外部晶体没有直接关系,采用的是内部HSI进行通讯的。BOOT脚拉高应该是没有运行用户程序,所以没有I用户O引脚初始化了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    19

    帖子

    7

    蝴蝶豆

    初级会员

    最后登录
    2021-3-30
    发表于 2020-4-14 11:31:36 | 显示全部楼层
    LZ的程序里,有没有修改SWD两个引脚的功能?如果是,那只能通过短接reset电容来下载
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

    GMT+8, 2024-4-27 08:21 , Processed in 0.174862 second(s), 40 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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