STM32F407-IIC通讯与EEPROM-0-理论知识

IIC通讯

IIC是一种串口通讯协议,它有两根线组成,一根SCL时钟线,一根SDA数据线。需要通讯的双方都挂在在IIC总线上,通过IIC协议进行通讯。
主机:数据的发送方
从机:数据的接收方

  1. 主机先发出起始信号,然后发送7位从机地址信息+1位读写标志位
    0写,1,读
  2. 从机检查自己的地址信息,地址信息相同,发送ACK应答。(1)
  3. 主机发送数据。
  4. 从机收到数据,发送ACK应答(1)。
  5. 重复步骤3、4。
  6. 从机发送结束信号。

IIC的起始信号:

起始信号
起始信号:时钟线SCL保持高电平,数据线SDA由高拉低。

IIC结束信号:

结束信号
结束信号:时钟线保持高电平,数据线由低拉高。

IIC数据信号:

在这里插入图片描述

数据发送过程中,SCL要保持高电平,SDA高电平则标识发送1,SDA低电平则表示发送0。
在SCL为高电平时,禁止SDA发生变化。
SDA如果要切换,需要把SCL先拉低,然后SDA可以切换,切换完成后,再将SCL拉高。

EEPROM

EEPROM存储器为掉电不丢失数据。
这里使用的是AT24C02。大小为2K bit,为256字节。8个字节为一页。按页操作。

操作方式:

  1. 一个字节写入
    在这里插入图片描述

  2. 按页写入
    在这里插入图片描述
    注:按页写需要注意,如果超出页的大小,会覆盖页开头数据。

  3. 当前地址读
    在这里插入图片描述
    当前地址读的操作比较少。

  4. 随机读
    在这里插入图片描述
    随机读是IIC通讯的复合操作,第一步先写要读的地址,然后再触发IIC通讯,读出数据。

  5. 顺序读
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值