AN-1383: ADP1046A EEPROM 编程
简介
ADP1046A集成寄存器映射和EEPROM,并根据用户的系统首选项,针对特定电源拓扑和应用进行了编程设置。本应用笔记重点讨论生产线环境中对ADP1046A进行编程的硬件和软件考虑因素。
硬件
图1显示了EEPROM编程环境下,ADP1046A的建议引脚设置。所有元件均采用表贴封装。此外,建议采用陶瓷电容。
建议引脚设置
表1列出了图1所示元件的设置。
元件 | 价值 | 单位 | 注释 | |||
VDD引脚 | 3.3 | V | ||||
GND1, 2 | 电路板接地层 | |||||
NC | 无连接引脚;此引脚悬空 | |||||
C1 | 0.5 | μF | 电容1 | |||
C2, C3 | 2.5 | μF | 电容2、电容3 | |||
R1, R2 | 5 | kΩ | 电阻1、电阻2 | |||
R3, R4 | 2.2 | kΩ | 电阻3、电阻4 | |||
R5 | 10 | kΩ | 电阻5,精度0.1% | |||
R6, R7 | 10 | Ω | 可选电阻 | |||
1整块电路板上应当有一个连续的接地层。
2为了避免噪声干扰,从编程器到器件的SDA、SCL和GND线路应尽量短。 |
其它布局布线建议
如果ADP1046A焊接在电路板上,则表1中列出的元件应靠近引脚,如图4所示。如果使用了座子,则将元件放置在电路板底部靠近引脚处,如图2所示。
软件编程
有两种方式可将寄存器设置编程至器件的EEPROM中:标准方式或替换方式。
标准EEPROM编程
如需采用标准方式将寄存器设置编程至EEPROM,请遵循下列步骤:
- 从ADP1046A图形用户界面(GUI)生成的“.46r”文件或十六进制文件中读取寄存器设置,然后通过I2C将下列寄存器值写入相应寄存器:
- 写入寄存器0x08至寄存器0x0F。
- 写入寄存器0x22。
- 写入寄存器0x26至寄存器0x2A。
- 写入寄存器0x2C至寄存器0x37。
- 写入寄存器0x3B。
- 写入寄存器0x3F至寄存器0x5D。
- 写入寄存器0x5F至寄存器0x7D。
- 回读写入的数值,然后将这些数值与.46r文件中的寄存器设置进行比较,确保写操作正确执行。
- 如需解锁EEPROM,需向寄存器0x88执行重复写操作。首先,将0xFF写入寄存器0x88,然后立即再次将0xFF写入寄存器0x88。
- 如需将寄存器中的内容上传至EEPROM,则向寄存器0x82执行发送命令。
- 等待50 ms,以便上传完成。
- 如需锁定EEPROM,请将0x01写入寄存器0x88。
替代EEPROM编程
如需采用替代方式将电路板设置编程至EEPROM,请遵循下列步骤并参考图5:
- 如需解锁EEPROM,需向寄存器0x88执行重复写操作。首先,将0xFF写入寄存器0x88,然后立即再次将0xFF写入寄存器0x88。
- 将0x02写入寄存器0x87以便擦除EEPROM页2;等待30 ms,完成擦除操作。
- 将0x0000写入寄存器0x85,以便设置地址偏移为零。
- 使用来自十六进制文件的电路板数据,通过向寄存器0x8D执行块写入操作,从而写入EEPROM页2。
- 将0x01写入寄存器0x88,以便解锁EEPROM。
使用十六进制文件的示例
电路板设置十六进制文件
十六进制文件内容如下:
:7E008D000102036000F76000F46000F3B000F48000F4B000F48 000F18000F18000F18000F16400F8A000F46000F46000F45DC0 FC6400F70000000000006E00F9A000F56000F26000F50000000 000000000000000008000F1000000000000000000000000000000 0000006C00F68000F10000000000000000000000000000000000 007E,
注意,以下信息内嵌在文件格式中:
- 冒号之后最前面的两位数7B代表字节数。本例为123个字节。
- 紧接着的四位数008D代表地址。
- 之后的两位数00代表记录类型。
- 之后从0102036到36个0的最终字符串代表数据。
- 最后两位数81代表校验和。
在EEPROM中存储电路板设置的格式
写入EEPROM并用于电路板设置的数据始于0x010203,而图形用户界面(GUI)使用这些数据来检测EEPROM中的页2是否存在有效的电路板设置数据。
在十六进制文件中,每一个电路板设置都以三字节数据表示。 最前面的两个字节表示尾数,第三个字节表示指数。例如,第一个电路板设置为输入电压48 V,以0x6000F7表示。 表2可用来理解十六进制码的划分。
尾数 | 指数 | |
高位 | 低位 | |
0x60 | 0x00 | 0xF7 |
十六进制数转换为电路板设置
- 尾数 = 0x6000
- 十进制尾数 = 24,576
- 指数 = 0xF7
- 二进制补码后的指数 = −9
- 输入电压 = 24,576 × 2−9 = 48 V。
图6显示了带有电路板设置的ADP1046A GUI窗口。表3进一步定义了这些设置,其中项目这一列表示图6中的元件定位器编号。
项目 | 电路板数值 | 尾数 | 指数 | |
高位 | 低位 | |||
1 | 输入电压 = 48 V | 0x60 | 0x00 | 0xF7 |
2 | N1 = 6 | 0x60 | 0x00 | 0xF4 |
3 | N2 = 3 | 0x60 | 0x00 | 0xF3 |
4 | R (CS2) = 11 mΩ | 0xB0 | 0x00 | 0xF4 |
5 | I (负载) = 8 A | 0x80 | 0x00 | 0xF4 |
6 | R1 = 11 kΩ | 0xB0 | 0x00 | 0xF4 |
7 | R2 = 1 kΩ | 0x80 | 0x00 | 0xF1 |
8 | C3 = 1 μF | 0x80 | 0x00 | 0xF1 |
9 | C4 = 1 μF | 0x80 | 0x00 | 0xF1 |
10 | N1 (CS1) = 1 | 0x80 | 0x00 | 0xF1 |
11 | N2 (CS1) = 100 | 0x64 | 0x00 | 0xF8 |
12 | R (CS1) = 10 Ω | 0xA0 | 0x00 | 0xF4 |
13 | ESR (L1) = 6 mΩ | 0x60 | 0x00 | 0xF4 |
14 | L1 = 6 μH | 0x60 | 0x00 | 0xF4 |
15 | C1 = 1500 μF | 0x5D | 0xC0 | 0xFC |
16 | ESR (C1) = 50 mΩ | 0x64 | 0x00 | 0xF7 |
17 | ESR (L2) = 0 mΩ | 0x00 | 0x00 | 0x00 |
18 | L2 = 0 μH | 0x00 | 0x00 | 0x00 |
19 | C2 = 220 μF | 0x6E | 0x00 | 0xF9 |
20 | ESR (C2) = 20 mΩ | 0xA0 | 0x00 | 0xF5 |
21 | R (正常模式) = 1.5 Ω | 0x60 | 0x00 | 0xF2 |
22 | R (轻载模式) = 12 Ω | 0x60 | 0x00 | 0xF5 |
23 | R1和R2上的电容 = 0 μF | 0x00 | 0x00 | 0x00 |
24 | 拓扑 = 0 | 0x00 | 0x00 | 0x00 |
25 | 开关/二极管 = 0 | 0x00 | 0x00 | 0x00 |
26 | 高端/低端检测- (CS2) = 0 mΩ | 0x00 | 0x00 | 0x00 |
27 | 第二个LC级 = 1(仅当安装了项目17至项目20时) | 0x80 | 0x00 | 0xF1 |
28 | CS1输入类型 = 0(供内部使用的默认值) | 0x00 | 0x00 | 0x00 |
29 | R3 = 0 kΩ | 0x00 | 0x00 | 0x00 |
30 | R4 = 0 kΩ | 0x00 | 0x00 | 0x00 |
31 | 脉冲宽度调制器(PWM)主值 = 0 (供内部使用的默认值) |
0x00 | 0x00 | 0x00 |
32 | C5 = 0 μF | 0x00 | 0x00 | 0x00 |
33 | C6 = 0 μF | 0x00 | 0x00 | 0x00 |
34 | R6 = 27 kΩ | 0x6C | 0x00 | 0xF6 |
35 | R7 = 1 kΩ | 0x80 | 0x00 | 0xF1 |
谐振模式拓扑
对于谐振模式拓扑而言(如图7所示),其余元件的设置应当不同于表3中通用电路板的设置。谐振模式设置见表4。
相移、全桥拓扑
对于相移、全桥拓扑(如图8所示),其余元件的设置要求既不同于通用电路板设置(表3),又不同于谐振模式设置(表4)。 相移、全桥设置如表5所示。
项目 | 电路板数值 |
1 | 输入电压 = 385 V |
2 | N1 = 6 |
3 | N2 = 3 |
4 | R (CS2) = 2.2 mΩ |
5 | I (负载) = 12.5 A |
6 | R1 = 46.4 kΩ |
7 | R2 = 1 kΩ |
8 | C3 = 1 µF |
9 | C4 = 1 µF |
10 | N1 (CS1) = 1 |
11 | N2 (CS1) = 100 |
12 | R (CS1) = 20 Ω |
13 | ESR (L1) = 6 mΩ |
14 | L1 = 6 µH |
15 | C1 = 680 µF |
16 | ESR (C1) = 50 mΩ |
17 | ESR (L2) = 0 mΩ |
18 | L2 = 0 µH |
19 | C2 = 330 µF |
20 | ESR (C2) = 20 m Ω |
21 | R (正常模式), 负载 = 3.84 Ω |
22 | R(轻载模式),负载 = 24 Ω |
23 | R1和R2上的电容 = 0(1 = 是,0 = 否) |
24 | 拓扑 = 7(0 = 全桥,1 = 半桥,2 = 双开关正向, 3 = 交错式双开关正向,4 = 有源钳位正向, 5 = 谐振模式,6 = 自定义) |
25 | 开关/二极管 = 0(0 = 开关,1 = 二极管) |
26 | 高端/低端检测(CS2) = 0(1 = 高端检测, 0 = 低端检测) |
27 | 第二个LC级 = 1(1 = 是,0 = 否) |
28 | CS1输入类型 = 0(1 = 交流,, 0 = 直流) |
29 | R3 = 0 kΩ |
30 | R4 = 0 kΩ |
31 | 脉冲宽度调制器主值 = 0(0 = OUTA,1 = OUTB, 2 = OUTC,3 = OUTD,4 = SR1,5 = SR2,6 = OUTAUX) |
32 | C5 = 0 µF |
33 | C6 = 0 µF |
34 | R6 = 27 kΩ |
35 | R7 = 1 kΩ |
36 | C7 = 0.009 µF |
37 | L3 = 70 µH |
38 | Lm = 400 µH |
39 | ResF = 108 kHz |
40 | R8 = 145 mΩ |
41 | R9 = 10 mΩ |