基于STM32F4的DAC实验

备注:此实验是根据正点原子视频所写。初学STM32,完全是用于自我记录,若有问题,麻烦指正。

实验目的:利用按键控制STM32F429内部DAC1来输出电压,通过ADC1的通道5来采集DAC的输出电压,在LCD模块上显示ADC获得的电压值和DAC的设定输出电压值。  

1.开启DAC和IO口时钟,设置输入引脚为模拟输入。

此时又需要使用回调函数HAL_DAC_MspInit();。MSP 是用于执行系统级初始化(时钟、GPIO、DMA、中断)的用户回调函数。

__HAL_RCC_DAC_CLK_ENABLE();//开启DAC时钟

__HAL_RCC_GPIOA_CLK_ENABLE();//开启IO口时钟
在进行GPIO初始化时需注意:GPIO_Initure.Mode = GPIO_MODE_ANALOG;//模拟。

GPIO_Initure.Pull = GPIO_NOPULL; //模拟量无需上下拉。

2.初始化DAC和通道参数

进入定义可知DAC的初始化:

HAL_StatusTypeDef HAL_DAC_Init(DAC_HandleTypeDef* hdac)

可知,需要先定义结构体。

DAC_HandleTypeDef hdac_handler; 。先定义,再使用。由于后续还要实用到,所以需要放在最外面。

然后进行通道配置。其配置函数为:HAL_DAC_ConfigChannel。

HAL_StatusTypeDef HAL_DAC_ConfigChannel(DAC_H
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值