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

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

3天内不再提示

MM32G0140 I2C驱动EEPROM

灵动MM32MCU 来源:灵动MM32MCU 2023-05-19 09:22 次阅读

1EEPROM 简介

EEPROM全称为EEPROM(Electrically Erasable Programmable Read Only Memory)是电可擦除可编程只读存储器。虽然名称为只读存储器,但是擦除和写入都是直接使用电路控制,不需要再使用外部设备来擦写,即设备在运行过程中即可随时擦除和写入。可以按字节为单位修改数据,无需整个芯片擦除,且掉电后数据不丢失,一般用来存储一些配置信息,以便系统重新上电的时候加载。

2EPROM 操作说明

2.1 通讯方式

主要通讯方式有 I2C 和 SPI 协议,本文将介绍如何通过 I2C 来驱动EEPROM。

2.2 设备地址

如果仅接入一个AT24C02,可以将设备的A0、A1、A2引脚全部接入低电平,那么此时该设备的地址为0xA0。

f4ce9f0c-f574-11ed-90ce-dac502259ad0.png    

2.3 I2C配置流程

开时钟,外设清零,参数配置,初始化,引脚配置,使能

f4d3f56a-f574-11ed-90ce-dac502259ad0.png    

2.4 写入数据

写入一个字节:

MCU先向AT24C02写入一个地址,然后再写入数据。

写入一页:

MCU先向AT24C02写入一个地址,然后再依次写入数据,注意AT24C02一页有8个字节,每页开始地址均是8的整数倍,一次页写入操作地址不能超过当前页的尾地址。

连续写入:

AT24C02本身没有提供连续写入的操作,因此必须先将数据按页地址分为若干页,然后再依次调用页写入操作进行写入。

f4d9dc64-f574-11ed-90ce-dac502259ad0.png    

2.5 读出数据

读取当前字节:

MCU直接发起读操作,设备返回当前字节,当前字节自动加1,该操作较少使用。

读取指定地址一个字节:

MCU先向AT24C02写入一个地址,然后再发起一个读操作,AT24C02返回该地址存储的字节。

连续读取:

MCU发起读当前字节,或者读指定地址字节,设备返回数据,MCU发送ACK,设备继续返回后续地址数据,直到MCU发送NACK,设备不再返回数据。

f4e13c66-f574-11ed-90ce-dac502259ad0.png    

2.6 样例测试

初始化两个数组,配置I2C,调用写入和读取的函数操作EEPROM,通过串口打印观察结果。

f4e6049e-f574-11ed-90ce-dac502259ad0.png

运行实例

f4eaa012-f574-11ed-90ce-dac502259ad0.png

审核编辑:汤梓红

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

    关注

    456

    文章

    51157

    浏览量

    426715
  • 存储器
    +关注

    关注

    38

    文章

    7528

    浏览量

    164271
  • 通讯
    +关注

    关注

    9

    文章

    911

    浏览量

    35035
  • EEPROM
    +关注

    关注

    9

    文章

    1033

    浏览量

    81902
  • I2C
    I2C
    +关注

    关注

    28

    文章

    1495

    浏览量

    124420

原文标题:灵动微课堂 (第256讲)|MM32G0140 I2C驱动EEPROM

