1100|14

3329

帖子

1

资源

版主

使用STM32CUBE生成代码踩埪(SWD锁死)解决方法探讨

 
本帖最后由 damiaa 于 2020-8-4 09:34 编辑

使用STM32CUBE生成代码踩(SWD锁死)解决方法探讨

昨天用STM32CUBE生成代码

1,SWD因为以前一直不定义它也可以用。所以这次也没定义

2.png

2,这次定义了不用的IO口的处理方法。看下面图的红色部分 如果不用这个应该不会锁死

1.png

3,生产代码烧录。结果给锁死了。烧录不进去了。

4,无奈,把BOOT1 BOOT0设置为 0,1直接启动内部系统存储器程序,再擦除。

     BOOT1=X BOOT0=0  从用户闪存(flash)启动,这时正常模式  较多情况下使用这种模式

     BOOT1=1  BOOT0=1 从内置SRAM(内存)启动,这种模式可以用于调试

     BOOT1=0 BOOT0=1 从系统存储器启动, 这种可以用于调试

这样就可以烧录了。

5,为了避免重复锁死老路。SWD直接在IO口显示定义为用于SWD。再生成代码编译再烧写进去。

3.png 6,BOOT1 BOOT0恢复设置为:BOOT1=X BOOT0=0 正常模式 后

多次调试和烧写没出现过了锁死现象了。

 

因为出现这个问题。所以分享一下。大家一起讨论。免走弯路。

 

此帖出自stm32/stm8论坛

回复

1869

帖子

8

资源

五彩晶圆(初级)

我刚好也在用这个片子,玩玩rtos。。

 

我记得之前用103的时候,low pin的,io不够,只能把swd的接口映射为普通io来用,下载程序,都是先按住复位,keil上可以识别到器件,然后点击下载flash,这时候下载程序是等待复位撤销中,在超时前松开复位就可以把程序烧进去了。。。

 

 

点评

这个板子没接复位,直接的用的RC电路。所以没试那种方法。应该也是可以。只是锁死的原因还是要找到去掉。  详情 回复 发表于 2020-8-4 10:04
个人签名坐而言不如起而行

回复

3329

帖子

1

资源

版主

本帖最后由 damiaa 于 2020-8-4 10:08 编辑
wsmysyn 发表于 2020-8-4 09:53 我刚好也在用这个片子,玩玩rtos。。   我记得之前用103的时候,low pin的,io不够,只能把swd ...

这个板子没接复位,直接的用的RC电路。所以没试那种方法。应该也是可以。只是锁死的原因还是要找到去掉。

这个405RG芯片好,内存大资源多。TPYBoard 板子就是用这个芯片。还可以跑mpython呢。哈哈。所以我把它搞到产品里。而且还可以拿来玩。

点评

嗯,主频也不小,168M,192k ram+1M flash确实很大,可玩空间很大,可以折腾,,想着慢慢玩玩,,计划也是用在后面的测试项目上,需要做一个SLT测试,用来当做板上主控,跑个系统,pc上可以控制台发命令,比较爽  详情 回复 发表于 2020-8-4 16:14

回复

1869

帖子

8

资源

五彩晶圆(初级)

没接复位就比较尴尬了,方便的话,我会用镊子直接去短rc,不方便就飞根线,

 

不过突然不能那么用,是版本更新了?,默认把一些管脚给设置了,估计翻到底层应该能找到答案,肯定是设置过了才会变,我目前就是用cube生成一个没有什么实际功能的工程,然后还是自己往上添加代码,类似于以前标准库的方式,暂时没遇到swd被改的问题。

点评

stm32CUBE有一个 定义了不用的IO口的处理方法 主要为了省电用的。 定义这个估计可能会锁死。 我的就这样锁死了。  详情 回复 发表于 2020-8-5 09:29
个人签名坐而言不如起而行

回复

1869

帖子

8

资源

五彩晶圆(初级)

damiaa 发表于 2020-8-4 10:04 wsmysyn 发表于 2020-8-4 09:53 我刚好也在用这个片子,玩玩rtos。。   我记得之前用103的时候,low ...

嗯,主频也不小,168M,192k ram+1M flash确实很大,可玩空间很大,可以折腾,,想着慢慢玩玩,,计划也是用在后面的测试项目上,需要做一个SLT测试,用来当做板上主控,跑个系统,pc上可以控制台发命令,比较爽

点评

用STM32CUBE折腾吧。或者用rt-thread都可以。 STM32CUBE和新的HAL库做起来比老的库有意思一些。 比如串口中断。基本上配置好了。你只要调用一下生成好的初始化库,开启一下中断。中断配置回调函数。然后中断里  详情 回复 发表于 2020-8-5 10:12
个人签名坐而言不如起而行

