PCF8591
8位A/D和D/A转换器
By Coolbor Xie
8 位 A/D 和 D/A 转换器具 PCF8591
1、特性
单电源供电
工作电压:2.5 V ~ 6 V
待机电流低
I2C 总线串行输入/输出
通过 3 个硬件地址引脚编址
采样速率取决于 I2C 总线速度
4 个模拟输入可编程为单端或差分输入
自动增量通道选择
模拟电压范围:VSS~VDD
片上跟踪与保持电路
8 位逐次逼近式 A/D 转换
带一个模拟输出的乘法 DAC
2、应用
闭环控制系统
用于远程数据采集的低功耗转换器
电池供电设备
在汽车、音响和 TV 应用方面的模拟数据采集
3、概述
PCF8591 是单片、单电源低功耗 8 位 CMOS 数据采集器件,具有 4 个模拟输入、一个输出和一个串
行 I2C 总线接口。3 个地址引脚 A0、A1 和 A2 用于编程硬件地址,允许将最多 8 个器件连接至 I2C
总线而不需要额外硬件。器件的地址、控制和数据通过两线双向 I2C 总线传输。
器件功能包括多路复用模拟输入、片上跟踪和保持功能、8 位模数转换和 8 位数模拟转换。最大转换
速率取决于 I2C 总线的最高速率。
4、订货信息
1
8 位 A/D 和 D/A 转换器具 PCF8591
5、内部框图
6、引脚
图 1 内部框图
2
图 2 引脚图 (DIP16).
8 位 A/D 和 D/A 转换器具 PCF8591
7、功能描述
7.1 地址
I2C 总线系统中的每一片 PCF8591 通过发送有效地址到该器件来激活。该地址包括固定部分和可编
程部分。可编程部分必须根据地址引脚 A0、A1 和 A2 来设置。在 I2C 总线协议中地址必须是起始条
件后作为第一个字节发送。地址字节的最后一位是用于设置以后数据传输方向的读/写位。(见图 4、
16、17)
7.2 控制字
图 4 地址
发送到 PCF8591 的第二个字节将被存储在控制寄存器,用于控制器件功能。 控制寄存器的高半字
节用于允许模拟输出,和将模拟输入编程为单端或差分输入。低半字节选择一个由高半字节定义的
模拟输入通道(见图 5)。如果自动增量(auto-increment)标志置 1,每次 A/D 转换后通道号将自动
增加。
如果自动增量(auto-increment)模式是使用内部振荡器的应用中所需要的,那么控制字中模拟输出
允许标志应置 1。这要求内部振荡器持续运行,因此要防止振荡器启动延时的转换错误结果。模拟输
出允许标志可以在其他时候复位以减少静态功耗。
选择一个不存在的输入通道将导致分配最高可用的通道号。所以,如果自动增量(auto-increment)
被置 1,下一个被选择的通道将总是通道 0。两个半字节的最高有效位(即 bit 7 和 bit 3)是留给未来
的功能,必须设置为逻辑 0。控制寄存器的所有位在上电复位后被复位为逻辑 0。D/A 转换器和振荡
器在节能时被禁止。模拟输出被切换到高阻态。
3
8 位 A/D 和 D/A 转换器具 PCF8591
图 5 控制字
7.3 D/A 转换
发送给 PCF8591 的第三个字节被存储到 DAC 数据寄存器,并使用片上 D/A 转换器转换成对应的模
4
8 位 A/D 和 D/A 转换器具 PCF8591
拟电压。这个 D/A 转换器由连接至外部参考电压的具有 256 个接头的电阻分压电路和选择开关组成。
接头译码器切换一个接头至 DAC 输出线(见图 6)。
模拟输出电压由自动清零单位增益放大器缓冲。这个缓冲放大器可通过设置控制寄存器的模拟输出
允许标志来开户或关闭。在激活状态,输出电压将保持到新的数据字节被发送。
图 6 DAC 电阻电路
片上 D/A 转换器也可用于逐次逼近 A / D 转换(successive approximation A/D conversion)。为释放用
于 A/D 转换周期的 DAC,单位增益放大器还配备了一个跟踪和保持电路。在执行 A/D 转换时该电
路保持输出电压。
提供给模拟输出 AOUT 的输出电压由图 7 中的公式给出。D/A 转换顺序的波形见图 8。
5
8 位 A/D 和 D/A 转换器具 PCF8591
图 7 DAC 数据寄存器和 D/A 转换特性
图 8 D/A 转换顺序
7.4 A/D 转换
A/D 转换器采用逐次逼近转换技术。在 A/D 转换周期将临时使用片上 D/A 转换器和高增益比较器。
一个 A/D 转换周期总是开始于发送一个有效读模式地址给 PCF8591 之后。A/D 转换周期在应答时钟
脉冲的后沿被触发,并在传输前一次转换结果时执行(见图 9)。
一旦一个转换周期被触发,所选通道的输入电压采样将保存到芯片并被转换为对应的 8 位二进制码。
6
8 位 A/D 和 D/A 转换器具 PCF8591
取自差分输入的采样将被转换为 8 位二进制补码。(见图 10 和图 11)
转换结果被保存在 ADC 数据寄存器等待传输。如果自动增量标志被置 1,将选择下一个通道。
在读周期传输的第一个字节包含前一次读周期的转换结果代码。以上电复位之后读取的第一个字节
是 0x80。I2C 总线协议的读周期如图 8、图 16 和图 17。
最高 A/D 转换速率取决于实际的 I2C 总线速度。
图 9 A/D 转换顺序
图 10 单端输入的 A/D 转换特性
7