ZHCSNQ9 September   2023 DAC43901-Q1 , DAC43902-Q1

PRODUCTION DATA  

  1.   1
  2. 特性
  3. 应用
  4. 说明
  5. 修订历史记录
  6. 引脚配置和功能
  7. 规格
    1. 6.1  绝对最大额定值
    2. 6.2  ESD 等级
    3. 6.3  建议运行条件
    4. 6.4  热性能信息
    5. 6.5  电气特性:比较器模式
    6. 6.6  电气特性:通用
    7. 6.7  时序要求:I2C 标准模式
    8. 6.8  时序要求:I2C 快速模式
    9. 6.9  时序要求:I2C 超快速模式
    10. 6.10 时序要求:SPI 写入操作
    11. 6.11 时序要求:SPI 读取和菊花链操作 (FSDO = 0)
    12. 6.12 时序要求:SPI 读取和菊花链操作 (FSDO = 1)
    13. 6.13 时序要求:PWM 输出
    14. 6.14 时序图
    15. 6.15 典型特性
  8. 详细说明
    1. 7.1 概述
    2. 7.2 功能方框图
    3. 7.3 特性说明
      1. 7.3.1 智能数模转换器 (DAC) 架构
      2. 7.3.2 阈值 DAC
        1. 7.3.2.1 电压基准和 DAC 传递函数
        2. 7.3.2.2 电源作为基准
        3. 7.3.2.3 内部基准
        4. 7.3.2.4 外部基准
      3. 7.3.3 编程接口
      4. 7.3.4 非易失性存储器 (NVM)
        1. 7.3.4.1 NVM 循环冗余校验 (CRC)
          1. 7.3.4.1.1 NVM-CRC-FAIL-USER 位
          2. 7.3.4.1.2 NVM-CRC-FAIL-INT 位
      5. 7.3.5 上电复位 (POR)
      6. 7.3.6 外部复位
      7. 7.3.7 寄存器映射锁定
    4. 7.4 器件功能模式
      1. 7.4.1 比较器模式
      2. 7.4.2 PWM 淡入淡出模式
      3. 7.4.3 顺序转向指示灯动画模式
    5. 7.5 编程
      1. 7.5.1 SPI 编程模式
      2. 7.5.2 I2C 编程模式
        1. 7.5.2.1 F/S 模式协议
        2. 7.5.2.2 I2C 更新序列
          1. 7.5.2.2.1 地址字节
          2. 7.5.2.2.2 命令字节
        3. 7.5.2.3 I2C 读取序列
    6. 7.6 寄存器映射
      1. 7.6.1  NOP 寄存器(地址 = 00h)[复位 = 0000h]
      2. 7.6.2  DAC-x-VOUT-CMP-CONFIG 寄存器(地址 = 15h、03h)
      3. 7.6.3  COMMON-CONFIG 寄存器(地址 = 1Fh)
      4. 7.6.4  COMMON-TRIGGER 寄存器(地址 = 20h)[复位 = 0000h]
      5. 7.6.5  COMMON-PWM-TRIG 寄存器(地址 = 21h)[复位 = 0000h]
      6. 7.6.6  GENERAL-STATUS 寄存器(地址 = 22h)[复位 = 00h、DEVICE-ID、VERSION-ID]
      7. 7.6.7  INTERFACE-CONFIG 寄存器(地址 = 26h)[复位 = 0000h]
      8. 7.6.8  STATE-MACHINE-CONFIG0 寄存器(地址 = 27h)[复位 = 0003h]
      9. 7.6.9  SRAM-CONFIG 寄存器(地址 = 2Bh)[复位 = 0000h]
      10. 7.6.10 SRAM-DATA 寄存器(地址 = 2Ch)[复位 = 0000h]
  9. 应用和实施
    1. 8.1 应用信息
    2. 8.2 典型应用
      1. 8.2.1 顺序转向指示灯
        1. 8.2.1.1 设计要求
        2. 8.2.1.2 详细设计过程
        3. 8.2.1.3 应用曲线
      2. 8.2.2 对数淡入淡出
        1. 8.2.2.1 设计要求
        2. 8.2.2.2 详细设计过程
    3. 8.3 电源相关建议
    4. 8.4 布局
      1. 8.4.1 布局指南
      2. 8.4.2 布局示例
  10. 器件和文档支持
    1. 9.1 接收文档更新通知
    2. 9.2 支持资源
    3. 9.3 商标
    4. 9.4 静电放电警告
    5. 9.5 术语表
  11. 10机械、封装和可订购信息

封装选项

机械数据 (封装 | 引脚)
散热焊盘机械数据 (封装 | 引脚)
订购信息

详细设计过程

TL431LI-Q1 可调节精密并联稳压器可用于通过 12V 系统电压为 DAC43902-Q1 供电。TL431LI-Q1 具有 2.5V 精密基准。如简化图中所示,这里使用两个 10kΩ 电阻器将输出电压调节至 5V,从而为 DAC43902-Q1 供电。

在某些尾灯设计中,LED 驱动器由 PWM 信号供电来控制 LED 的闪烁。如果是这种情况,DAC43902-Q1 的触发输入可以连接到 VDD。顺序转弯动画会在施加 VDD 时自动开始。

DAC43902-Q1 中的状态机默认启用;因此,当 VREF/MODE 引脚被拉高时,PWM 输出将使用默认设置。要更改这些默认参数,请将 VREF/MODE 引脚拉至低电平以进入编程模式,并向 STATE-MACHINE-CONFIG0 寄存器的 SM-START 和 SM-EN 位写入 0 以禁用状态机。状态机禁用后,对 SRAM 参数和寄存器设置进行编程,以配置 DAC43902-Q1

