0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

13_51单片机应用_AT24C02&IIC

天才小狸花 来源:Sigle_chip 作者:Sigle_chip 2022-10-06 21:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

在实际的应用中,我们需要一些存储介质帮助我们来存储一些东西,如保存一些参数和配置数据等。比较常用的有AT24Cxx系列。AT24C02芯片是以IIC接口的EEPROM器件。所谓EEPROM即电可擦除可编程只读存储器,是ROM的一种。它是只读存储器,即掉电可继续存储数据,而同时又可以在高于普通电压的作用下擦除和重写。

AT24C02

724b5b0f4a06107618ac1aaaa76026a9.png

img

其中A0、A1、A2用于定义芯片地址,VCC和GND是供电正负接口,SCL和SDA是IIC的数据总线,WP是写保护(若接VCC则该芯片所有内容都被保护,只能读不能写,一般我们直接接地)。单片机入门绘制电路板,需要正品元器件可去唯样商城,原厂真货。

AT24C02的从机地址前四位1010为固定值,A0,A1,A2正好与芯片的1,2,3引角对应,最末一位表示读(1)或写(0)。

AT24C02的内存有2Kbit(256byte),分为32页,对其的写操作包括字节写和页写。

写操作

字节写

字节写就是对指定地址的字节进行写入操作,时序是:

①发送start信号

②发送从器件地址+写标志“0”,并等待应答信号

③发送要写入的地址,并等待应答信号

④发送要写入的数据,并等应答信号

⑤发送stop信号。

页写

页写则是在字节写的基础上,在第⑤步之前多次使用第④步,即最后先不要发送stop信号,而是继续发送数据,这时AT24C02就会自动将地址加一,待所有数据发送完毕再发送stop信号。

读操作

随机读

随机读可以指定要读取数据的地址,具体时序:

①发送start信号

②发送从器件地址+写标志“0”,并等待应答

③发送要读数据的地址,并等待应答

④重新发送一个start信号(也可称为restart信号)

⑤发送从器件地址+读标志“1”,并等待应答

⑥接收传来的数据,收到数据后要发送非应答信号

⑦发送stop信号。

当前地址读

当前地址读则是只能读取芯片内部最近一次操作的地址加一处的数据(主要在已知上次操作地址时使用),具体时序:

①发送start信号

②发送从器件地址+读标志“1”,并等待应答

③接收传来的数据,然后发送非应答信号

④发送stop信号。

顺序读

顺序读则是在前两种读操作的基础上,在接收到数据后发送应答信号,然后就可以继续读上次操作地址加一处的数据了(这是在芯片内部实现的),当读够数据后,要发送非应答信号,最后发送stop信号。

代码

void write_AT24C02(uchar unit_addr, uchar dat)
{
start();
write_byte(AT24C02_ADDR + 0);//下一个字节为写,所以是+0
ack();
write_byte(unit_addr);
ack();
write_byte(dat);
ack();
end();
}

uchar read_AT24C02(uchar unit_addr)
{
uchar dat;
/先写数据/
start();
write_byte(AT24C02_ADDR + 0);//下一个字节为写
ack();
write_byte(unit_addr);
ack();
start();
write_byte(AT24C02_ADDR + 1);//下一个字节为读

ack();
 dat = read_byte();
 end();
 return dat;

}

