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

STM32 CAN中波特率的有关问题

[复制链接]
yumeii 发布时间:2019-12-18 17:43
我们有时候会用到SMT32F0x2芯片做产品开发,用到其中的CAN外设。采用8MHz外部晶振,经锁相环PLL  6倍频后产生48M主频,配置为250K波特率。
1 C. v2 Z3 F1 g) t3 @" O0 A0 p* j5 k1 d0 }8 N1 Z! `" B1 i& |

" ]% B9 r, @! Z, z6 w可实际示波器抓的和预期不符,大概是理论值1/6的样子。下面是相关配置代码:
4 w8 Q- t6 S/ H3 P* G( S& Z, P$ J
" k! H: J! m* f( C

1 }1 j4 g  ]* W# Y' W 1.png
* s9 d6 Y' H) U- K( W6 d5 O2 h6 I$ y( n% S* L6 a

5 _3 n* b9 F) {按照上面的配置,波特率的确应该是250Kbps,可测得值怎么才是理论值1/6?
1 |  ^; r& `/ }# W; b- r5 |+ K( Z' O& I4 b( R

0 D0 z) `  R1 e/ l第一感觉是那个PLL没有起作用。这首先让人想到PLL之前的时钟源是否有问题。  `. n& a- C, a% A9 r* Y

- j; J  }9 F$ L

3 u" X- i/ Q8 w& G% b' T  i/ e3 J鉴于此,该用户检查外部晶振振荡及焊接情况,结果发现晶振没焊接好。这意味着根本没有HSE时钟给到PLL,自然它没法起作用。在这种情形下,代码里当检测到HSE无效时会默认将内部HSI时钟作为系统时钟,而这个HSI 刚好也是8MHz,所以测得CAN实际波特率为实际值的1/6.
8 G3 N7 h: N5 g
. |( O) `& j# I" b$ F6 I/ U% K

: k! P. S: X% A/ f8 e" B5 | 2.png
$ d! n% I9 f1 s: q% S* W' _$ B/ q
- S3 Y. |  s2 @! ^( N
当用户将晶振重新焊接良好后,就一切正常了。那么,到此有人或许会问,是不是这个外部晶振焊接OK、软件配置代码也OK就不会出现这个问题呢? 那还不一定!+ l! O* v. c, A4 F6 m# T0 k" a

0 u/ B* U4 s5 Y# e- G! c/ k

) ^% l4 w: b& j1 A毕竟,你外部晶振品质及焊接良好,软件配置正确还不能完全保证PLL一定正常工作。我们不妨看下STM32F0x2芯片的电源供应布局框图。. }+ @5 x& J2 w: Z2 z, P& y
* `. G' d1 t* p! w

! \2 S$ n% e2 L" W- _ 3.png : A3 L/ k  N  C

# h& g" R1 l2 ~" K+ V
$ ^2 z1 P# z+ o  o+ C+ ]/ \+ E4 m
从框图中我们可以看出,PLL是属于模拟电路部分,它的供电由VDDA提供。如果说芯片的VDDA脚没有正常供电【当然包括没有正常焊接情况】的话,PLL仍然是没法正常工作的,随之而来的时钟也就没法呈现我们软件代码配置所期望的结果。自然,如果作为芯片工作心跳的时钟出现异常时,它引起的连锁反应往往就会遍及到方方面面。
; Q" _% |* C4 a% u: ~  A5 u/ B2 H: w5 n3 }
, H9 T' O' E& i7 f# w! h
这里就上述案例做个简单延展,提醒我们在做MCU调试出现问题时,除了查找代码原因外,也别忘了最基本的电源供应、电源脚、晶振脚的连接、焊接情况。对于STM32芯片工作后的各种时钟信号的检测,有个比较简单方便的方法,那就是将某内部时钟【有时可能经过分频了】通过MCO【Master Clock Out】脚引出来,直接通过示波器查看即可。下图就是STM32F0X2芯片的MCO输出连接映射图。: E3 n- w. d4 Y# X3 T9 g4 `0 Q
4 |" {5 t4 U5 q$ x) \. o3 B
* v) }6 e9 Q) o; I1 @
4.png " O& |/ D! S  y; y5 K$ f6 j
6 X% O7 P4 z3 M$ V

$ ^' J/ w' W( T+ {2 w0 K/ ?
% [* ?) U+ P7 ?. i5 w

7 Z8 P8 c& H7 c+ q" H3 _
收藏 评论0 发布时间:2019-12-18 17:43

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版