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

基于STM32的DAC输出电压的经验分享

[复制链接]
攻城狮Melo 发布时间:2023-3-30 15:48
一、RCC时钟配置& j1 Q- w' y! Z1 ~! M) i% U" t
  ~9 Z. U8 O3 }; _' j
122f62137397434eb0117d7bedb74185.png
- k8 o, k2 I7 |
' E; v# D5 v9 x  D& A该函数位于在bsp.c文件下面;1 R4 C' G6 _3 l. m9 `
使能RCC时钟:RCC_APB1Periph_DAC% o% d, _# u5 c9 c2 K8 m
这里DA的时钟不像AD有AD1、AD2等,DA是共用时钟,所以调用接函数的时候一定要区分DA1和DA2开来。
3 j9 p* N. B$ @" X# g; d; v3 o$ i) w2 _8 P, i
二、引脚配置7 m; [! W! m$ V/ ?% w5 {: |& E# L
1 u- X; h3 K  ^2 G# W5 {
1d88cddd78414328b6dda0e2eaa1f3de.png ) W2 T) g; N6 g4 h# @& H

2 U) J4 m0 m0 {3 F* s' c4 F该函数位于在dac.c文件下面;6 K( Q; h/ ]: }2 Q; f

% t. S" x' H  L1 B7 B$ R对DA通道1所使用的引脚进行配置。
# \: U$ w, ^8 ~" S; B% d3 }: h
" T* a6 T! e) y& a) q& m注意:
; x0 Q2 {& N- h1 x& n# J这里的DAC_OUT1引脚是固定对应的PA4的,一旦启动DA1功能,这个引脚就用于DAC功能了。2 a9 g' Q& v( K# T* b  Y2 I0 S5 U# O% {

) t2 O; B( z' J; n8 Q) u
3 W$ U% X. H  j# Z& i
三、DAC配置- N/ u0 d+ L! l6 u3 N3 O7 Q% N
' g3 W, @! o' a$ `" y, _* T8 Q
ded251111f7c41399db264df106226a4.png & C( ]; o0 }; _" X  }# P! w' I

! T: d' x  Q! R0 i) K
该函数位于在dac.c文件下面;5 P  O! F6 E/ f/ W4 T' \" I
/ }! ^1 h4 r$ ?8 e
对DA进行配置。
/ w& R! M( l# O- b3 T& T' F! C" i# o0 u0 f
配置的每一条语句都有注释,请看源代码.4 a7 ]+ H* S5 F5 |) u6 P: {7 I
+ f% ~2 [3 o( `9 b  b* R

) m6 O) z7 ]' m; }: Q: k' i四、输出电压
' k% I4 p; F" G* Y+ a3 m% w. ^. J/ @5 e% y
e518c936861d417e9fd3e1b8b4e5116c.png
% y# `2 J) f3 r
* M" ?3 J1 a! _* q
该函数位于在dac.c文件下面;# n3 r; S- U" I2 o. `
2 Q* n+ X# p: z) y; J* z
调用这个接口就可以在PA4引脚上输出相应的电压值(注意这个接口适用于参考电压为3.3V的情况下,若参考电压改了,换算的公式也要对应改,看源代码的人都应该知道怎么修改)。
# u5 F+ D8 i  Q5 A. V( n8 \# d6 \0 \" c2 n- o8 a
这里是使用软件出发转换,后期会使用其他方法触发。
4 W& A6 Q5 |# n- {
# m) _3 d6 x9 Z! ~8 d
6 |& b8 T8 q1 O' c% O: E/ m
五、主函数应用
, f1 P; O$ {* x8 Z3 S9 G3 Z8 F. v1 o2 J. Q
5f6aa4409c1442a5b6827ac7cc296cdf.png   }4 m" S7 W0 V9 v8 A5 |; h& s1 w
- K+ B( L3 z; a" s3 i0 Z+ G+ e+ l
该函数位于在main.c文件下面;5 {& ^$ g$ s0 t8 a. J
2 P6 R! g' U0 X3 b
主要就是在上电配置DA,并让其在PA4引脚上输出1.5V的电压。* K  C1 K" G; L  N5 _- M1 Z
- f) r2 `$ ]  h! ^+ `- i
可以看到现象:间隔500ms,LED变化,串口打印出字符串。" F* `- [; z# {
/ h4 r: K" T9 m/ j, F
. [- j8 q6 R6 p( j  ^  z
六、今天的重点提示
- O2 g" k" n6 d% e; C2 T  N6 QA.DA1和DA2的配置基本一样;- _' ^: a" Z& k* J& N, ^. h8 k$ c

* O3 u  {6 I" ?
B.为了避免寄生的干扰和额外的功耗,引脚PA4或者PA5在之前应当设置成模拟输入(AIN),因此在引脚配置的地方配置为:GPIO_Mode_AIN。
. B: ?/ _8 T$ r7 n0 B$ k8 {————————————————
- t: E" h% g, ?' J版权声明:马少爷
( `4 d2 R/ V, ?3 I) d0 J# L- n4 W1 W如有侵权请联系删除5 @: |7 C( H- h5 g  a& \

) P& i; P  y3 p- y) W' @
2 k2 M( j& K* k7 G9 M
赞 收藏 评论0 发布时间:2023-3-30 15:48

举报

0个回答

所属标签

相似技术帖

官网相关资源

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