ZHCSNQ9 September 2023 DAC43901-Q1 , DAC43902-Q1
PRODUCTION DATA
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-Q1 或 DAC43901-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