AT24C02芯片简介:小巧强大的串行EEPROM存储器

一、AT24C02概述

AT24C02是一款2K位(即256字节)的串行EEPROM芯片,采用I²C(Inter-Integrated Circuit)总线进行通信,适合低功耗、小容量存储需求。

主要特性:

项目

参数

存储容量

2Kb(256 x 8位)

接口协议

I²C(双线串行接口)

工作电压

1.7V - 5.5V

访问时间

字节写入:最多5ms;读取:快速响应

读写次数

超过100万次擦写周期

数据保持

超过100年

封装形式

常见有DIP、SOIC、TSSOP等

二、引脚功能与硬件连接

AT24C02采用8引脚封装,关键引脚如下:

  • A0-A2:地址引脚,用于多设备级联时设定唯一地址(默认接地时为0xA0写地址/0xA1读地址)17。

  • SDA/SCL:I²C数据线和时钟线,需外接4.7kΩ上拉电阻以保证信号稳定性710。

  • WP:写保护引脚,接地时允许读写,接高电平时仅允许读操作39。

典型连接示例(以Arduino为例):

  • VCC接5V或3.3V电源,GND接地,SDA/SCL分别连接至MCU的I²C引脚(如Arduino Uno的A4/A5)17。

三、工作原理与通信流程

AT24C02通过I²C协议与主控设备通信,步骤如下:

  1. 起始信号:SCL为高电平时,SDA由高变低,标志通信开始310。

  2. 地址传输:主设备发送7位设备地址(高4位固定为1010,低3位由A0-A2决定)和读写位(0为写,1为读)28。

  3. 数据操作

    • 写入:需指定存储地址,单次最多写入8字节(页写入),每次操作后需等待5ms内部写入周期19。

    • 读取:支持随机读和顺序读,需先发送“哑地址”再切换为读模式23。

示例代码(写入与读取)

// 写入单字节
void EEPROM_Write(uint8_t addr, uint8_t data) 
{     
    I2C_Start();     
    I2C_SendByte(0xA0); // 写地址     
    I2C_WaitAck();     
    I2C_SendByte(addr); // 存储地址     
    I2C_WaitAck();     
    I2C_SendByte(data); // 数据     
    I2C_WaitAck();     
    I2C_Stop();     
    delay(5); // 等待写入完成
}
// 读取单字节
uint8_t EEPROM_Read(uint8_t addr) {     
    uint8_t data;     
    I2C_Start();     
    I2C_SendByte(0xA0); // 写地址     
    I2C_WaitAck();     
    I2C_SendByte(addr); // 存储地址     
    I2C_WaitAck();     
    I2C_Start();     
    I2C_SendByte(0xA1); // 读地址     
    I2C_WaitAck();     
    data = I2C_ReceiveByte();     
    I2C_SendAck(1);     // 非应答结束读取     
    I2C_Stop();     
    return data;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值