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

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

[复制链接]
STMCU小助手 发布时间:2021-12-8 21:00
1.高性能DAC
& e6 d8 a7 ]8 Q- _5 V: l8 n: d7 L2 HG4系列一共有四个DAC,前两个为低速采集DAC(1MHz),后两个为高速(可达15MHz)
$ b- u9 I: M0 M' s0 q/ ~8 G; e# T3 G
20200724174034276.png
" e9 `4 T# e) a9 ^/ X, {
$ L! c, `& U9 Y+ _' F; c
20200724174706457.png
! a8 f) S2 ~( e5 K9 S

* ^9 N. L' {4 F' F5 @2 w! rDAC1,DAC2的采样速率最大为1MHz,DAC3,DAC4的采样速率最大为15MHz。但是没有直接连接的GPIO口。
; E5 h+ l1 G9 k# r$ {
* D* D/ N8 M7 B6 H4 t
20200725100546822.png

6 K2 [' p( V8 B  p, I' w$ Q
) w% f( I. s1 G7 N* `
20200725102032195.png
1 W1 X' A- s, b1 B( {0 K1 [
! s, a/ r4 X, @3 p5 F8 F
20200725102059872.png

5 w( M# Y# x: _# u
! i. }2 O/ o# o* SDAC可以输出任意的高频模拟波形。
2 C: E5 V" `' }& a3 O7 N此时DAC的更新速度受制于运放带宽的限制,因此最大的速度也就是13M。/ q: F* p6 o" K7 H" J

8 h+ |! R$ f0 A) D* K2.滤波算法加速器FMAC(硬核FMAC+DMA滤波计算,能解放CPU)
- Z9 m4 v& }7 X; Y
5 o0 b0 \4 \8 K% c
20200725104311843.png

5 S/ c5 e  I" [/ G4 X: D+ j/ y/ o* \! t5 e4 _' j  q8 j
" \9 d6 [- E. u1 J# B
使用硬核的滤波,不通过软件程序进行,可以有效的解放CPU,
: D& X( b. e/ t1 ^* o! o# _! ^6 j2.滤波方程9 V0 E" r" R# ]2 m; M5 K* W; z

/ W7 [; z. t; {4 k7 _. w
20200725104541862.png
- u+ P8 R  [  S* D' S/ D

- e2 y# N, m8 `$ q; ], V3.单乘累加架构' v, T# O& j0 D) A) ^( A
3 v9 H5 Z  r% z6 U* d
20200725105056369.png

% b( p4 W! U7 `& a# Z! d; n; i4 S/ `) K" b$ m- Z
FMAC单乘累加架构,是重复利用的。输入有Buffer,输出也有Buffer,通过Buffer加一个乘累加器实现滤波的计算。: F. |8 ~- Y% \* N
6 X5 F2 ^' x3 B& c' \$ N
Buffer:存储缓冲器,将外设送来的数据暂时存放,以便处理器将它取走。$ O5 r( G0 i1 V  P7 L+ X

( z; ^( B6 @5 z! F- ^0 a4.Buffer配置
" S( `% x8 h: t  j$ |' h7 q
( b- o* v, \+ o, z
20200725105214582.png

- m0 `+ z/ K4 |. z6 K
5 I5 y+ s! a6 k5.存储空间需求(Buffer的空间)-FIR' {& W, n, |; H- L, g) z

& U% N4 l7 l5 o  h4 P* J( O
20200725113904393.png
% E) }+ d3 a1 h3 R* K. r

$ g: C" I( R& Z* d+ h8 X/ g输入空间:N+k
. Q! _" y! z3 z+ V  _6 F固定参数空间:N# E) C! Q- Q; W4 Q
输出空间:k1 ]# D: C6 W- ?  e2 b
总的占用空间=2(N+k)应该小于Buffer的空间256; U! w% c9 c9 l) P. Q
6.硬核与软件的滤波计算比较
: ?' K3 I  P) _( p硬核处理滤波计算(FMAC+DMA),速度不占优,但是胜在可以解放CPU.5 A2 W! N4 ?; V+ m6 ]5 Z8 H
+ s  f% E" J4 S
20200725114947242.png
! U- f. d- h) R, v( C* o8 J

' N; n" J, X( w' l2 |0 M0 A/ C7 F  v7.工作流控制" F: y5 `) O3 m$ v
( L& C" r! O5 w: \. H# C% m
20200725122307469.png

6 f8 A; Y- r* a9 h
2 R8 h* e4 j2 E2 |
20200725122346451.png
  Q; E! r3 T& u) N# x) |* E+ O3 r

7 J5 K$ [( I9 ~% p  R2 c+ _3 t* p7 n& ~
20200725122657175.png
- e! \: T- g& r6 a' _5 t

+ o% y1 ]! L; w7 N( f+ Z6 U9.FMAC应用举例
2 c$ ^) \, p0 x6 v7 s' R% g
  r+ B; v6 y; a) `6 C' V7 [: }7 T' [
20200725122916185.png
6 n; }8 e8 F1 x7 M- q9 {) D- e2 A+ T

1 V. v2 s+ j' G$ ~2 Q" X3 V: E0 |; m
20200725123036873.png

' }' L' Q" N9 V" R9 c5 a( B" ?& d; X! G( Q
2020072512310251.png

7 I% M1 L! F; T0 \8 ^( ^3 K7 K6 Y/ a2 C/ r! Y: ]: [
20200725123123685.png

; g2 `" S' O0 E0 o7 T. M
! [7 k' x0 }0 M: x- @
2020072512314**.png

# F9 U4 T& g% q7 ?7 y0 b/ B' ]7 |. O* s- p0 g: T
; ~) c8 M( Q% m# O+ x: c# }
代码:- J1 P7 R. O! k! V% h
  1. 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)
复制代码
3 ?0 w$ O" l- d% k! b; o
20200725123456384.png

1 n8 o8 N9 S0 l5 n- F
' g' s% W" M1 A# ?1 i5 ?6 ~
20200725123522134.png

& K# t3 k5 I  N4 G: k" q
, ~7 h+ L, B( d3 B  w7 b  _4 I
20200725123544835.png

$ {/ G. I4 [  l, I/ |3 n, ^3 k; \5 r5 h5 U
20200725123633745.png

: P2 \! Y" b4 _2 N- U5 ]
3 ^& v" w: D  N- \2 q
20200725123723577.png
% M0 L  ?% c2 g8 W% m

- G' u/ j6 ^, C( E
# J+ l# g7 ~* H
- t3 b1 |4 T) T/ P+ K& [* k* [* V1 j) M* _2 Q
. e$ H0 [7 `  i  r. Y0 K9 c
总结
1 i! R& R+ k  l+ {/ g) [0 ]8 k1 `STM32G4的Cordic可以加快环路计算
; a% S" P* z; c! N2 y• STM32G4的FMAC做滤波算法可以释放CPU资源
5 m. K  O# z6 @) N• 使用出色的片上运放,比较器即省成本又省板材空间$ y8 n6 w7 ~3 F' }) O$ w, B
• 特色外设可以有更多设计想象
0 w1 `. I7 f, A% Y! x' ^4 U9 h" P- ^2 S/ _; K7 L- f' T
0 `; g0 p" e: ^0 K- {
- G) f8 E& M4 P
收藏 评论0 发布时间:2021-12-8 21:00

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版