回复

1万

帖子

133

资源

管理员

谢谢楼主分享~

个人签名

玩板看这里:

http://bbs.eeworld.com.cn/elecplay.html

EEWorld测评频道众多好板等你来玩,还可以来频道许愿树许愿说说你想要玩的板子,我们都在努力为大家实现!


回复

2652

帖子

1

资源

五彩晶圆(初级)

default的引脚就是作为swd,改了当然就做其他用途了。自然史不行的。

个人签名人已离开,无事别找,找也找不到。

回复

3329

帖子

1

资源

版主

wsmysyn 发表于 2020-8-4 10:28 没接复位就比较尴尬了,方便的话,我会用镊子直接去短rc,不方便就飞根线,   不过突然不能那么 ...

stm32CUBE有一个 定义了不用的IO口的处理方法 主要为了省电用的。

定义这个估计可能会锁死。 我的就这样锁死了。显示的定义SWD为做SWD用就没这个问题了。

点评

嗯,所以也是个坑,不注意就掉进去了  详情 回复 发表于 2020-8-5 09:45

回复

1869

帖子

8

资源

五彩晶圆(初级)

damiaa 发表于 2020-8-5 09:29 wsmysyn 发表于 2020-8-4 10:28 没接复位就比较尴尬了,方便的话,我会用镊子直接去短rc,不方便就飞根线 ...

嗯,所以也是个坑,不注意就掉进去了

个人签名坐而言不如起而行

回复

3329

帖子

1

资源

版主

本帖最后由 damiaa 于 2020-8-5 10:14 编辑
wsmysyn 发表于 2020-8-4 16:14 嗯,主频也不小,168M,192k ram+1M flash确实很大,可玩空间很大,可以折腾,,想着慢慢玩玩,,计划也 ...

用STM32CUBE折腾吧。或者用rt-thread都可以。

STM32CUBE和新的HAL库做起来比老的库有意思一些。

比如串口中断。基本上配置好了。你只要调用一下生成好的初始化库,开启一下中断。中断配置回调函数。然后中断里面什么都不用处理。

直接写个已经命名好的回调函数。里面加东西就好了。所有串口中断都可以在这个回调函数中处理。

QQ图片20200805101131.png

QQ图片20200805101113.png

方便多了 以前一直用库。现在准备彻底换过来了。

 

点评

嗯,那种开发效率很高,不用关心太多底层。   不过我不喜欢这种一键式的。 主要不做产品开发,多数时候是自己学习 我还是喜欢折腾一下,我们是做芯片的,很多时候没有这种现成的,都是自己去怼驱  详情 回复 发表于 2020-8-5 10:20

回复

1869

帖子

8

资源

五彩晶圆(初级)

damiaa 发表于 2020-8-5 10:12 wsmysyn 发表于 2020-8-4 16:14 嗯,主频也不小,168M,192k ram+1M flash确实很大,可玩空间很大,可以 ...

嗯,那种开发效率很高,不用关心太多底层。

 

不过我不喜欢这种一键式的。 主要不做产品开发,多数时候是自己学习

我还是喜欢折腾一下,我们是做芯片的,很多时候没有这种现成的,都是自己去怼驱动,比较习惯这种方式。。。

点评

也不呢。底层驱动还是要做。只是效率高写。能做的事情多些。  详情 回复 发表于 2020-8-5 10:22
个人签名坐而言不如起而行

回复

3329

帖子

1

资源

版主

本帖最后由 damiaa 于 2020-8-5 10:23 编辑
wsmysyn 发表于 2020-8-5 10:20 嗯,那种开发效率很高,不用关心太多底层。   不过我不喜欢这种一键式的。 主要不做产品 ...

也不呢。底层驱动还是要做。只是效率高写。能做的事情多些。不妨碍你对底层驱动的关心。比如在rt-thread 你可以做驱动分享给别人。

点评

只要是不喜欢用cube这种,,, 太方便容易让人偷懒。  详情 回复 发表于 2020-8-5 10:43

回复

1869

帖子

8

资源

五彩晶圆(初级)

本帖最后由 wsmysyn 于 2020-8-5 10:45 编辑
damiaa 发表于 2020-8-5 10:22 wsmysyn 发表于 2020-8-5 10:20 嗯,那种开发效率很高,不用关心太多底层。   不过我不喜欢这种一键 ...

只要是不喜欢用cube这种,,,

我就算觉得太方便了,不是很好

个人签名坐而言不如起而行

回复

2

帖子

0

资源

一粒金砂(初级)

有次PA14 复用成IO  要用镊子短接电容 下载。。。


回复

2

帖子

0

资源

一粒金砂(初级)

这个要注意:仔细看芯片数据手册.

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

关闭
站长推荐上一条 1/5 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表