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

【经验分享】Boot Loader 与上位机通信不稳定

[复制链接]
STMCU小助手 发布时间:2022-2-17 20:48
问题:
* |0 `: r+ F* U( j, J+ C0 B某客户工程师在某型号新产品的设计中,使用了 STM32L151VCT6。据其工程师讲述:他使用 ST 的Flash Loader demo 通过 STM32 的 USART1 向其加载用户程序,发现 Boot Loader demo 与 STM32通信不稳定,时而成功时而不成功,有时甚至连接不上。
% b4 S( x& k0 j. u/ m9 ^/ `
* s3 i! |8 D4 |# Z
& d# W/ j# I/ |2 ~; i
调研:
8 e; K# o- m- P7 t* a用万用表测量其所使用的通信电缆,确认其完好。使用该通信电缆,将其所使用的电脑通信口与另外一个通信口连接,互发数据,验证该通信口完好。将电缆接回到其用户板上,选择用户板的启动模式,设为 System Memory 启动,然后开启用户板电源。通过串口调试助手向用户板以 57600BPS 的波特率发送数据 0x7f,并使用示波器观测 STM32 的 USART1 的 Tx 与 Rx 管脚。通过示波器观测,确认数据0x7f 正确传送到 USART1 的 Rx 管脚,而 Tx 管脚上有返馈代码 0x79。多次测试,发现并非每次测试 USART1 的 Tx 管脚上都有返馈代码送出。将 STM32 的 USART1 的 Tx、Rx 管脚用 10K 电阻上拉到 VDD,测试,现象依旧。将 STM32 的 USART2 的 Tx、Rx 管脚用 10K 电阻上拉到 VDD,测试,通信稳定。
: v. z! u, G/ c5 p" n% d3 X% R7 K1 }# c9 ]+ `
结论:
/ U; a% |; O: ?4 v干扰信号通过 USART2 干扰了 Boot Loader 的运行,使其误认为 USART2 被选择用来与 Boot LoaderDemo 通信,而忽略了 USART1 上的信号,造成 Flash Loader Demo 不能通过 USART1 与其对话。
+ E& H( M8 Z" c0 q5 ]1 Y9 t  M7 S' r3 b: f4 C4 o: q7 X! o) ?
9 O2 _$ Q; X: g( V9 ^
处理:) f2 A8 |5 A2 A) W
将 USART1 的 Tx、Rx 用 10K 电阻上拉到 VDD,将 USART2 的 Tx、Rx 用 10K 电阻上拉到 VDD。: n7 N: u4 _6 Y5 Y/ f2 R1 O+ b

8 ~1 e3 U2 p0 t1 J建议:
5 e" d5 T' A" z5 |" ]STM32 的 Boot Loader 有多个版本。早期的版本只支持通过 USART1 进行通信,后来的版本增加了USART2、USART3、CAN、DFU 等通信方式。见下表:8 k! a/ x( S  d9 F" c/ K$ r9 G
9 e0 w# O, R  G/ L0 j
)I9%7ZX)3B(E(63@UWBAIGH.png 0 d6 i$ U) `/ B3 ^' j- [
0 e0 l* g3 o' h9 Y0 G: ^
其中,对于使用 USART 进行通信的模式来说,需要在通信之前进行波特率检测与通信口选择。这一过程是通过在 USART 的 Rx 脚加载两个低脉冲(0x7f)实现的。由于复位状态的 STM32 的各个 I/O匀处于高阻状态,若此时片外电路对地电阻也为高阻,则容易受到干扰。STM32 会误将 Rx 管脚上的某些干扰脉冲当成波特率设定及通信口选择信号,造成波特率设定及通信口选择出错,进而导致正常的通信不能进行。同时,由于此时 Tx 对外没有驱动能力,作用在该管脚上的干扰信号也会被上位机的Flash Loader Demo 接收,而产生误动作。通常,使用 10K 电阻将每一路待选的 USART 通信口的 Tx及 Rx 管脚上拉到 VDD 可以解决这一问题。: K9 f2 A! M& G" T0 `0 S
' O. z; T7 u. B1 m: ]4 q$ B
上位机运行的 Flash Loader Demo 的相关设置,对于能否成功加载用户程序,起着至关重要的作用,根据多数使用者的经验,对于 Parity 的设置,要选择 Even 或 Odd,选 None 会导致较低的成功概率。Timeout 要选择足够长的时间,通常要选择最大值,如下图:7 @7 R9 Z- }* o8 Y
& y! r- _# e/ V" h2 U+ K
Q17$~V55F(3Y4J~M@GPT[6K.png 1 }, l, F- k& C8 y
( L0 j4 }" l. \% O  s: O
' Q) n  i+ R+ K- ]" X' v
赞 收藏 评论0 发布时间:2022-2-17 20:48

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版