ZHCUB80C August 2004 – July 2023 PGA309
温度 ADC 具有两种转换模式:单次和连续。在连续转换模式(CEN =“1”)下,温度 ADC 会在转换完成后立即启动下一个转换周期。在单次转换模式(CEN =“0”)下,温度 ADC 启动转换位 (ADCS) 用作启动转换/繁忙位,必须在启动转换前设置为“1”。当 EEPROM 的寄存器配置部分(第一部分)包含 ADCS =“1”并且读取 EEPROM 时,便会将 ADCS 设置为“1”。此外,对于每次后续的 EEPROM 读取,ADC 都会复位为“1”。ADCS 设置为“1”后,如果立即读取,值将是“1”,并且可进行轮询,直到恢复为“0”,表示转换完成。启动转换模式如表 2-13 所示。
CEN [10] | ADCS [12] | 转换 模式 | 说明 |
---|---|---|---|
0 | 0 | 单次 | 温度 ADC 模式 — 无转换。 |
0 | 1 | 单次 | 温度 ADC 开始转换,ADCS 用作繁忙位,并在转换结束时变为“0”。 |
1 | X | 持续 | ADCS 位不进行控制 — 通常情况下由于是连续转换,因此 ADCS =“1” |
图 2-18 中选择了连续启动转换控制。在通常为 33ms 的初始上电复位超时后,会读取 EEPROM 的寄存器配置部分(第一部分)。此后会立即启动温度 ADC 转换。首次转换结束时会读取 EEPROM 的温度系数部分(第二部分),并调整零 DAC 和增益 DAC 设置。由于 CEN =“1”,每次转换结束都会启动下一次转换。读取 EEPROM 的温度系数部分(第二部分)后,会读取寄存器配置值。请注意,只有从 EEPROM 读取到有效的寄存器配置才会触发 EEPROM 后半部分(温度系数)的读取。此操作在给定时间段内产生的温度更新最多。
图 2-19 中选择了单次转换模式(CEN =“0”)。在通常为 33ms 的初始上电复位超时后,会读取 EEPROM 的寄存器配置(第一部分)。在此之后,如果 CEN =“0”且 ADCS =“1”,则会立即启动温度 ADC 转换。首次转换结束时会读取 EEPROM 的温度系数(第二部分),并调整零 DAC 和增益 DAC 设置。当 CEN =“0”且 ADCS =“1”时,仅在读取 EEPROM 的寄存器配置部分之后才会发生新的启动转换。此次转换结束后会读取 EEPROM 的第二部分(温度系数),执行增益 DAC 和零 DAC 温度计算,并更新每个相应的 DAC。请注意,在单次启动转换模式下,如果 CEN =“0”且 ADCS =“0”(无温度 ADC 转换),则 PGA309 将在上电后等待 33ms,读取 EEPROM 的寄存器配置部分,并且在不进行任何 ADC 转换的情况下读取查找表并计算增益 DAC 和零 DAC 值。这些值基于当前 ADC 输出寄存器(上电时为全零)。然后,PGA309 输出将被启用并等待大约 25ms,再读取 EEPROM 的寄存器配置部分。在以下连续循环期间,输出保持启用状态:读取 EEPROM 的寄存器配置部分,等待 33ms,然后再次读取。
外部温度模式的最后一个控制选项是 ADC2X 位,即寄存器 6 位 [13]。该位允许仅针对外部温度读数提高温度 ADC 的转换速度。
表 2-14 显示了典型设置以及 ADC2X 位的作用。
R1 [1] | R0 [0] | [TEN=0], [AREN=0], [ADC2X=0] | [TEN=0], [AREN=0], [ADC2X=1] | [TEN=0], [2.048V,AREN=1], [ADC2X=0] | [TEN=0], [2.048V,AREN=1], [ADC2X=1] |
---|---|---|---|---|---|
0 | 0 | 11 位 + 符号 (6ms) | 11 位 + 符号 (3ms) | 11 位 + 符号 (8ms) | 11 位 + 符号 (4ms) |
0 | 1 | 13 位 + 符号 (24ms) | 13 位 + 符号 (12ms) | 13 位 + 符号 (32ms) | 13 位 + 符号 (16ms) |
1 | 0 | 14 位 + 符号 (50ms) | 14 位 + 符号 (25ms) | 14 位 + 符号 (64ms) | 14 位 + 符号 (32ms) |
1 | 1 | 15 位 + 符号 (100ms) | 15 位 + 符号 (50ms) | 15 位 + 符号 (128ms) | 15 位 + 符号 (64ms) |