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

【经验分享】STM32G4学习笔记之DAC+FMAC

[复制链接]
STMCU小助手 发布时间:2022-7-5 17:32
1.高性能DAC
: @' n% F  T" N7 O6 v5 p1 yG4系列一共有四个DAC,前两个为低速采集DAC(1MHz),后两个为高速(可达15MHz)
& q# G2 A( M$ @! G2 D )YR5~$GZ`TA(PW_L6`7[}_L.png , Z, B9 J( s8 @
- q" L( N6 p* ^" F$ }: N
DG(NET97O)BN%)ZNY5J65[7.png 4 F( K8 n5 C! A1 a0 C0 \; M1 C
8 W0 b2 _8 p. t

) ]- E7 N/ E( E" |5 k$ xDAC1,DAC2的采样速率最大为1MHz,DAC3,DAC4的采样速率最大为15MHz。但是没有直接连接的GPIO口。
9 H3 t$ n: x8 ?* a) u* z
+ _. A1 Q/ P) U$ I {J8W[]KENUPAMXIM6YYM@XF.png
4 r* \5 X2 \6 m+ e
' S2 h. [, [, p! e3 E TA%GXO5U6ZL2SW{83{L~(C8.png 9 I! H: M4 o$ l' j' j( t1 K" \
1 s5 }, T" ]5 L; c9 }- `8 |
M{U~L%RMBP08NL$V3CAV2OH.png
* A+ t' Q: W5 s/ {
! a( D! R( o! W4 u! U0 E# sDAC可以输出任意的高频模拟波形。, j6 c& E# R0 d) Y1 U: X, e( W9 `9 }
此时DAC的更新速度受制于运放带宽的限制,因此最大的速度也就是13M。" t; r, d! u$ p; X  n

* d" N9 F' X1 M3 z6 p- Q7 ]2.滤波算法加速器FMAC(硬核FMAC+DMA滤波计算,能解放CPU)$ G# H" A# t( l6 v5 B4 V4 a6 f; Z

! S# |( [( [2 e/ }使用硬核的滤波,不通过软件程序进行,可以有效的解放CPU,8 T/ A" v; I' R& Q6 B3 W
2.滤波方程+ ^3 h+ B) M8 E6 P) U

) H9 l0 z4 c  Z& B SWE0$`8BYG~TT9N[`@05$$E.png 0 b- B3 v8 r8 H( S) k

5 i9 |' c* y' T! l# z: O3.单乘累加架构
: I& \) U6 c( _8 r, }& G0 R; N/ Z
& ~# S' G; J; y4 R0 I, g; K 82~85~61_J1UBRUI6[{}QHA.png 9 z, K, ~6 I4 t5 B4 C
FMAC单乘累加架构,是重复利用的。输入有Buffer,输出也有Buffer,通过Buffer加一个乘累加器实现滤波的计算。% ?1 M% K3 n; E4 R. }
4 ?& X; @, {* D5 U/ w
Buffer:存储缓冲器,将外设送来的数据暂时存放,以便处理器将它取走。: ^$ X) `# r* W2 r) V

7 z3 s! V0 D9 u( w* M1 P. g! s0 O6 r4.Buffer配置" D1 T7 P0 z3 O7 h/ {

: J. ^/ T# v$ s. J 0WN9EFJ6VD0TDWQ(A{IYN]4.png 7 S7 D4 Q+ K5 g+ i

3 ]# a# ]5 ~  J& ?9 w% d/ U5.存储空间需求(Buffer的空间)-FIR
7 G% d5 r0 C, z% V
6 _; l8 m0 Q/ `9 Y" S8 I& _ {(QP2_N0N~C5`FNEUQA8B.png ' G4 Q9 G- L) B) V0 g

