历史上的今天
返回首页

历史上的今天

今天是:2025年02月12日(星期三)

正在发生

2019年02月12日 | STM32-DAC简单使用方法

2019-02-12 来源:eefocus

前言:

最近在调试STM32L152芯片的DAC功能,本文总结下STM32L152芯片 DAC简单使用方法。


硬件平台:STM32L152


软件平台:keil v5+cubeMX


函数库:HAL库


DAC使用方法

实现:


1.DAC的初始化。


DAC_HandleTypeDef hdac;

 


void DAC_Init(void)

{

  DAC_ChannelConfTypeDef sConfig;

    /**DAC Initialization 

    */

  hdac.Instance = DAC;

  if (HAL_DAC_Init(&hdac) != HAL_OK)

  {

    _Error_Handler(__FILE__, __LINE__);

  }

 

    /**DAC channel OUT1 config 

    */

  sConfig.DAC_Trigger = DAC_TRIGGER_NONE;

  sConfig.DAC_OutputBuffer = DAC_OUTPUTBUFFER_ENABLE;//输出缓存使能

  if (HAL_DAC_ConfigChannel(&hdac, &sConfig, DAC_CHANNEL_1) != HAL_OK)

  {

    _Error_Handler(__FILE__, __LINE__);

  }

}

其中,DAC的时钟开启在void HAL_DAC_MspInit(DAC_HandleTypeDef* hdac)函数中。


void HAL_DAC_MspInit(DAC_HandleTypeDef* hdac)

{

 

 

  GPIO_InitTypeDef GPIO_InitStruct;

  if(hdac->Instance==DAC)

  {

  /* USER CODE BEGIN DAC_MspInit 0 */

  /* USER CODE END DAC_MspInit 0 */

    /* Peripheral clock enable */

    __HAL_RCC_DAC_CLK_ENABLE();

  

    /**DAC GPIO Configuration    

    PA4     ------> DAC_OUT1 

    */

    GPIO_InitStruct.Pin = GPIO_PIN_4;

    GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;

    GPIO_InitStruct.Pull = GPIO_NOPULL;

    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);//对应的DAC管脚配置。

 

  /* USER CODE BEGIN DAC_MspInit 1 */

  /* USER CODE END DAC_MspInit 1 */

  }

}

 

void DAC_Trigger(uint16_t Value)

{

    HAL_DAC_SetValue(&hdac,DAC_CHANNEL_1 ,DAC_ALIGN_12B_R ,Value); //DAC的输出电压=Value*3.3/4096;

    HAL_DAC_Start(&hdac, DAC_CHANNEL_1); //开启DAC

    delay_ms(1000);

    HAL_DAC_Stop(&hdac, DAC_CHANNEL_1);//关闭DAC

}

总结:上述简单介绍了DAC输出电压实现步骤,步骤为DAC初始化、开启DAC时钟、配置DAC管脚、调用DAC函数输出对应的电压值。


推荐阅读

史海拾趣

Electech Electronics公司的发展小趣事

随着科技的不断发展,Electech Electronics意识到仅仅依赖电子元器件的代理和销售已经无法满足市场的需求。于是,公司开始投入研发,专注于电子产品的设计和制造。经过数年的努力,Electech Electronics成功开发出一系列具有竞争力的电子产品,如智能控制模块、高精度传感器等。这些产品的推出不仅拓宽了公司的产品线,也提升了公司的市场竞争力。

Compensated Devices Inc公司的发展小趣事

在电子行业竞争激烈的年代,CDI始终坚持品质至上的原则。公司建立了严格的质量控制体系,从原材料采购到生产流程,再到成品检验,每一个环节都严格把关。正是这种对品质的执着追求,使得CDI的产品在客户中赢得了良好的口碑。随着口碑的积累,CDI逐渐发展成为电子元件领域的知名品牌。

Densei-Lambda (TDK)公司的发展小趣事

随着全球环保意识的日益增强,电子行业对环保的要求也越来越高。CDI积极响应这一趋势,将环保理念贯穿于产品研发、生产和销售的全过程。公司推出了一系列绿色环保型电子元件,并采用了环保材料和生产工艺。这一举措不仅赢得了客户的认可,还为公司的可持续发展奠定了坚实基础。

