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机械、封装和可订购信息

封装选项

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

PWM 淡入淡出模式

DAC43901-Q1 支持预配置为 PWM(脉宽调制)淡入淡出的状态机,可用于实现平滑调光和启动电机。淡入淡出以对数方式进行。DAC 通道 0 用作比较器,而 TRIG-IN 引脚用作淡入淡出信号的触发输入。在独立模式下,PWM 输出在数字引脚上提供。当 VREF/MODE 引脚被拉高时,器件进入独立模式。此模式下禁用编程接口。数字编程接口(I2C 和 SPI)引脚是开漏输出,必须上拉才能用作 PWMx 输出。在独立模式下,器件使用 NVM 中的配置运行。将 VREF/MODE 引脚拉低可使器件进入编程模式。当 PWM 输出模式启用时,所有四个编程接口引脚都将用作 PWMx 输出,即使不使用也是如此。无法进行部分选择。淡入淡出 PWM 输出在 PWM0 (SDA/SCLK) 和 PWM1 (A0/SDI) 上提供。表 7-9 展示了数字引脚上的 PWM 输出映射。PWM 占空比分辨率为 7 位。PWM0 在触发输入的上升沿从预定义的最小占空比转换到最大占空比,并在触发输入的下降沿从最大占空比转换到最小占空比。PWM0 的淡入淡出配置使用 SRAM 或寄存器地址进行编程,如表 7-10 所示。

表 7-3 淡入淡出引脚映射
淡入淡出接口 多路复用编程引脚 引脚编号
PWM0 SDA/SCLK 8
PWM1 A0/SDI 7
TRIG-IN TRIG-IN 1
GUID-20210506-CA0I-3MLZ-4NSR-LWLZRDVN1NG2-low.svg图 7-4 PWM 淡入淡出
GUID-20210506-CA0I-BXTL-WGBH-XBGFF3LWGSK9-low.svg图 7-5 淡入淡出高电平时序图

默认情况下,DAC43901-Q1 配置为 PWM 淡入淡出并使用默认设置,如表 7-10 所示。要更改 SRAM 的设置,请将 SRAM 地址写入 SRAM-ADDR 寄存器,然后将数据写入 SRAM-DATA 寄存器。寄存器位置可以用单个 I2C 或 SPI 序列直接写入。在淡入淡出模式或动画模式下,基本设置为淡入或淡出 SLEW_RATE,如图 7-6 所示。SLEW_RATE 定义了应用的时序分辨率。当 SLEW_RATE 与淡入或淡出中的步进数相乘时,会获得淡入或淡出时间。可以使用方程式 4 来计算 SLEW_RATE:在对数淡入或淡出中,步进数是非线性的,并且还取决于起始和结束占空比设置。总淡入或淡出时间通过方程式 5表 7-5 来计算。淡入可以在延迟之后开始,该延迟的计算方式为方程式 7。CH0-DELAY 定义了 PWM0 的淡入延迟,而 COM-DELAY 定义了 PWM1 的淡入延迟。即使通过为 FADE-IN SLEW_RATE 写入 0 来禁用淡入,也会应用该延迟。这种情况下将考虑预定义的延迟设置 256。淡出没有延迟。

GUID-20210620-CA0I-SMJC-MBKK-DRRC1SBF5VRK-low.svg图 7-6 淡入淡出详细时序图
方程式 4. t S L E W ( μ s ) = 2.4 × S L E W _ R A T E + 5.6

其中:

  • tSLEW_RATE 是淡入或淡出单位时间,以毫米/步进为单位。
  • SLEW_RATE 为 FADE-IN SLEW-RATE 或 FADE-OUT SLEW-RATE,如表 7-10 所指定。

计算淡入和淡出步进所需的伪代码如下所示:

min_duty = <user input>
max_duty = <use input>
if(min_duty == 0)
  min_duty = 1
#IF FADE-IN
current_duty = min_duty << 5
next_duty = integer(current_duty + (current_duty >> 5))
#ELIF FADE-OUT
current_duty = max_duty << 5
next_duty = integer(current_duty - (current_duty >> 5))
#ENDIF
current_duty = next_duty
output_duty = integer(next_duty >> 5)
#IF FADE-IN
if(output_duty > max_duty)
  output = max_duty
else
  output = output_duty
#ELIF FADE-OUT
if(output_duty < min_duty)
  output = min_duty
else
  output = output_duty
