AT24C02驱动学习笔记

AT24C02驱动学习笔记AT24C02 是一个 2K 位串行 CMOSE2PROM 内部含有 256 个 8 位字节 CATALYST 公司的先进 CMOS 技术实质上减少了器件的功耗 AT24C02 有一个 8 字节页写缓冲器 该器件通过 IIC 总线接口进行操作 有一个专门的写保护功能 nbsp nbsp nbsp nbsp nbsp nbsp 一 器件地址 nbsp nbsp nbsp nbsp nbsp nbsp 从图中可以看出 2k 4k8k 16k 器件地址高四位都为 1010 低四位的前三位为可编程地址 这样一

       

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

       一、器件地址

      
AT24C02驱动学习笔记

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

二、写一个字节

AT24C02驱动学习笔记

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

 三、页写

AT24C02驱动学习笔记

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

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

AT24C02驱动学习笔记

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

    五、从指定字地址开始读

AT24C02驱动学习笔记

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

六、读取n个字节

AT24C02驱动学习笔记

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227703.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午8:44
下一篇 2026年3月16日 下午8:44


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号