ZHCABL3 February   2022 DAC43204 , DAC53004 , DAC53204 , DAC53204W , DAC63004 , DAC63204

 

  1.   设计目标
  2.   设计说明
  3.   设计注意事项
  4.   设计仿真
    1.     瞬态仿真结果
    2.     直流传输仿真结果
  5.   寄存器设置
  6.   伪代码示例
  7.   设计中采用的器件
  8.   设计参考资料

寄存器设置

电压输出配置的寄存器设置
寄存器地址寄存器名称设置说明

0x01

DAC-0-MARGIN-HIGH

0xFFC0

[15:4] 0xFFC:左对齐 10 位数据更新 MARGIN-HIGH 代码
[3:0] 0x0:不用考虑

0x02

DAC-0-MARGIN-LOW

0xCCC0

[15:4] 0xCCC:左对齐 10 位数据更新 MARGIN-LOW 代码
[3:0] 0x0:不用考虑

0x06

DAC-0-FUNC-CONFIG0x0001[15] 0b0:写入 0b1,将 DAC-0 清除设置设为中标度
[14] 0b0:写入 0b1,通过 LDAC 触发器更新 DAC-0
[13] 0b0:写入 0b1,使 DAC-0 通过广播命令更新
[12:11] 0b00:为函数发生器选择相位

[10:8] 0b000:选择函数发生器生成的波形

[7] 0b0:写入 0b1,启用对数转换
[6:4] 0b000:选择 1 LSB 的 代码步进
[3:0] 0b001:选择 4µs/步进的压摆率
0x1FCOMMON-CONFIG0x0FF9[15] 0b0:写入 0b1,将窗口比较器输出设置为锁存输出
[14] 0b0:写入 0b1,锁定器件。将 0b0101 写入 COMMON-TRIGGER 寄存器的 DEV-UNLOCK 字段,以进行解锁
[13] 0b0:写入 0b1,在地址 0x01 处设置故障转储读取使能
[12] 0b0:写入 0b1,启用内部基准
[11:10] 0b11:将 VOUT3 断电
[9] 0b1:将 IOUT3 断电
[8:7] 0b11:将 VOUT2 断电
[6] 0b1:将 IOUT2 断电
[5:4] 0b11:将 VOUT1 断电
[3] 0b1:将 IOUT1 断电
[2:1] 0b00:将 VOUT0 上电
[0] 0b1:将 IOUT0 断电
0x20COMMON-TRIGGER0x0002[15:12] 0b0000:写入 0b0101,解锁器件
[11:8] 0b0000:写入 0b1010,触发 POR 复位
[7] 0b0:如 DAC-X-FUNC-CONFIG 寄存器中相应 SYNC-CONFIG-X 位为 1,则写入 0b1,触发 LDAC 运行。
[6] 0b0:写入 0b1,基于 DAC-X-FUNC-CONFIG 寄存器中相应 CLR-SEL-X 位,将 DAC 寄存器和输出设置为零代码或中间代码
[5] 0b0:不用考虑
[4] 0b0:写入 0b1,触发故障转储序列
[3] 0b0:写入 0b1,触发 PROTECT 功能
[2] 0b0:写入 0b1,读取 NVM 的一行进行故障转储
[1] 0b1:写入 0b1,将适用寄存器设置存储到 NVM
[0] 0b0:写入 0b1,使用现有 NVM 设置重新加载适用寄存器
0x24GPIO-CONFIG0x0035[15] 0b0:写入 0b1,在 GPI 上启用干扰滤波器
[14] 0b0:不用考虑
[13] 0b0:写入 0b1,在 GPIO 引脚上启用输出模式
[12:9] 0b0000:映射到 GPIO 的 STATUS 功能设置作为输出

[8:5] 0b0001:确定受特定于通道的 GPI 功能影响的通道

[4:1] 0b1010:选择 GPI,触发裕量高/低
[0] 0b1:启用 GPIO 引脚的输入模式
电流输出配置的寄存器设置
寄存器地址寄存器名称设置说明

0x01

DAC-0-MARGIN-HIGH

0x8000

[15:4] 0x800:左对齐 8 位数据更新 MARGIN-HIGH 代码
[3:0] 0x0:不用考虑

0x02

DAC-0-MARGIN-LOW

0x0000

[15:4] 0x000:左对齐 8 位数据更新 MARGIN-LOW 代码
[3:0] 0x0:不用考虑

0x06

DAC-0-FUNC-CONFIG0x0001[15] 0b0:写入 0b1,将 DAC-0 清除设置设为中标度
[14] 0b0:写入 0b1,通过 LDAC 触发器更新 DAC-0
[13] 0b0:写入 0b1,使 DAC-0 通过广播命令更新
[12:11] 0b00:为函数发生器选择相位

[10:8] 0b000:选择函数发生器生成的波形

[7] 0b0:写入 0b1,启用对数转换
[6:4] 0b000:选择 1 LSB 的 代码步进
[3:0] 0b001:选择 4µs/步进的压摆率
0x1FCOMMON-CONFIG0x0FFE[15] 0b0:写入 0b1,将窗口比较器输出设置为锁存输出
[14] 0b0:写入 0b1,锁定器件。将 0b0101 写入 COMMON-TRIGGER 寄存器的 DEV-UNLOCK 字段,以进行解锁
[13] 0b0:写入 0b1,在地址 0x01 处设置故障转储读取使能
[12] 0b0:写入 0b1,启用内部基准
[11:10] 0b11:将 VOUT3 断电
[9] 0b1:将 IOUT3 断电
[8:7] 0b11:将 VOUT2 断电
[6] 0b1:将 IOUT2 断电
[5:4] 0b11:将 VOUT1 断电
[3] 0b1:将 IOUT1 断电
[2:1] 0b11:将 VOUT0 断电
[0] 0b0:将 IOUT0 上电
0x20COMMON-TRIGGER0x0002[15:12] 0b0000:写入 0b0101,解锁器件
[11:8] 0b0000:写入 0b1010,触发 POR 复位
[7] 0b0:如 DAC-X-FUNC-CONFIG 寄存器中相应 SYNC-CONFIG-X 位为 1,则写入 0b1,触发 LDAC 运行。
[6] 0b0:写入 0b1,基于 DAC-X-FUNC-CONFIG 寄存器中相应 CLR-SEL-X 位,将 DAC 寄存器和输出设置为零代码或中间代码
[5] 0b0:不用考虑
[4] 0b0:写入 0b1,触发故障转储序列
[3] 0b0:写入 0b1,触发 PROTECT 功能
[2] 0b0:写入 0b1,读取 NVM 的一行进行故障转储
[1] 0b1:写入 0b1,将适用寄存器设置存储到 NVM
[0] 0b0:写入 0b1,使用现有 NVM 设置重新加载适用寄存器
0x24GPIO-CONFIG0x0035[15] 0b0:写入 0b1,在 GPI 上启用干扰滤波器
[14] 0b0:不用考虑
[13] 0b0:写入 0b1,在 GPIO 引脚上启用输出模式
[12:9] 0b0000:映射到 GPIO 的 STATUS 功能设置作为输出

[8:5] 0b0001:确定受特定于通道的 GPI 功能影响的通道

[4:1] 0b1010:选择 GPI,触发裕量高/低
[0] 0b1:启用 GPIO 引脚的输入模式