|
一、RCC时钟配置& j1 Q- w' y! Z1 ~! M) i% U" t ~9 Z. U8 O3 }; _' j
该函数位于在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开来。 ; v3 o$ i) w2 _8 P, i 二、引脚配置7 m; [! W! m$ V/ ?% w5 {: |& E# L 1 u- X; h3 K ^2 G# W5 {
该函数位于在dac.c文件下面;6 K( Q; h/ ]: }2 Q; f 对DA通道1所使用的引脚进行配置。 注意: 这里的DAC_OUT1引脚是固定对应的PA4的,一旦启动DA1功能,这个引脚就用于DAC功能了。2 a9 g' Q& v( K# T* b Y2 I0 S5 U# O% { 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
该函数位于在dac.c文件下面;5 P O! F6 E/ f/ W4 T' \" I / }! ^1 h4 r$ ?8 e 对DA进行配置。 & T' F! C" i# o0 u0 f 配置的每一条语句都有注释,请看源代码.4 a7 ]+ H* S5 F5 |) u6 P: {7 I + f% ~2 [3 o( `9 b b* R 四、输出电压 + a3 m% w. ^. J/ @5 e% y
该函数位于在dac.c文件下面;# n3 r; S- U" I2 o. ` 2 Q* n+ X# p: z) y; J* z 调用这个接口就可以在PA4引脚上输出相应的电压值(注意这个接口适用于参考电压为3.3V的情况下,若参考电压改了,换算的公式也要对应改,看源代码的人都应该知道怎么修改)。 # d6 \0 \" c2 n- o8 a 这里是使用软件出发转换,后期会使用其他方法触发。 6 |& b8 T8 q1 O' c% O: E/ m 五、主函数应用 3 S9 G3 Z8 F. v1 o2 J. Q
- 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 六、今天的重点提示 A.DA1和DA2的配置基本一样;- _' ^: a" Z& k* J& N, ^. h8 k$ c B.为了避免寄生的干扰和额外的功耗,引脚PA4或者PA5在之前应当设置成模拟输入(AIN),因此在引脚配置的地方配置为:GPIO_Mode_AIN。 ———————————————— 版权声明:马少爷 如有侵权请联系删除5 @: |7 C( H- h5 g a& \ |
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
Keil-MDK 在线调试设置断点的高级用法
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
基于stm32平台上的IC-MU磁绝对值编码器SPI通讯和码盘数据处理
使用STM32 MCU和MPU连接PDM数字麦克风
分享STM32资料-采用 STM32U031R8 MCU 的 STM32 Nucleo-64 开发板,官方资料,数据手册等资料
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
DAC,COMP,HRTIM Fault 功能的使用
微信公众号
手机版