首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

蓝桥杯嵌入式之EEPROM讲解

蓝桥杯开发板板载一个AT24C02的2KB的EEPROM芯片,主要考察对IIC通信的掌握。IIC通信因其需要的数据线少、通信方式可自己决定等优点在嵌入式开发板中运用很多。...AT24C02需要2根数据线(一根为数据线,一根为时钟线)就可以与开发板进行通信。 IIC初始化 因为EEPROM的通信方式IIC通信,所以需要对IIC进行初始化。...IIC初始化代码为 i2c_init(); AT24C02指定地址读取数据 /** * @说明 从AT24C02指定地址读出一个字节数据 * @参数 address:AT24C02...比赛的时候只提供IIC原始函数,AT24C02的读写代码需要自己组织代码,难点是逻辑顺序会记错,导致代码无法使用 AT24C02向指定地址写入指定数据 /** * @说明 向AT24C02...需要注意的是AT24C02的地址是从0x00~0xff,如果超出该地址值会出现错误。地址和写入或读取的数据的类型都是字符型,其他类型的数据有可能出现错误。

1.1K21

可编程 USB 转串口适配器开发板 USB 转 UART I2C 应用

USB2S 板上已有 1 片 AT24Cxx(默认为 AT24C02),设备地址为 0xA0。...A0 00 2 字节数据,AT24C02 芯片地址+要操作的EEPROM 地址 00 01 02 03 向 AT24C02 写入的 4 个字节数据[STOP] 从目标接口输出停止信号,结束本次通讯...1.1.3 从 AT24C02 读取数据 从 AT24C02 读取 4 个字节数据,数据起始地址为 0。...A0 00 2 字节数据,AT24C02 芯片地址+要操作的EEPROM 地址 [START] 从目标接口输出开始信号 [WT1H] 从目标接口输出 1 个字节,后续数据类型为 16 进制。...A1 AT24C02 芯片的读地址 [RD4N] 从目标接口连续读取 4 个字节数据 [STOP] 从目标接口输出停止信号,结束本次通讯 1.1.4 跨页写入数据 AT24C02 每页为 8

1.4K20

4.6 51单片机-EEPROM存储芯片(AT24C02)

AT24C02是一颗2kbit(256字节)的EEPROM。 实验板的原理图上描述是24C16,实际实验板上使用的具体芯片型号是AT24C02。...4.6.2 AT24C02介绍 AT24C02是一个2K位串行EEPROM,内部含有256个字节空间。AT24C02内部有一个8字节页写缓冲器。...图4-6-4 AT24C02设备地址 AT24C02的一个写周期时间为10ms,单片机向AT24C02传输数据时,AT24C02是将数据暂存在8字节的缓冲区里的,单片机发送完数据之后需要等待10ms的时间...写一个字节的总时序 图4-6-10 (6) 向AT24C02写一页数据的总时序 图4-6-11 (7) 从AT24C02当前地址读取一个字节的总时序 图4-6-12 (8)....从AT24C02指定位置读取指定长度数据的总时序 图4-6-13 4.6.4 AT24C02读写数据示例代码 下面代码演示了AT24C02写入数据和读取数据的过程,在主函数里,调用AT24C02写字节函数向指定空间存入数据

1.5K40

STM32Cube-13 | 使用硬件I2C读写EEPROM(AT24C02

AT24C02的原理图如下(该原理图中有bug,A0的上拉电阻无效,实际A0为低电平): ?...AT24C02驱动的编写 确定IIC器件地址 根据AT24C02的 Datasheet 可知AT24C02有2K bit,即256B,分为32页,每页8个字节,结合数据手册和原理图可以得知,板载AT24C02...任意地址写一个字节 根据AT24C02的数据手册可知,AT24C02写一个字节的格式如下: ?...的数据手册可知,AT24C02读一个字节的格式如下: ?...任意地址连续写多个字节 AT24C02连续写字节的时候需要注意,不能使用写单个字节函数连续的写入,因为AT24C02分为了32页,每页是8个字节,如果连续的单字节写入8个字节后,会重复的继续往该页写数据

1.3K31

树莓派I2C接口技术及Python SMBus串行I2C EEPROM应用编程

树莓派与AT24C02 EEPROM接口实验电路 以树莓派3B为例,RPi 3B与AT24C02 EEPROM接口实验电路原理图见图4所示。...设备0#字节单元写入0x60,i2cget 读取AT24C02设备0#字节单元内容显示为0x60,说明写入的数据与读取的数据一致,树莓派读写AT24C02设备操作正常。...图6 读写AT24C02 I2C EEPROM Python程序 I2CAT24C02.py程序顺序读取AT24C02中的256字节单元显示结果见图7所示。 ...图7 Python程序读取AT24C02设备256字节单元的内容并显示 还可使用I2C Tools的i2cdump命令显示AT24C02中的256字节单元内容(见图8)。...由图7和图8可知,读取AT24C02设备字节单元内容的显示结果与写入到AT24C02设备字节单元的数据完全相同。

1K20

STM32通信模拟 I2C

A2、A1、A0引脚电平需要由原理图决定,假设全接电源地,则如果需要向AT24C02写数据,则发送地址“1010 0000”,如果需要向AT24C02读数据,则发送地址“1010 0001”。...假设开发板有多个AT24C02挂在同一I²C总线上,通过这个规则,只需设计电路时,让A2、A1、A0引脚电平不同,即可区分两个AT24C02。...U4的7脚为写保护引脚(Write Protect,WP),当该引脚为高,则禁止写AT24C02,这里直接拉低WP,任何时候都可直接写AT24C02。...9~33行:写AT24C02一字节数据; – 12行:发送I2C开始信号; – 15行:发送AT24C02的设备地址,最后一位表示写操作; – 18~26行:根据EEPROM型号,调用不同的数据地址长度设置函数...8位,AT24C04/08/16 为16位); – 63行:再次发送I2C开始信号; – 66行:发送AT24C02的设备地址,最后一位表示读操作; – 69行:读取AT24C02数据,且无需ACK

81310

(十一)51单片机——用AT24C02实现存储秒表数据(附成果展示)

发送应答  接收应答 I2C数据帧 AT24C02数据帧 字节写 随机读 代码部分 遇到的问题  代码  硬件 ----         今天我们来介绍一下AT24C02,首先呢,它是一种可以实现掉电不丢失的存储器...,可用于保存单片机运行时想要永久保存的数据信息,在介绍AT24C02之前,我们先来介绍一下存储器!...AT24C02介绍           接下来我们来简单介绍一下AT24C02吧!...数据帧         AT24C02数据帧,其实不止这几个,但我们在这里就简单介绍一下这两种!...的六个时序结构拼接而成,所以AT24C02时序帧只需要将他们拼装起来,有点类似与接口和继承的味道,好了,我们先将代码给出!

85420

【STM32】HAL库 STM32CubeMX教程十二—IIC(读取AT24C02 )

4、STM32F1xx/STM32F4xxHAL库 5、IIC: 使用硬件IIC1 知识概括: 通过本篇博客您将学到: IIC的基本原理 STM32CubeMX创建IIC例程 HAL库IIC函数库 AT24C02...应答出现在每一次主机完成8个数据位传输后紧跟着的时钟周期,低电平0表示应答,1表示非应答, 这里我们仅介绍基于AT24C02的IIC通信 以AT24C02为例子 24C02是一个2K Bit的串行...所以这个过程需要一定的时间,AT24C02这个过程是不超过5ms!...Mem_Write是2个地址,Master_Transmit只有从机地址 硬件IIC读取AT24C02 在mian.c文件前面声明,AT24C02 写地址和读地址 ,定义写数据数组,和读数据数组 /...这不是HAL库的bug,而是AT24C02的限制,其他的EEPROM可以支持更多byte的写入。

2.7K31

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券