#ENDIF
方程式 5. t F A D E = t S L E W _ R A T E × n = P W M S T A) R T P W M E N D R E P E T A T I O N ( n

其中:

  • tFADE 为总淡入或淡出时间,如图 7-6 所示。
  • tSLEW_RATE 是淡入或淡出时间,以秒/步进为单位。
  • SLEW_RATE 为 FADE-IN SLRE-RATE 或 FADE-OUT SLEW-RATE,如表 7-10 所指定。
  • n 是 PWM 占空比对应的代码,如表 7-5 所指定。
  • 对于淡入,PWMSTART 为 PWM-MIN 值,而对于淡出,则为 PWM-MAX 值,如表 7-10 所指定。
  • 对于淡入,PWMEND 为 PWM-MAX 值,而对于淡出,则为 PWM-MIN 值,如表 7-10 所指定。
  • REPETATION(n) 是为每个 PWM 代码指定的 REPETITION(CODE) 值,如表 7-5 所指定。

表 7-11 展示了为器件配置所做的寄存器设置列表。

表 7-4 淡入淡出配置
寄存器字段名称 位置 地址 [位] 默认值 说明
PWM-MAX SRAM、NVM 0x21 [6:0] 0xF7 最大 PWM 占空比
PWM-MIN SRAM、NVM 0x20 [6:0] 0x00 最小 PWM 占空比
FADE-IN SLEW-RATE SRAM、NVM 0x23 [15:0] 0x0000 请参阅方程式 4方程式 5
FADE-OUT SLEW-RATE SRAM、NVM 0x26 [15:0] 0x0000 请参阅方程式 4方程式 5
CH0-DELAY SRAM、NVM 0x24 [15:0] 0x0000 PWM0 的延迟。请参阅方程式 7
COM-DELAY SRAM、NVM 0x25 [15:0] 0x0000 PWM1 的延迟。请参阅方程式 7
PWM-FREQ SRAM、NVM 0x22 [11:7] 0x00 频率选择,如表 7-7 所示
表 7-5 淡入步进
代码 REPETATION (CODE) 代码 REPETATION (CODE) 代码 REPETATION (CODE) 代码 REPETATION (CODE) 代码 REPETATION (CODE)
1 32 17 2 33 1 54 1 88 1
2 16 18 2 34 1 55 1 90 1
3 11 19 2 35 1 57 1 93 1
4 8 20 1 36 1 59 1 96 1
5 7 21 2 37 1 61 1 99 1
6 5 22 1 38 1 62 1 102 1
7 5 23 2 39 1 64 1 105 1
8 4 24 1 41 1 66 1 109 1
9 3 25 1 42 1 68 1 112 1
10 4 26 2 43 1 71 1 116 1
11 3 27 1 45 1 73 1 119 1
12 2 28 1 46 1 75 1 123 1
13 3 29 1 47Ω 1 77 1 127 1
14 2 30 1 49 1 80 1
15 2 31 1 50 1 82 1
16 2 32 1 52 1 85 1
表 7-6 DAC43901-Q1 寄存器设置
寄存器名称 地址 默认值
COMMON-CONFIG 0x1F 0x13FF
DAC-0-VOUT-CMP-CONFIG 0x15 0x0407
STATE-MACHINE-CONFIG0 0x27 0x0003
表 7-7 PWM 频率配置
SRAM 位置 PWM-FREQ PWM 频率 (kHz) 代码 1 的占空比 (%) 代码 126 的占空比 (%)
PWM-FREQ
(0x22 [11:7])
0 无效 不适用 不适用
1 48.828 4.88 95.12
2 24.414 2.44 97.56
3 16.276 1.63 98.37
4 12.207 1.22 98.44
5 8.138 0.81 98.44
6 6.104 0.78 98.44
7 3.052 0.78 98.44
8 2.035 0.78 98.44
9 1.526 0.78 98.44
10 1.221 0.78 98.44
11 1.017 0.78 98.44
12 0.872 0.78 98.44
13 0.763 0.78 98.44
14 0.678 0.78 98.44
15 0.610 0.78 98.44
16 0.555 0.78 98.44
17 0.509 0.78 98.44
18 0.470 0.78 98.44
19 0.436 0.78 98.44
20 0.407 0.78 98.44
21 0.381 0.78 98.44
22 0.359 0.78 98.44
23 0.339 0.78 98.44
24 0.321 0.78 98.44
25 0.305 0.78 98.44
26 0.291 0.78 98.44
27 0.277 0.78 98.44
28 0.265 0.78 98.44
29 0.254 0.78 98.44
30 0.244 0.78 98.44
31 0.218 0.78 98.44

PWM 的占空比与 7 位代码(0d 至 126d)成正比。如表 7-8 所示,代码 127d 对应于 100% 占空比。跳过占空比 99.22% (127d/128d) 可以使用 7 位代码实现 100% 占空比。PWM 占空比设置由状态机完成,不会向用户公开。

表 7-8 PWM 占空比设置
代码 占空比 说明
0 0% 始终为 0
1 0.78% 最小线性占空比
x (x/128)% x 是 2d 和 125d 之间的代码(包含二者)
126 98.44% 最大线性占空比
127 100% 总是 1。跳过占空比 99.22% (127d/128d)。