STM32——AT24C02(EEPROM )

这篇具有很好参考价值的文章主要介绍了STM32——AT24C02(EEPROM )。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、介绍

1、简介

AT24C02是一种2 Kb(256 × 8)串行电子可擦可编程只读存储器(EEPROM)芯片,支持标准I2C总线通信协议。

AT24C02的编程操作是以页为单位完成的,每次最多可编程8个连续字节。具体来说,AT24C02的一页大小为8个字节,每次写入数据时,需要确保写入的数据不跨页。因此,如果要在AT24C02中写入10个字节的数据,需要先将前8个字节写入一个页,再将后两个字节写入另一个页。

stm32 at24c02,stm32,嵌入式硬件,单片机

2、IIC通信

SCL、SDA用于IIC通信,采取开漏+弱上拉电阻的模式,这意味着AT24C02可以双向传输。

3、写保护

WP是写入保护位,当WP连接到高电平(悬空或连接VCC)时,存储器锁存,AT24C02无法写入数据(但仍然可以进行读操作);当WP连接到低电平时,AT24C02可以进行读/写操作。

stm32 at24c02,stm32,嵌入式硬件,单片机

4、地址

AT24C02大小为2K(256x8),故其地址满足下图规则,即:1 0 1 0 A2 A1 A0 R/W (A2 A1 A0都接地)

地址码:1010 000 R/W 七位地址+一位读写    0xA0(写) 0xA1(读)

stm32 at24c02,stm32,嵌入式硬件,单片机

二、数据传输

1、AT24C02写

(1)写一个字节

①主器件发送起始命令和从器件地址(读写位置零)给从器件,等待从器件应答。

②主器件发送8位字节地址(AT24C02芯片内部存储单元)给从器件,等待从器件应答。

③主器件发送8位字节数据给从器件,等待从器件应答。

④停止。

stm32 at24c02,stm32,嵌入式硬件,单片机

(2)页写

与字节写入相同,页面写入时,主器件也需要在发送从器件地址和ACK应答后,发送8位的字节地址。但是,在从器件接收到第一个数据字之后,主器件不会发送停止条件。

相反,在EEPROM确认接收到第一个数据字之后,主器件可以最多传输七个以上(1K/2K)的数据字。

并且EEPROM会在每个数据字被接收到之后以0响应(读写位为0)。

数据字地址的低位三位(1K/2K)在内部递增,较高的数据字地址位不递增,保留内存页行位置。如果超过八个(1K/2K)数据字被传输到EEPROM,数据字地址将“翻转”,以前的数据将被覆盖。

AT24C02(2K)属于1K/2K的EEPROM,可以进行8字节的页面写入操作。

而4K、8K、16K的EEPROM则是进行16字节的页写。

stm32 at24c02,stm32,嵌入式硬件,单片机

2、AT24C02读

(1)当前地址读

在读取时,内部数据字地址计数器会保持上次读取或写入操作期间访问的最后一个地址,并且地址会在操作之间保持有效,读取期间的地址“翻转”是从最后一个内存页的最后一个字节到第一页的第一个字节。(在写入时,地址“翻转”是从当前页面的最后一个字节到同一页面的第一个字节。)

主器件首先会发送起始信号和从器件地址信息(读写置为1),等待从器件的应答信号。接着主器件发送一个字节地址信息,告诉从器件要读取哪个地址的数据。从器件收到地址信息后,会应答一个8位字节数据,并将地址计数器加1。主器件不发送应答信号,但会产生一个停止信号。如果主器件想要读取更多的数据,就可以在读取完一个地址的数据后,重复上述过程,即发送下一个地址的信息,直到读取完所有需要的数据为止。

stm32 at24c02,stm32,嵌入式硬件,单片机

(2)随机读取

随机读取需要在数据字地址中加载一个“伪”字节写入序列。一旦设备地址字和数据字地址被EEPROM计时并确认,主设备就必须产生另一个启动条件(RESTART)。

主设备现在通过发送具有读/写选择位高的设备地址来启动当前地址读取。EEPROM确认设备地址并串行时钟输出8位的字节数据。主设备不应答,产生停止条件,随机读取操作终止。

stm32 at24c02,stm32,嵌入式硬件,单片机

(3)顺序读取

顺序读取由当前地址读取或运行的dom地址读取启动。在主设备接收到一个数据字之后,它发送一个应答。只要EEPROM接收到应答,它就会继续增加字节数据的地址,并以串行时钟周期地输出顺序数据字。当达到内存地址限制时,数据字地址将“翻转”,顺序读取将继续。最后主设备不应答,产生停止条件,顺序读取操作终止。

stm32 at24c02,stm32,嵌入式硬件,单片机文章来源地址https://www.toymoban.com/news/detail-849645.html