Cristek Interconnects Inc公司的发展小趣事

随着环保意识的日益增强,Cristek Interconnects Inc公司积极响应国家号召,将环保理念融入到企业的生产经营中。公司采用环保材料和生产工艺,减少了对环境的污染。同时,公司还加大了对环保技术的研发力度,推出了一系列环保型电子产品连接器,为行业的可持续发展做出了贡献。

这五个故事只是Cristek Interconnects Inc公司在电子行业发展中的一部分缩影,它们展现了公司在技术创新、质量管理、市场拓展、供应链优化和环保理念践行等方面的努力和成就。这些故事共同构成了Cristek Interconnects Inc公司发展的精彩篇章,也为公司的未来发展奠定了坚实的基础。

Dongguan City Niuhang Electronics Co.LTD公司的发展小趣事

Dongguan City Niuhang Electronics Co.LTD成立于2012年,当时的中国电子行业正处于快速发展期。创始人李小芹凭借对半导体技术的深刻理解和市场需求的敏锐洞察,决定专注于二极管、桥式整流器等产品的研发与封装。公司成立初期,面临着资金短缺、技术储备不足等挑战,但李小芹凭借坚定的信念和不懈的努力,带领团队攻克了一个又一个技术难关,逐步在市场上树立了良好的口碑。

AMS公司的发展小趣事

在技术创新的基础上,Dongguan City Niuhang Electronics Co.LTD开始积极拓展市场。公司先后在安徽省池州市、江苏省扬州市和宿迁市等地设立生产基地,形成了覆盖全国的销售网络。同时,公司还加强品牌建设,通过参加行业展会、举办技术研讨会等方式,提升品牌知名度和影响力。随着市场的不断扩大,公司的销售业绩也实现了快速增长。

问答坊 | AI 解惑

电子基础知识--电阻篇

  一、电阻的型号命名方法:  国产电阻器的型号由四部分组成(不适用敏感电阻)  第一部分:主称,用字母表示,表示产品的名字。如R表示电阻,W表示电位器。  第二部分:材料,用字母表示,表示电阻体用什么材料组成,T-碳膜、H-合成碳膜、 ...…

查看全部问答>

电子研发人员改行做销售,大家觉得怎么样呢??

电子研发人员改行做销售,大家觉得怎么样??…

查看全部问答>

FPGA控制iic芯片的问题

我想用FPGA来控制PCF8563 可是我选择的是EP1C3T144 想用它驱动PCF8563的sda和scl 他的I/O驱动只有3.3V 可以用吗 怎么用?…

查看全部问答>

关于现有廉价工程电源的分析

转自千家网 BG7JWE 相信大家对现在的几块钱和十来二十块的电源不会陌生吧?同样,我也拆了不少。 现在的电源大致分两大类:电子开关电源和变压器电源。 开关电源,文字上的解释是:(转载自百度) 开关电源是利用现代电力电子技术,控制开关管开 ...…

查看全部问答>

2000下双网卡热备份

大家好?WIN2000下,双网卡热备份,也就是一个网卡坏了,另一个冗余网卡热切换,实现方案是什么?代码是什么?谢谢…

查看全部问答>

教程分享

教程分享 了…

查看全部问答>

SMA接口的螺纹号

为了找SMA螺纹的信号费了些力,因为想将加长的SMA口直接拧到金属盒子上,在卖钻头攻丝的店用各种螺纹样板比较都没找到。   最后还是在wikipedia.org找到了,百度百科太垃圾了。http://en.wikipedia.org/wiki/SMA_connectorSMA由于设计与1960年 ...…

查看全部问答>

学习板教程 第三课——8*8点阵

8*8点阵的代码哦,这是双色的8*8点阵,依次写了两部分,先学会亮一个灯,再学习让其显示流水的效果,欢迎下载,谢谢!…

查看全部问答>

STM32随堂笔记(一)-------通用I/O口

STM32是基于ARM Cortex-M3内核的芯片,专为要求高性能、低成本、低功耗的嵌入式应用设计的芯片。1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI,18MHz的I/O翻转速度。 我学的是STM32F103。它的内核为:ARM 32位的Cortex -M3 CPU,它的工作频率 ...…

查看全部问答>