PCF8591&AT24C02 IIC协议

本文详细介绍了如何使用IIC协议进行PCF8591 AD/DA转换器和AT24C02 EEPROM的编程。内容包括电路图、IIC协议的启动/停止及应答机制,以及PCF8591和AT24C02的地址定义和读写时序。通过对IIC总线的深入理解,实现单片机与外围设备的有效通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、电路图

1. EEPROM

AT24C02

2.AD/DA

PCF8591

二、IIC协议介绍

1.总线启动/停止

SCL为高电平时,SDA由高电平向低电平变化

总线启动条件

void IIC_start(void)
{
   
    SDA=1;
    SCL=1;
    someop;//延时大于4.7us
    SDA=0;
    someop;//延时大于4.7us
    SCL=0;
}

SCL为高电平时,SDA由低电平向高电平变化

总线停止条件

void IIC_stop(void)	
{
   
	SDA=0;
	SCL=1;
	someup;//延时大于4.7us
	SDA=1;
}

2.总线应答

IIC总线进行数据传送时,时钟信号SCL为高电平期间,数据线上的信号SDA必须保持稳定。只有SCL为低电平期间SDA上的电平才允许变化。

在写数据时,要在SCL为低的时候,改变SDA。

在读数据时,要在SCL为高的时候,读SDA

通过IIC总线发送数据

void IIC_sendbyte(unsigned char byt)
{
   
    unsigned char i;
    for(i=0;i<8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值