PCF8591 芯 片 的 应用 C 语言编程 1 PCF8591 芯片的使用 基于PCF8591 的AD—DA 的程序设计
本设计是通过PCF8591 芯片选择通道1 将滑动变阻器的电压记过A/D 转换,有单片机读回,并在数码管显示,比且有这个数据再经过D/A转换成模拟电压驱动发光二极管
发光二极管的亮度与数码管显示的电压值相对
PCF8591 芯片 PCF8591 是单片、单电源低功耗 8 位 CMOS 数据采集器件,具有4 个模拟输入、一个输出和一个串行 I2C 总线接口
3 个地址引脚 A0、A1 和 A2 用于编程硬件地址,允许将最多 8个器件连接至 I2C 总线而不需要额外硬件
器件地址、控制和数据通道通过两线双向 I2C 总线传输
器件功能包括多路复用模拟量输入、片上跟踪和保持功能、8 位模数转换和 8 位数模转换
最大转换速率取决于I2C 总线的最高速率
我实现的AD 转换是使用通道0 将滑动变阻器两端的电压 AIN0~AIN3:模拟信号输入端
A0~A2:引脚地址端
VDD、VSS:电源端
5~6V) SDA、SCL:I2C 总线的数据线、时钟线
OSC:外部时钟输入端,内部时钟输出端
EXT:内部、外部时钟选择线,使用内部时钟时 EXT 接地
AGND:模拟信号地
AOUT:D/A 转换输出端
VREF:基准电源端
地址:I2C 总线系统中的每一片PCF8591通过发送有效地址到该器件来激活
该地址包括固定部分和可编程部分
可编程部分必须根据地址引脚A0、A1和 A2来设置
在I2C 总线协 PCF8591 芯 片 的 应用 C 语言编程 2 议中地址必须是起始条件后作为第一个字节发送
地址字节的最后一位是用于设置以后数据传输方向的读/写位
(见下图) 控制字:发送到 PCF8591的第二个字节将被存储在控制寄存器,用于