3.4.2 PCF8591的特性
① 单独供电
② PCF8591的操作电压范围2.5V-6V
③ 低待机电流
④ 通过I²C总线串行输入/输出
⑤ PCF8591通过3个硬件地址引脚寻址
⑥ PCF8591的采样率由I²C总线速率决定
⑦ 4个模拟输入可编程为单端型或差分输入
⑧ 自动增量频道选择
⑨ PCF8591的模拟电压范围从VSS到VDD
⑩ PCF8591内置跟踪保持电路
图3.4 PCF8591管脚图
表3.4.2 PCF8591管脚说明
引脚 引脚序号 引脚功能
AIN0 1 模拟量输入方式
AIN1 2
AIN2 3
AIN3 4
A0 5 模拟通道选择
A1 6
A2 7
VSS 8 负电源电压
SDA 9 数据信号
SCL 10 时钟信号
OSC 11 振荡器
EXT 12 振荡器输入的外部内部转换
AGND 13 模拟接地端
VREF 14 输入的参考电压
AOUT 15 模拟量输出
VDD 16 正的电源电压
3.4.3 PCF8591功能描述
1) 地址
I2C总线系统中的每一片PCF8591通过发送有效地址到该器件来激活,该地址包括固定部分和可编程部分。可编程部分必须根据地址引脚A0. A1和A2来设置。在I2C总线协议中地址必须是起始条件作为第一个字节发送。地址字节的最后一位是用于设置以后数据传输方向的读写位。
表3.4.3地址
1 0 0 1 A2 A1 A0 R/W
2) 控制字
发送到PCF8591的第二个字节将被存储在控制寄存器,用于控制器件功能,控制寄存器的高半字节用于容许模拟输出,和将模拟输入编程为单端或差分输入。低半字节选择一个由高半字节定义的模拟输入通道。如果自动增量(auto-increment)标志置1,每次AD转换后通道号将自动增加。
如果自动增量(auto-increment)模式是使用内部振荡器的应用中所需要的,那么控制字节中模拟输出容许标志应置1.这要求内部振荡器持续运行,因此要防止振荡器启动延时的转换错误结果。模拟输出容许标志可以在其他时候复位以减少静态功耗。
选择一个不存在的输入通道将导致分配最高可用的通道号。所以,如果自动增量(auto-increment)被置1,下一个被选择的通道将总是通道0.两个半字节的最高有效位(即第7位和第3位)是留给未来的功能,必须设置为逻辑0.控制寄存器的所有位在上电复位后被复位为逻辑0.DA转换器和振荡器在节能时被禁止。模拟输出被切换到高阻态。
3) AD转换
AD转换器采用逐次逼近转换技术,在AD转换周期将临时使用片上DA转换器和高增益比较器。一个AD转换周期总是开始于发送一个有效模式地址给PCF8591之后,AD转换周期在应搭时钟脉冲的后沿触发,所选通道的输入电压采样保存到芯片并被转换为对应的8位二进制码。