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

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

[复制链接]
zero99 发布时间:2017-8-9 11:11
前言
' {/ U3 ^% `; V# L' ^某客户在调试STM32L053的比较器1时,使用内部1.2V的参考电压,没有问题.但当使用比较器2时,使用同样的设置,却发现比较电压无法调到1.2V,只能设置到0.6V左右,到时是什么问题呢?6 Q3 G' `" h' k6 o

6 K$ F1 L3 r3 ?" ^问题解决
$ H1 V1 Y# M* W6 [, x4 M" f" |, _
问题调试
" I/ T, k9 ?% C7 w# y2 C( F6 A首先得到这个问题,我们先比较一下两种现象之间的设置问题,发现比较器1和比较器2的设置都是一样的.然后我们通过修改比较器2的内部比较电压查看现象,发现就算我们设置为二分之一的内部参考电压(二分之一的1.2V),触发门限依旧是0.6V.即使使用cubeMx重新生成代码,现象也没有得到解决.
, @5 e. t: Q" U: f- ]) r+ t1 a! X8 S1 a
解决方法4 B/ b; ]3 Y. k, t+ V; k
然后我们开始查看参考手册,我们猜想,两个比较器之间是否有不一样的设置,以为比较器2更为高级,有更多的设置.排除功耗和速度的不一样设置外.我们通过搜寻comp2发现其在Reference control and status register (SYSCFG_CFGR3)里面有个不一样的设置, Bit 0 EN_VREFINT.具体描述如下 :3 g: _% @4 R* I7 l: G
11.jpg % L: I  A; W* a& G6 g9 M$ B' {; _
) a8 t- d0 m. k) _; d+ r8 J
      如描述,我们在某些模式下,必须设置这一位.所以我们做以下修改.在使能比较器2之前先设置这一位.
4 a1 M* O" `& {; q! r) ]' k
12.jpg 8 s9 P7 B. T6 q1 x: [

; |) X1 U& n% C: [& }- k- |& |6 g& M+ t      SET_BIT (SYSCFG->CFGR3, 1); HAL_COMP_Start(&hcomp2);4 b8 D4 {& U4 V" T' E
在这修改后,比较器2的比较电压可以得到正常的电压值,如1.2V.+ _- Z, }. c* W

+ I1 M, r$ {5 _6 \总结1 ?9 S7 U! y* k! m* q( h# C# y1 Q
在同一个类型外设中,如果两个外设同样的设置,却得不到同样的效果.我们可以通过查询参考手册对于这两个外设的不同描述,根据不同的描述,找出与现象之间有相关的差异,进行修改与调试.往往可以得到比较好的效果,或者提示
0 |3 L& ?  p  u; ^0 n1 u6 o/ B

7 W& l: m! F6 V! }

  s( Q# r3 t& n0 Y# \, _0 ]( J$ ^; o& f6 H6 q! v
文档下载>>
5 z- z3 ^, y7 F4 P4 I7 {1 u8 q# M: W) ^! \; H. I) ?3 E' m0 A
更多实战经验>>
( D' G$ |6 w' J1 T

0 A) ^  Z1 q. a' L
收藏 评论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% E( A  g& U$ D5 m9 i0 S
是不是买了ST芯片的都是大神的客户呢

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