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

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

[复制链接]
STMCU小助手 发布时间:2021-12-8 21:00
1.高性能DAC
5 r' g5 o- l* eG4系列一共有四个DAC,前两个为低速采集DAC(1MHz),后两个为高速(可达15MHz)4 B4 }5 k/ X1 a2 u
2 X5 V! Z- g* ]
20200724174034276.png
' x3 `4 A& T1 l1 N: F
' G0 L8 F' B- J& D; y5 q2 w0 [" T
20200724174706457.png
- K) b: n+ _! u1 @: ]
2 E9 ?- o! R9 S8 m& f/ s  B0 O
DAC1,DAC2的采样速率最大为1MHz,DAC3,DAC4的采样速率最大为15MHz。但是没有直接连接的GPIO口。0 b9 w3 X; Q# n
' P& M0 j# |+ Q& w
20200725100546822.png
* b# y7 |- w5 H0 ^
8 \1 C9 n* W- a% S
20200725102032195.png
( |* M* |/ [3 S6 |+ K
, {5 a: O8 Q  ^
20200725102059872.png

4 I8 C3 y; P0 @$ Z1 m2 B) h8 ^: _! }* z  B' c
DAC可以输出任意的高频模拟波形。6 N! D7 W: V$ h! d) v% b0 I
此时DAC的更新速度受制于运放带宽的限制,因此最大的速度也就是13M。! h  n- k" ]( W6 V0 U- b
% n% r, K% q& E- z) j
2.滤波算法加速器FMAC(硬核FMAC+DMA滤波计算,能解放CPU)
0 O7 c# |& W$ `, U6 P# `) S
. `4 ~: u3 b" I
20200725104311843.png

: _9 U3 i& U. w+ \! S2 D
" A6 F# L, R! i+ ]+ O0 }/ C) P& C" H# d
使用硬核的滤波,不通过软件程序进行,可以有效的解放CPU,* O) w0 M4 x2 O4 z, c" S% a, Y9 M
2.滤波方程
# i. A. t' N' a- u7 {4 F. V" B  o5 K$ ]* L
20200725104541862.png

4 j1 `6 t8 H( H( w
( ]) o! n* |, F4 q( E7 a3.单乘累加架构& C4 {6 t% b5 K6 Z: d

9 a, x- p+ ~7 j! }
20200725105056369.png
; U  ]7 o# I1 m4 m

3 r& e8 T& L% x6 h$ O( IFMAC单乘累加架构,是重复利用的。输入有Buffer,输出也有Buffer,通过Buffer加一个乘累加器实现滤波的计算。+ e5 O3 g2 ]: o1 R7 M2 y; Y

) _* I8 M. r4 N  C$ xBuffer:存储缓冲器,将外设送来的数据暂时存放,以便处理器将它取走。& a, h4 G; Z9 @8 E1 z3 y
8 ]4 W% j: S0 L' s# a: ^( C
4.Buffer配置
# {' V, x& Y+ L) o7 x% F! j9 l3 h3 M- d+ V
20200725105214582.png
: f3 o5 g9 ^5 i' e9 u* @
6 j. h# A: _& K/ K; J
5.存储空间需求(Buffer的空间)-FIR( S5 e: }1 }8 R6 z' E3 g6 E

2 I: t2 R/ w5 \
20200725113904393.png
  O- w" y! f, h4 V
; t6 T. Q/ P' }9 L0 f  ~' N
输入空间:N+k! I  j& @/ D( D9 B( D! {
固定参数空间:N+ F. Q6 E5 v6 B/ C% o1 [! E
输出空间:k9 t% o8 j9 A4 S, @
总的占用空间=2(N+k)应该小于Buffer的空间256
" D2 u. f! t" n. F6.硬核与软件的滤波计算比较
9 I+ p, B7 }$ H! j硬核处理滤波计算(FMAC+DMA),速度不占优,但是胜在可以解放CPU.# \2 a/ R, C3 P) ^

: q! Q( ?* k( e
20200725114947242.png
7 a( ^/ r5 U1 P1 d( R+ L

' j. y$ i) L6 y* w- F5 ?# a7.工作流控制& X* N$ @4 v5 R* e2 N  o2 \

/ T3 K& r5 _9 _4 X! t9 t
20200725122307469.png
- n7 l' c# W, w5 L: q2 W% ?1 T

( V( U4 }! _! _  i2 U, ^
20200725122346451.png

: h, d% c( ]3 M) }8 M0 b
( K9 b: i! V2 p, ?- K/ z+ a8 ?3 ~9 [7 j! j  _
20200725122657175.png

$ r; Q# B: j2 u4 N" r' J+ q% l
" F. e2 a, O; h& K9.FMAC应用举例
: V6 ?: ^8 v  k, t6 ]) v1 G5 m! F0 a. U! J7 y6 @
20200725122916185.png
) P$ p2 f& \' T9 G4 X
0 d1 e4 R% |9 I
20200725123036873.png
9 h( w! D+ O; ?) G. j
+ [1 x; C" M% |5 j6 W( a
2020072512310251.png

& ]: c0 m0 M' i* `0 O7 u+ r
% k5 E8 g/ r' s# E
20200725123123685.png
- N( O9 Q- J6 I; F

, H- l, @# l' m
2020072512314**.png
) P4 J! K0 n1 A" D

. Y7 F4 P1 t" p4 S0 G8 p% L! O
- g5 \$ N. i3 ]' x代码:
9 a7 i* G8 n6 b$ }
  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)
复制代码
. ]0 Z/ L$ j) Y
20200725123456384.png

+ A- R$ ?' i: [+ i+ o
; M4 S8 T2 ]) T; }
20200725123522134.png
- t3 w# V* j. ]1 G8 F
$ K0 \; i) C( Q0 Y0 n! t- ~
20200725123544835.png
# a! M, a3 a- ^5 ]8 m. _
7 q1 c. ^5 u: z0 z/ ?- t
20200725123633745.png
! I' \. S3 b8 _4 W6 j' P. m/ k

# m+ I4 U+ c# x, \
20200725123723577.png
3 O" t$ |( p2 Q; c( C/ Q! O
: ?% u! x5 E+ Z2 W' j; |) T

5 G8 i/ }6 A/ H- w3 v$ m/ O/ L, ?9 i  I# u% B$ n
6 Y7 m4 ]& E: B# T/ ?9 b( s/ x. H

& c0 A/ I9 X! z" o% P( J- B) B% C总结
! ]$ j7 R. b7 p  X: V$ pSTM32G4的Cordic可以加快环路计算3 s: k/ I! n3 Q; l* v
• STM32G4的FMAC做滤波算法可以释放CPU资源
' t6 G0 }9 y: D: z- Z' A0 C• 使用出色的片上运放,比较器即省成本又省板材空间& ?" x. k) T; O9 j& v
• 特色外设可以有更多设计想象
% ~6 F  o4 `/ f+ n- ^% o  H6 \3 g( }0 [

  @4 n7 T4 {& r3 D  v! c- Y& o$ l* J8 G: V
收藏 评论0 发布时间:2021-12-8 21:00

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版