AT24C02驱动学习笔记

       

         AT24C02是一个2K位串行CMOS E2PROM, 内部含有2568位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。AT24C02有一个8字节页写缓冲器。该器件通过IIC总线接口进行操作,有一个专门的写保护功能。

       一、器件地址

      

从图中可以看出,2k/4k8k/16k器件地址高四位都为1010低四位的前三位为可编程地址,这样一个iic总线最多可接8at系列eeprom,最后一位为数据传送方向控制位。

二、写一个字节

图二为主机向从机写一个字节的时序,可以看到先是启动iic然后写器件地址,7位器件地址+位数据传送方向控制位,产生ack应答,写字地址,再产生ack应答,然后发送数据产生ack应答,最后发送iic结束信号。

 三、页写

    通过阅读AT24的数据手册可以发现,2kEEPROM支持8个字节的页写,后面的数据最多能发送8个而且要从页头开始写(这个还是调试过程中发现的,还好用了逻辑分析仪,通过逻辑分析仪我发现写的时序都是正确的,但是读出数据最后几位总是错误然后又查了下手册才发现这条规定)。4K/8K/16K一页则可以写16个字节。通过写多个字节和写一个字节时序图比较可以发现,在发送完上一个字节的数据收到ack应答后不需要再次写器件地址和字地址,只需在收到ack应答后继续发送字节数据,在最后一个字节发送完毕收到ack应答产生一个iic结束信号便可结束写操作。

    四、当前地址读取一个字节

    主机读数据:第一主机先发送iic启动信号,二发送7位器件地址+一位读写方向控制位,三等待ack应答,四读取数据同时后主机发送非应答信号(不是等待从机产生ack应答信号),五产生iic停止信号

    五、从指定字地址开始读

任意读,就是从指定的字节地址开始读。第一先发送iic启动信号,第二发送7器件地址+一位写操作的数据传送位等待ack应答,第三发送要读的字节地址等待ack应答,第四像图四那样操作。

六、读取n个字节

连续读和连续写类似,这里只需要在读取一个字节数据读完发送ack应答继续读取字节,但在读取最后一个字节后要发送非ack应答告诉从机读完了,最后发送iic停止信号。

  • 11
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
EEPROM存储器AT24C02驱动是一种用于控制和操作AT24C02 EEPROM芯片的软件程序。AT24C02是一种2K位串行电路编程只读存储器(EEPROM),能够以字节为单位进行读写操作。下面是一个简单的EEPROM存储器AT24C02驱动的实现示例: 首先,需要确定与AT24C02芯片通信的硬件接口。一般来说,AT24C02芯片使用I2C(TWI)总线进行通信。因此,需要确保控制器上的I2C总线控制器(如I2C模块)已正确配置和初始化。 其次,需要实现与AT24C02芯片通信的相关函数,如写入数据、读取数据等。这些函数可以通过在控制器上通过I2C总线传输控制字节数据字节来执行相关的EEPROM操作。 例如,实现写入数据的函数,可以按照以下步骤进行: 1. 通过发出启动条件向AT24C02芯片发送设备地址。设备地址应包括芯片的固定地址和A0、A1和A2引脚的状态,用来识别芯片的物理位置。 2. 发送一个字节的内存地址,确定要写入数据的EEPROM存储器地址。 3. 发送要写入的数据字节。 4. 等待写操作完成,可以通过轮询芯片或等待I2C总线中断来检查。 5. 发送停止位,结束写操作。 同样,读取数据的函数也可以按照类似的步骤进行实现,只不过在发送内存地址之后需要切换到读操作模式,并在读取数据后保存数据字节。 在驱动程序的应用中,可以使用这些函数来存储和检索数据。通过提供适当的地址,可以将数据写入或读取到AT24C02芯片的特定地址中。此外,除了基本的读写功能之外,还可以实现其他操作,如块写入、页写入等。 总之,EEPROM存储器AT24C02驱动程序通过I2C总线控制器与AT24C02芯片进行通信,实现了对EEPROM芯片的读写操作。驱动程序应提供适当的函数来进行数据存储和检索,并可以根据应用需求扩展其他功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

shenhuaifeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值