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

【实战经验】STM32L053 comp2 比较电压无效问题

[复制链接]
zero99 发布时间:2017-8-9 11:11
前言5 U% j! [3 f% B* l0 L& e
某客户在调试STM32L053的比较器1时,使用内部1.2V的参考电压,没有问题.但当使用比较器2时,使用同样的设置,却发现比较电压无法调到1.2V,只能设置到0.6V左右,到时是什么问题呢?0 {  b- r& r3 H9 C8 S  Z6 `) @
$ Z3 P: h, W* [
问题解决
# }! V! n6 E% W1 K( E9 @4 T% f4 T. c5 {6 M3 u
问题调试4 A4 c! F- ^: b6 F" T- x
首先得到这个问题,我们先比较一下两种现象之间的设置问题,发现比较器1和比较器2的设置都是一样的.然后我们通过修改比较器2的内部比较电压查看现象,发现就算我们设置为二分之一的内部参考电压(二分之一的1.2V),触发门限依旧是0.6V.即使使用cubeMx重新生成代码,现象也没有得到解决.5 h5 b, R. Q3 T8 I6 b! I
0 f7 ^7 K3 V7 T; l6 Z
解决方法
3 a0 u: `" f% b5 z- }) x" A, y- N然后我们开始查看参考手册,我们猜想,两个比较器之间是否有不一样的设置,以为比较器2更为高级,有更多的设置.排除功耗和速度的不一样设置外.我们通过搜寻comp2发现其在Reference control and status register (SYSCFG_CFGR3)里面有个不一样的设置, Bit 0 EN_VREFINT.具体描述如下 :
8 d" O' L" P  X8 v. p& E, Q
11.jpg
& _; U# I- E8 {8 L5 s5 r5 O" L2 `, U! b# p+ Z4 h
      如描述,我们在某些模式下,必须设置这一位.所以我们做以下修改.在使能比较器2之前先设置这一位., G! ~  Q1 t1 a3 q6 z. \
12.jpg
0 q# r$ P8 _* }9 X7 D  h! n
" l5 L1 j4 `; F, n/ z3 W      SET_BIT (SYSCFG->CFGR3, 1); HAL_COMP_Start(&hcomp2);# L2 N  `% ]. s+ o% _
在这修改后,比较器2的比较电压可以得到正常的电压值,如1.2V.& ^0 ^0 p' c2 \% A: _3 @2 i

& V; I0 V9 G& @! g2 E总结- y; r. h5 N( L4 y! F" D$ \1 U
在同一个类型外设中,如果两个外设同样的设置,却得不到同样的效果.我们可以通过查询参考手册对于这两个外设的不同描述,根据不同的描述,找出与现象之间有相关的差异,进行修改与调试.往往可以得到比较好的效果,或者提示
+ w* H: V5 c. @! ?, g. \
/ ~- l) K5 w# H5 K. N; q

. u3 v' |0 d3 y: Q. W
* L* l/ U0 b( A$ o
文档下载>>
4 S$ `4 s# W3 D# E0 S3 i# P( D
# J2 Z0 ]2 t  S3 B( ?+ ~/ P7 A- y更多实战经验>>" M7 `6 p' ]0 |) w

1 x* }3 j# I( E% S
收藏 评论3 发布时间:2017-8-9 11:11

举报

3个回答
Dandjinh 回答时间:2017-8-9 17:04:51
是不是买了ST芯片的都是大神的客户呢
samhong 回答时间:2017-8-9 22:45:07
中国四川加油!    九寨沟加油!  中国新疆加油!
zero99 回答时间:2017-8-10 09:29:40
Dandjinh 发表于 2017-8-9 17:04
3 O5 ]& T. a! `是不是买了ST芯片的都是大神的客户呢

) V: L9 @+ k+ l' s啊?什么意思啊?
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版