文章出处:【微信号:MindMotion-MMCU,微信公众号:灵动MM32MCU】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于I2C总线的EEPROM驱动程序

     I2C总线是由Philips公司开发的用于器件之间连接的2线式双向同步串行总线。Linux内核中针对I2C总线的特性,其设备驱动使用了一种特殊的体系结构。介绍了MPC825
    发表于 12-07 13:58 55次下载

    I2C—读写EEPROM

    EEPROM 芯片。 学习目的:学习STM32的I2C驱动。 【*】注意事项: 无 【 !】实验操作: 电脑端使用串口调试助手,选择电脑与STM32相连的COM口,设置为115200-N-8-1, 复位
    发表于 12-13 15:12 23次下载

    如何在 Arria 10 中设计 I2C EEPROM

    在 Arria 10 中设计 I2C EEPROM
    的头像 发表于 06-22 01:11 3269次阅读
    如何在 Arria 10 中设计 <b class='flag-5'>I2C</b> <b class='flag-5'>EEPROM</b>

    STM32学习之I2C协议(读写EEPROM

    关于STM32学习分享第七章 I2C协议(读写EEPROM)文章目录关于STM32学习分享前言二、代码1.i2c.c2.i2c.h3.main.c总结前言开始!开始!单片机的I2C协议
    发表于 11-30 15:21 32次下载
    STM32学习之<b class='flag-5'>I2C</b>协议(读写<b class='flag-5'>EEPROM</b>)

    使用I2C读取24cxx串行EEPROM

    Read 24cxx serial EEPROM with I2C
    发表于 06-30 15:10 1次下载
    使用<b class='flag-5'>I2C</b>读取24cxx串行<b class='flag-5'>EEPROM</b>

    基于MM32生态实现I2C接口通讯的方式

    对于I2C的基本概念及时序等知识点,本文不再详细描述,大家可以下载附件中的《I2C总线概要》和《I2C总线规范》进行研究。 本文将通过如下四个方面,讲述I2C
    的头像 发表于 08-15 09:48 1725次阅读

    Linux I2C驱动入门知识科普

    I2C 总线驱动I2C总线驱动就是SOC的 I2C控制器驱动,也叫做
    的头像 发表于 12-29 13:59 1758次阅读

    如何使用I2C EEPROM

    电子发烧友网站提供《如何使用I2C EEPROM.zip》资料免费下载
    发表于 02-03 09:53 0次下载
    如何使用<b class='flag-5'>I2C</b> <b class='flag-5'>EEPROM</b>

    MM32G0140 产品手册(中文版)

    MM32G0140 产品手册(中文版)
    发表于 02-27 18:18 0次下载
    <b class='flag-5'>MM32G0140</b> 产品手册(中文版)

    MM32G0140 产品手册(英文版)

    MM32G0140 产品手册(英文版)
    发表于 02-27 18:19 0次下载
    <b class='flag-5'>MM32G0140</b> 产品手册(英文版)

    MM32G0140 用户手册(中文版)

    MM32G0140 用户手册(中文版)
    发表于 02-27 18:20 0次下载
    <b class='flag-5'>MM32G0140</b> 用户手册(中文版)

    MM32G0140 用户手册(英文版)

    MM32G0140 用户手册(英文版)
    发表于 02-27 18:20 0次下载
    <b class='flag-5'>MM32G0140</b> 用户手册(英文版)

    灵动微MM32G0140完美替换兼容STM32G031系列

    灵动微MM32G0140可完美替换兼容STM23G031系列,MM32G0140所集成的FlexCAN-FD提供了更快的通信速度、更长的数据长度和更多的帧格式等优势。ADC为电机应用做了优化,支持
    的头像 发表于 04-07 17:33 969次阅读
    灵动微<b class='flag-5'>MM32G0140</b>完美替换兼容STM32<b class='flag-5'>G</b>031系列

    MM32G0140 I2C驱动EEPROM

    EEPROM全称为EEPROM(Electrically Erasable Programmable Read Only Memory)是电可擦除可编程只读存储器。
    发表于 05-30 11:15 645次阅读
    <b class='flag-5'>MM32G0140</b> <b class='flag-5'>I2C</b><b class='flag-5'>驱动</b><b class='flag-5'>EEPROM</b>

    使用C2000 I2C模块连接EEPROM

    电子发烧友网站提供《使用C2000 I2C模块连接EEPROM.pdf》资料免费下载
    发表于 08-27 09:53 0次下载
    使用<b class='flag-5'>C</b>2000 <b class='flag-5'>I2C</b>模块连接<b class='flag-5'>EEPROM</b>