void main()
{
write_AT24C02(0xf0, 0xae);
delay_10ms(); //写完后,必须延时一定的时间才可以读取
P1 = read_AT24C02(0xf0);
while(1);
}

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6078

    文章

    45618

    浏览量

    674994
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入剖析 CAT24C02/04/08/16:I²C 串行 EEPROM 的卓越之选

    深入剖析 CAT24C02/04/08/16:I²C 串行 EEPROM 的卓越之选 在电子设计领域,EEPROM(电可擦可编程只读存储器)扮演着至关重要的角色,它能够在断电后保留数据,为各种
    的头像 发表于 04-15 16:00 300次阅读

    8XC51FX:高性能8位单片机的全方位解析

    8XC51FX:高性能8位单片机的全方位解析 在单片机的世界里,8XC51FX系列以其卓越的性能和丰富的功能脱颖而出,成为众多电子工程师在设计项目时的热门选择。今天,我们就来深入探讨一
    的头像 发表于 03-29 13:15 423次阅读

    IIC的正确用法

    外部上拉电阻将I2C信号线拉至高电平。 在单片机应用中,就要看你使用的单片机是否有标准的IIC标准接口了,如果你使用了标准的IIC接口,这个
    发表于 01-21 07:28

    高精度仪表放大器AMP02:特性、应用与设计要点

    高精度仪表放大器AMP02:特性、应用与设计要点 在电子工程师的日常设计中,仪表放大器是一种常见且关键的器件,它能在各种复杂的测量和信号处理场景中发挥重要作用。今天,我们就来详细探讨一下ADI公司
    的头像 发表于 01-16 10:20 494次阅读

    学习单片机快速方法

    的。首先你得知道你要学习什么样的单片机,我建议从80C51核心学起,80C51是MCS-51系列中的一个典型品种;其它厂商以8051为基核开发出的CMOS工艺
    发表于 01-14 07:42

    芯伯乐24C02/24C04/24CXX:百万次擦写非易失性存储器的解决方案

    的首选方案。无论是消费电子、工业控制还是物联网设备,都能见到它的身影。一产品概述24C02/24C04/24Cxx系列是基于IIC总线协议的串行电可擦除存储器(E
    的头像 发表于 11-28 18:32 1644次阅读
    芯伯乐<b class='flag-5'>24C02</b>/<b class='flag-5'>24C</b>04/<b class='flag-5'>24</b>CXX:百万次擦写非易失性存储器的解决方案

    单片机启动&amp;amp;库函数的构成

    的脉冲,故单片机的时钟信号可以由RC振荡器提供。但是RC振荡器提供的时钟信号质量不高,而晶体振荡器依靠压电效应提供稳定的、高质量的时钟信号。 以CW32F030C8T6单片机为例,他拥有2个内部
    发表于 11-18 08:15

    C语言和单片机C语言有什么差异

    区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。 3、单片机c语言编程是基于C语言的单片机编程。
    发表于 11-14 07:55

    51单片机RS485编程实例资料

    详细介绍51单片机RS485通信接线和编程代码
    发表于 10-20 14:57 8次下载

    大一暑假适合学51单片机吗?

    大一暑假学 51 单片机,简直是老天爷赏饭吃的黄金窗口。我当时就是靠着这两个月,把从课本上看来的 C 语言指针、循环语句,变成了能让 LED 按节奏跳舞的真本事。
    的头像 发表于 07-16 11:42 845次阅读
    大一暑假适合学<b class='flag-5'>51</b><b class='flag-5'>单片机</b>吗?

    AT89C51 单片机中文资料

    电子发烧友网站提供《AT89C51 单片机中文资料.pdf》资料免费下载
    发表于 06-24 15:29 1次下载

    2.4寸TFT彩屏配套测试程序-51单片机

    如题,2.4寸TFT彩屏配套测试程序-51单片机
    发表于 06-04 16:26 0次下载

    单片机实例项目:AT24C02EEPROM存储器

    单片机实例项目:AT24C02EEPROM存储器,推荐下载!
    发表于 06-03 20:50

    基于51单片机的多功能万年历设计

    基于51单片机的多功能万年历设计    本项目是基于51单片机STC89系列,运用protues仿真软件开发,使用模块化编程方法,模块化电路设计,硬件部分采用
    发表于 06-03 17:17 1次下载

    51单片机笔记(建议收藏!)

    简单汇总下51单片机的资源和学习方法 一页纸讲清单片机 也许有人问:有没有那么简单呀? 当然不会那么简单啦,首先你要把书读薄,然后再把书读后,最后把书放进自己脑子里,形成自己的一套思路。 理解
    发表于 05-21 17:24