一、DAC(Digital-to-Analog Converter,数模转换器)的核心作用:

把数字量(0/1组成的数)转换成连续变化的模拟电压或电流输出

    二、核心特性

    • 分辨率与通道:通常是12位数字输入,可配置为8位模式。大多数STM32芯片提供2个独立的DAC转换通道。

    • 数据格式:12位模式下,数据支持左对齐右对齐,以适应不同位宽的数据处理。

    • 触发源:转换可由软件外部中断(EXTI)或定时器(如TIM2、TIM4等)事件触发。

    • DMA支持:每个通道都支持DMA(直接内存访问),可自动将数据从内存传输到DAC,无需CPU干预,适合生成复杂波形。

    • 内置波形发生器:部分型号支持硬件生成噪声波形三角波形

    • 输出缓冲:内置输出缓冲器,可降低输出阻抗,直接驱动外部负载。

    三、DAC的工作流程大致如下:

    1. 数据写入:将待转换的数字值写入数据保持寄存器(DHRx)

    2. 触发转换:等待一个触发事件(软件或硬件)。

    3. 数据锁存:触发事件到来时,DHRx中的数据被传送到数据输出寄存器(DORx)

    4. 数模转换:DAC核心将DORx中的数字值转换为对应的模拟电压,通过DAC_OUTx引脚输出。

    例如输入一个12位数字:

    • 0x000 → 输出 0V
    • 0xFFF(4095)→ 输出参考电压 Vref(如3.3V)

    中间按比例输出:

    • D:数字值
    • N:位数(常见12位)
    • Vref:参考电压

    四、DAC常见应用

    1. 输出直流电压

    • 可调电源
    • LED亮度控制(配合运放)

    2. 波形发生器

    • 正弦波
    • 锯齿波
    • 方波(软件更简单)

    3. 音频输出

    • DAC + DMA + 定时器

    4. 控制模拟器件

    • 电机控制
    • 模拟传感器模拟

    Logo

    智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

    更多推荐