请选择 进入手机版 | 继续访问电脑版

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

【实战经验】HRTIMER产生多相相移信号

[复制链接]
zero99 发布时间:2016-7-12 14:19
HRTIMER产生多相移信号
) h+ j0 n9 P6 H" E( E6 A5 h' P
前言* }! G$ o" u; F8 O/ r* C
STM32F334内部集成了高精度Timer,最高主频4.6GHz,灵活的控制用于产生数字电源等产品的PWM控制信号,内部丰富的联动机制可以产生各种实际需求波形,本文针对多相相移信号的产生给开发者一定启示,抛砖引玉,开发者可以根据不同需求产生应用所需的波形。
" J/ T" n/ V9 B1 D& q5 I9 S7 Z$ E5 E- b
STM32F334内部HRTIMER结构
2 J; O! p9 Z, I) C" N% v下图为HRTIMER的框图,可以看到该高精度Timer拥有五路独立的计数器,可以产生独立的五路带死区互补输出的PWM波形,同时Master Timer这个没有输出端口的独立Timer可以作为五路其他Timer的清零同步信号。+ {5 x, K- \4 e/ b

  R4 y  j9 H3 `" C, i$ |- ^8 B 11.png 5 r% g3 g) s5 l+ a. W2 E

" N: U. k# d3 t1 _1 c需要产生的波形
9 w  l2 _% {8 E! J假定需要输出四路带死区互补输出PWM波形,频率相同,但各路波形存在相移:
- a+ L5 l; y6 p+ {  x) x- x( z% v+ jPWM1,PWM2,PWM3,PWM4, 需要控制这四路波形的相位,
, {+ w  @3 u& bPWM1为0度,PWM2 为30度相移,PWM3为85度相移,PWM4为100度相移' B  A# S9 {+ L, s5 R
占空比假定都是50%的占空比
  P6 E6 ]8 U: N9 _: y5 J' _2 f5 }$ {' e7 }+ U5 |
12.png
. o; ?* o& n  W5 Z' A2 Z% I
0 p% t- a( H: S( x; \1 A8 g产生上述波形的机制
- D" ~& Q' L8 Q; j  ZSTM32F334的波形产生采用了比较输出模式,也就是说可以单独设定波形的Set,Reset位置,当需要将各路波形统一起来,需要同一个触发源,在不同相位点去触发Timer计数器复位,这样当设定好比较模式时,波形将自动输出,准确快速,并且可靠;
% f/ T! i% F! i  e
) |+ S1 b+ g4 |2 N- I配置步骤
" p# S& A, C- C- y- q1 _配置管脚以及时钟
4 z" ]* C4 }' P配置Master Timer
3 Q/ j" C% l( s! B* U8 Y假定使用128MHz*8 = 1024MHz作为基本时钟源,Master Timer设定为50KHz,则Master Timer的ARR寄存器数据为1024MHz/50KHz = 20480,即360度对应20480;6 L* d, _, Q* h9 K6 E
Master Timer的Update事件作为TimerA的计数reset信号,此时设定相移为0度
7 L  h5 [0 B3 \1 |+ ?7 {# nMaster Timer的Compara Value 1作为TimerB的计数reset信号,如果设定相移为30度,则Compara Value 1 = ARR*30/360 = 1706
8 e3 S- D4 j% K! DMaster Timer的Compara Value 2作为TimerC的计数reset信号,如果设定相移为60度,则Compara Value 1 = ARR*85/360 = 34138 |% ?% S; F  ]' {, `" k+ i
Master Timer的Compara Value 1作为TimerD的计数reset信号,如果设定相移为90度,则Compara Value 1 = ARR*100/360 = 5120
' A: o$ Q( b% h5 G  B- n
+ G& N/ W- ?) { 23.png / ^. F6 D3 B- Z1 L& h$ {4 [* }

* E9 m/ L* w/ D" i- n$ ]0 K4 R配置各个独立Timer5 ?; V! r. O1 m9 G
Timer的计数Reset信号分配如上面所示,因为这里设定的占空比为50% ,那么只需要使用到独立Tiemr的Compara Value1作为该Timer的Set信号,而Timer的update事件作为该Timer的Reset信号即可,当然这里还要说明,如果如果设定不同占空比信号输出,也可以直接配置该Timer的Compara Value2作为该Timer的Reset信号即可;* G- @  w( @$ c7 o' ?1 W$ S
本例因为是50%的占空比,那么直接设定Compara Value1x(x=A,B,C,D) = 20480/2 = 10240;- n# J) r" o' N& H1 w- u
死区时间固定的上升下降都为数字100,该数据可根据实际调整;
2 p" K! J1 f2 F% R* A, t4 z. Q
* B: ?$ L5 K4 J5 z& u( q 24.png 7 v' e  e: D) L3 i5 e
  u& u$ Y9 a) y% K  E! M" B2 Q) [
实际测试波形:  j+ `7 }- [1 s
为方便观察,只取每相的通道1的波形进行观察。如下,可看到清晰的移相信号:
6 m. r" E; h. W2 ^' z% x/ U: [6 l- ~
, H+ k6 Q* k* B) l( j 25.png
5 A$ ]& b" q9 T/ F& o# q: Y
1 q3 z% t  Q+ w+ |( |4 o$ g ; C3 g% e' A5 t; W$ g/ b, |

; k" w. b8 V7 v! i) c3 U1 U# ^文档下载地址:
. O% M! i  Z/ f& E+ Ohttps://www.stmcu.org.cn/document/detail/index/id-217179- c* Z0 R1 Q3 R
* B8 c7 F- n; H* ]
实战经验汇总:9 s% @4 V- ~2 _
https://www.stmcu.org.cn/module/forum/thread-576401-1-1.html
收藏 2 评论1 发布时间:2016-7-12 14:19

举报

1个回答
stary666 回答时间:2016-7-17 11:24:20

所属标签

相似分享

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