到了这里,关于STM32——AT24C02(EEPROM )的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 6、单片机与AT24C02的通讯(IIC)实验(STM32F407)

    IIC简介 I2C(IIC,Inter-Integrated Circuit),两线式串行总线,由PHILIPS公司开发用于连接微控制器及其外围设备。 它是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,高速IIC总线一般可达400kbps以上。 IIC是半双工通信方式。 多主机

    2024年02月20日
    浏览(66)
  • 蓝桥杯嵌入式(G4系列)HAL:IIC通信之AT24C02与MCP4017

    目录 前言: IIC协议简介: 1、起始信号和停止信号: 2、应答信号: 3、读写字节: AT24C02: 字节写操作: 页写操作: 读操作: MCP4017: 写操作: 读操作:         本篇文章主要介绍IIC通信协议,同时给大家介绍一下蓝桥杯嵌入式的模块的AT24C02和MCP4017,此外本篇博客会采

    2023年04月09日
    浏览(85)
  • STM32读取EEPROM存储芯片AT24C512故障然后排坑记录

    有一个项目用到STM32F091芯片去读取 AT24C512C-SSHD  EEPROM 芯片,我直接移植了之前项目的IIC库,结果程序运行后,读不出EEPROM里面的数据。 本文主要介绍一个基于STM32F091芯片和AT24C512C-SSHD EEPROM芯片的项目,该项目旨在读取EEPROM芯片中的数据。我直接移植了之前项目的库,但是遇

    2024年02月01日
    浏览(51)
  • M24C02和AT24C02读写失败的原因

    最近做项目发现换了个st 的24c02 ,导致 24c02 读写失败。一般不认真看规格书,很难发现问题根源。原来是停止信号时序问题。脸都搞绿了,后来还怀疑是芯片不良导致了,换了几个芯片还是一样的问题。芯片厂家不厚道。没意思。 解决办法: 代码如下,恭喜有缘人少走一个

    2024年02月12日
    浏览(38)
  • AT24C02读写操作 一

    #include \\\"stm32f10x.h\\\" //STM32头文件 #include \\\"sys.h\\\" #include \\\"delay.h\\\" #include \\\"usart.h\\\" #include \\\"at24c02.h\\\" int main (void){//主程序     u8 a;     u8 recvbuf[10]={0};          //NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级     NVIC_Configuration();   

    2024年01月19日
    浏览(54)
  • AT24C02芯片使用介绍

    AT24C02简介       AT24C02是一个2K位串行CMOS E2PROM,内部含有256个8位字节,有一个16字节页写缓冲器。该器件通过IIC总线接口进行操作,有专门的写保护功能。应用于AT24C02制造过程的先进CMOS技术实质上减少了器件的功耗。              AT24C02特性       1、采用I2C 总线传输数据

    2023年04月14日
    浏览(40)
  • 【【51单片机的AT24C02】】

    AT24C02 先介绍一下存储器的知识 这里的重点肯定是I2C总线 存储器 分为2种 一种是易失性存储器RAM 还有一种是非易失性存储器ROM RAM分为 SRAM 和 DRAM Mask ROM PROM EPROM E2PROM 这几个是一个家族的 从创建之后 不能修改 然后 只能写一次 再而发展成可擦除可编程存储器EPROM E2PROM 电可擦

    2024年02月16日
    浏览(43)
  • 51单片机使用AT24C02

    本篇文章将带大家了解一个常用的存储器件AT24C02,使用此器件可以帮助我们保存一些数据,在单片机掉电后可以将需要的数据保存下来。 AT24C02是Atmel公司推出的一款串行EEPROM存储器。它具有2K位存储单元,可以存储256个8位字节数据,采用2线串行接口(I2C总线接口),支持多

    2023年04月20日
    浏览(65)
  • 蓝桥杯单片机之AT24C02模块的使用

    EEPROM EEPROM (Electrically Erasable Programmable read only memory)是指带电可擦可编程只读存储器。是一种 掉电后数据不丢失 的存储芯片。 可以参考ROM、PROM、EPROM、EEPROM、Flash ROM的区别 AT24C02 AT24C02 提供2048 位串行电可擦除可编程只读存储器(EEPROM ),内部有256个字,每个字8位,即2k Bit。通过

    2023年04月20日
    浏览(51)
  • AT24C02(I2C总线)通信的学习

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 学习AT24C02(I2C总线)芯片 RAM()存储速度较快,但容易丢失数据。ROM(Read Only Memory)存储速度较慢,但掉电不丢失数据。在使用时需要两者结合先存入RAM再转存到ROM中。 AT24C02是一种可以实现掉电不丢失

    2024年02月20日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包