你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】关于 STM8S SWIM Error[30006]的分析

[复制链接]
STMCU小助手 发布时间:2022-2-28 19:05
一. 前言2 [" ]2 p: H$ {( d7 ^' d; ]
有客户反映在用 ST-Link 调试、下载 ST8S 系列单片机程序的时候出现了问题, 同一块板子在二十几天前调试均正常,现在重新修改就下载不进去,无法调试。问题描述如下:
" G" F' Z/ |" }' s# j' }3 v1 w# [1、无法下载,错误显示为:**Connection error(usb): swim error[30006]:comm init error:chip does not answer 换了电脑、电脑重启、换了 ST-Link 均无效。( l$ d+ V- V; n# m* j# F
2、用 ST-Visual programer 下载出现错误:Cannot communicate with the board 而导致无法下载。! H8 B2 Q5 @8 z, U! y' Y
6 C, T" d$ f9 W% N, U! h
% P! c5 d( K2 g
二.SWIM Error[30006]中的问题分析
8 f& L8 n  ?; n5 D, q6 q解释这个问题,分别从软硬件的角度去分析原因。$ f6 w  g  m2 V8 q" K( e) m
' k- L& L: k( }3 I* D
1. 软件方面7 k* C+ b: L5 D: s6 ~+ ^
检查是否屏蔽了 SWIM 模块,打开对应 STM8S 单片机对应的参考手册,参阅 SWIM disable 部分的寄存器,Description of global configuration register(CFG_GCR),检查软件是否对其 bit0 位进行了屏蔽。9 T+ y9 N" K4 x* X

- A3 f2 n; E+ Z7 O' w8 _. z1 T  g2. 硬件方面& x. _; f6 ]$ _% [
确信不是软件方面的原因后,最好选用一个简单的 STM8S 的标准示例库函数,或自己编写一个空的函数工程,进一步排除软件方面的干扰。然后检查硬件连接接口。) m0 U% ]" _6 I$ Z+ ]' S* {. w$ U
关于 SWIM 的标准调试接口,很简单,与单片机对应的 GPIO 口直接相连即可。
/ v. Q3 [3 Z" k: F! G   & \7 m6 c, g' I  s
G00FV45VXNHS~5M$`]7`Q)G.png
$ A% D! r& y' m: ?  ~
) K0 M1 M4 r) H& z( l6 _" ]通过万用表测量,检查其硬件设计的接口是否正确。端口正确的话,检查与调试器 ST-Link 的连接。6 x: m; H* a) F5 C- h/ ^0 G* s
关于 ST-Link 部分的接口,可以参见 UM1075 的手册。通过比对,发现其对应的接口线的定义分别如下图,有些客户制板时,并不是按照这样默认的引脚定义,此时需要按下图的定义进行跳线。) d" U, g5 n7 i* c0 @

- W1 d1 ?& ]6 J" Y 0R[JV}`I3F%L~J9{YEGV0Y0.png
& g; P$ ^  }- Q) w0 N3 w5 p( E7 V
当该客户按照上述的定义重新连接 ST-Link 后,程序能重新下载了。" J6 b* R! P, e0 M1 s7 n4 A7 H
, T( ^. n, c! W. ]) P! j, N4 |  M" B
三. 结语  Z* n$ C$ b/ t7 @
在分析该 swim error[30006]的原因的时候,也发现,如果 MCU 的电源不供电,也会导致该错误的产生,所以,简单总结下分析方向:软件 SWIM 模块,硬件电源是否上电,硬件的接口是否连接正确。
% V6 ~; U  F4 z: n0 f3 L" s
* u* l' L, Q0 ?! E6 j
收藏 评论0 发布时间:2022-2-28 19:05

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版