在 TRIG-IN 的上升沿,DAC43902-Q1 PWM 输出淡入至 PWM-MAX 参数中定义的 7 位 PWM 占空比,该参数位于 SRAM 位置 0x21 的位 [6:0]。在 TRIG-IN 的下降边沿上,PWM 输出跳至 PWM-MIN 参数中定义的 7 位 PWM 占空比,该参数位于 SRAM 位置 0x20 的位 [6:0]。

5 位 PWM 频率在 PWM-FREQ 参数中设置,该参数位于 SRAM 位置 0x22 的位 [11:7]。表 7-7 中介绍了可用的 PWM 频率。示例原理图中使用的 TPS92633-Q1 LED 驱动器建议使用 200Hz PWM 频率和 1% 至 100% 占空比进行亮度控制。在这种情况下,可以在 PWM-FREQ 中将最大频率设置为 31,从而获得 218Hz 的 PWM 输出频率。确保在将参数加载到 SRAM 位置时将此值左移 7 位。

四个 PWM 输出通道使用 FADE-IN SLEW-RATE 参数所定义的相同淡入速率,该参数位于 SRAM 位置 0x23 的位 [15:0]。总淡入时间可以使用方程式 4方程式 5 来计算。方程式 4 中使用了 SLEW-RATE 参数来获得 tSLEW_RATE,单位为 ms/step。例如,如果 FADE-IN SLEW-RATE 参数使用值 235,则得到的 tSLEW-RATE 为:0.569ms/step。

表 7-5 中给出的信息用于计算淡入模式下占空比步进总数。如果 PWM-MIN 设置为 0 且 PWM-MAX 设置为 0x7F,总共需要 176 个步进。方程式 5 计算得出总淡出时间 tFADE 为 100.2ms。

每个通道之间的延迟在 CH0-DELAY 和 DELAY 参数中进行配置,这两个参数分别位于 SRAM 位置 0x24 和 0x25 的位 [15:0]。CH0-DELAY 表示触发信号上升沿和通道 0 启动之间的延迟。COM-DELAY 表示通道 0 启动和通道 1 启动之间、通道 1 启动和通道 2 启动之间,以及通道 2 启动和通道 3 启动之间的延迟。延迟时间可以使用方程式 7 来计算。如果 COM-DELAY 参数中将延迟值设置为 176,则延迟为 100.2ms。

配置所有寄存器设置和 SRAM 参数后,通过向 STATE-MACHINE-CONFIG0 寄存器的 SM-START 和 SM-EN 位写入 1 来重新启动状态机。通过将 1 写入 COMMON-TRIGGER 寄存器的 NVM-PROG 位,将这些设置保存到 NVM 中。将 VREF/MODE 引脚拉高,以将器件置于独立模式并启用数字接口引脚上的 PWM 输出。

还需要将 SRAM 参数和寄存器设置应用于级联中的第二个 DAC43902-Q1DAC43901-Q1。将第一个 DAC43902-Q1 通道 1 上的 TRIG-OUT 应用于第二个器件 TRIG-IN 上的触发输入。

下面给出了开始使用顺序转向指示灯应用所需的伪代码:

//SYNTAX: WRITE <REGISTER NAME (REGISTER ADDRESS)>, <MSB DATA>, <LSB DATA>
//Pull VREF/MODE pin low to enter programming mode
//Disable the state machine
WRITE STATE-MACHINE-CONFIG0(0x27), 0x00, 0x00
//Power-up DAC channels 0 and 1, disable the internal reference
WRITE COMMON-CONFIG(0x1F), 0x03, 0xF9
//Enable comparator settings for channel 0, and set reference to VDD
WRITE DAC-0-VOUT-CMP-CONFIG(0x15), 0x04, 0x07
//Set the reference for channel 1 to VDD
WRITE DAC-1-VOUT-CMP-CONFIG(0x3), 0x04, 0x00
//Set the comparator threshold to mid-scale
WRITE SRAM-ADDR(0x2B), 0x00, 0x27
WRITE SRAM-DATA(0x2C), 0x80, 0x00
//Set max PWM duty cycle to 100%
WRITE SRAM-ADDR(0x2B), 0x00, 0x21
WRITE SRAM-DATA(0x2C), 0x00, 0x7F
//Set min PWM duty cycle to 0%
WRITE SRAM-ADDR(0x2B), 0x00, 0x20
WRITE SRAM-DATA(0x2C), 0x00, 0x00
//Set PWM frequency to 218Hz
WRITE SRAM-ADDR(0x2B), 0x00, 0x22
WRITE SRAM-DATA(0x2C), 0x0F, 0x80
//Set fade-in time to 100.2 ms
WRITE SRAM-ADDR(0x2B), 0x00, 0x23
WRITE SRAM-DATA(0x2C), 0x00, 0xEB
//Set the CH0 delay to 0
WRITE SRAM-ADDR(0x2B), 0x00, 0x24
WRITE SRAM-DATA(0x2C), 0x00, 0x00
//Set the COM delay to 100.2 ms
WRITE SRAM-ADDR(0x2B), 0x00, 0x25
WRITE SRAM-DATA(0x2C), 0x00, 0xB0
//Enable and start the state machine
WRITE STATE-MACHINE-CONFIG0(0x27), 0x00, 0x03
//Save all settings in NVM
WRITE COMMON-TRIGGER(0x20) 0x00, 0x02
//Pull the VREF/MODE pin high to enter standalone mode