page71

导航

PCF8591——AD/DA 的使用

PCF8591是8位的AD/DA转换芯片

 

 介绍芯片和外设:

AIN0是接入的电压信号,反映的光敏电阻测量的光信号的强度;AIN3接入的是电位器Rb2的电压信号0~5V。

AIN2是接了一个仪表放大器。

 

AIN0没有接开发板上的设备,留出来给了引脚。

控制8591的工作是通过I2C协议。

设备地址:

控制字:(手册原图太大,只截取部分)

DA输出电压控制字: 一位能输出5V/256=0.0195的电压

 

 DA:

1.DA的使用:

void DACconversion(unsigned char val)
{
IIC_Start();
IIC_SendByte(0x90);       //设备地址
IIC_WaitAck();
IIC_SendByte(0x40);      //DA功能使能
IIC_WaitAck(); 
IIC_SendByte(val);       //输出电压值
IIC_WaitAck();
IIC_Stop();
}

2.AD采集

void ADC_wirte(u8 i)
{
IIC_Start();
IIC_SendByte(0x90);      //设备地址
IIC_WaitAck();
IIC_SendByte(i);        //发送控制字(控制)
IIC_WaitAck();
IIC_Stop();
}

u8 ADC_read()
{
u8 dat=0;
IIC_Start();
IIC_SendByte(0x91);    //发送读取的设备地址
IIC_WaitAck();

dat = IIC_RecByte();     //接收的数据保存
IIC_SendAck(1);       //主设备非应答
IIC_Stop();

return dat;
}

posted on 2020-11-13 12:15  page71  阅读(543)  评论(0编辑  收藏  举报