4 _) z) G2 e( A( P  o输入空间:N+k' k( J( e' _0 M8 |, u7 X
固定参数空间:N6 g3 J  e- l9 f4 J0 k+ `( X
输出空间:k1 k& R; V- U# T* ~3 x% ?0 x
总的占用空间=2(N+k)应该小于Buffer的空间2561 a: W8 d. l. E5 E: C& s
$ {% m- c) y' `: M
6.硬核与软件的滤波计算比较6 v; E6 _1 z- I7 p! `
硬核处理滤波计算(FMAC+DMA),速度不占优,但是胜在可以解放CPU.5 Y4 D' R2 `$ V6 ^+ o

1 ?) G3 L0 Y' C4 N! @7 A7 s: P C)Y4HTMBQFO$_J`CKW2UF.png
& {4 K8 F3 n: K  V5 V/ A
, m5 l' p$ ?7 H9 s9 V" O7.工作流控制
) g: X7 Q/ l! t  g3 ~2 S" I( u+ y
+ ]9 }; K2 L1 F3 W) E+ p (OM$KGH8ASU6QO~H`XX~H5Y.png ( N! B2 v) \" F3 U- J: G

, C+ l' c8 V! T" M2 R5 K; V% ?' L TBUGDE[SR[{3AH3M{TTO171.png . p, ], f1 r" S' m: o
1 Z: b  Q& b: N9 ?0 @0 b: u7 \: i  [
H8E~L(XNXUQ@}TV8Z$GYLD5.png ! \' c+ l- z# k3 o

* r) t3 s1 f' }7 V. Y# g9.FMAC应用举例
  b2 j' j; W6 b% H- l0 E' {* |

5 d3 S, B# R1 S. _) E; m4 q* B% a; i2 t Y~`{8)LH9P(A1]MM[P`Q.png
6 ?; S) A5 [- Y) |0 _. j* s6 T. c7 u+ l
%[PQM[F9A7GPD$X)_UR}5X1.png
, Y" t) `# _7 v: w9 Z6 u6 o6 v8 m! B) {8 ^9 q; r, j: j
EQ]8%CI3NMROSLUHGY(_CQV.png
8 K3 z, H; X0 G, M. X. E1 I
& R' S1 n4 e* F/ J2 F, s3 L" j2 e 8}EH3%(U{KE%LYG6[__Y($U.png 3 u0 {% P! C4 X

$ \& g* y9 N; Y/ w! | C6$_16CH8ZD)LR`@IGWK$_G.png
) y* ^  {# X  f2 k7 a6 `$ a; \6 e; i: F. Z' I
代码:* j7 J* `+ S3 l/ w) g# K! o
1.FMAC_FilterConfigTypeDef sFmacConfig; sFmacConfig.CoeffBaseAddress = 0; sFmacConfig.CoeffBufferSize = FIR_COEFF_B_SIZE; …… …… 2. HAL_FMAC_FilterConfig(&hfmac, &sFmacConfig); HAL_FMAC_FilterPreload(&hfmac, aInputValues, FIR_COEFF_B_SIZE + FIR_D1, aOutputDataToPreload, FIR_COEFF_A_SIZE +FIR_COEFF_B_SIZE) 3.HAL_FMAC_FilterStart(&hfmac, aCalculatedFilteredData, &FIR_OutputSize)( M! _6 r4 X; N7 q, T+ E

( c) T! Y) p. i: s$ }% `4 Y P]1QKD]9$NFACFH`~SM{@XI.png & P( j# I  v- R" [9 t, [: x
9CO%6(R{%8Y{X_}BY[S}R7Y.png
8 L0 |7 C7 A3 y( b, @  P6 Y( Z1 v  N. t
, I4 o3 S0 l) u+ ]
2 N" a% Q  r- v7 R* Z$ B! O
  S/ I1 S4 R. z1 K/ U8 x
* z+ |: ^2 Y7 U3 N+ C2 q; _# _
11E{PZ59J)5P1I(M33$NP4V.png
6 L( g" V# a3 p# u; {: Q+ `- `" L% s" L5 c
总结
$ c$ x2 H& J% k
STM32G4的Cordic可以加快环路计算9 f5 }5 e; c+ r) o! g. v! r
• STM32G4的FMAC做滤波算法可以释放CPU资源
( ]; Q- N: z2 i% q. L• 使用出色的片上运放,比较器即省成本又省板材空间
% W7 O# R1 g8 G9 V• 特色外设可以有更多设计想象
0 i( Q2 a; F0 g  d" n8 ^7 N. k- S' ~8 p. ~) v

4 j$ o+ `4 n6 T4 g0 f
+ {) c# S. w- P, @* u( _: e: |2 b) B  x( f. v6 {$ B3 f, L  l9 }

( j+ R$ o* k2 d. K+ P" u( V: C
7UT%S5L77CCNGE{5A88$ZU6.png
AGM2_%}10$5OJ5OX2[_BUC4.png
2$W2ZSCM(BT$8G@G{}I7$4N.png
赞 收藏 评论0 发布时间:2022-7-5 17:32

举报

0个回答

所属标签

相似技术帖

官网相关资源

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