STM32基础(12)IIC读写AT24C02(EEPROM)

原理

IIC介绍

I2C(Inter-Integrated Circuit)总线是由 PHILIPS 公司开发的两线式串行总线,用于连接微控制器及其外围设备。它是同步通信的一种特殊形式,由于管脚少、硬件实现简单、可扩展性强等特点,被广泛的使用在各大集成芯片内。

主机:启动数据传送并产生时钟信号的设备

从机:被主机寻址的器件

主模式:用 I2CNDAT 支持自动字节计数的模式;位 I2CRM,I2CSTT,I2CSTP控制数据的接收和发送

从模式:发送和接收操作都是由 I2C 模块自动控制的

发送器:发送数据到总线的器件

接收器:从总线接收数据的器件

IIC协议层:

  1. 数据有效性规定:时钟信号为高电平期间,数据线上的数据必须保持稳定,IIC发送数据以字节为单位,从高位开始发送

  1. 起始停止信号:SCL 线为高电平期间,SDA 线由高向低电平的变化表示起始信号,SDA 线由低向高电平的变化表示终止信号。

  1. 应答信号:响应包括“应答(ACK)”和“非应答(NACK)”两种信号。当设备(无论主从机)接收到 I2C 传输的一个字节数据或地址后,若希望对方继续发送数据,则需要向对方发送“应答(ACK)”信号即特定的低电平脉冲,发送方会继续发送下一个数据;若接收端希望结束数据传输,则向对方发送“非应答(NACK)”信号即特定的高电平脉冲,发送方接收到该信号后会产生一个停止信号,结束信号传输。

  1. 总线的寻址方式:从机的地址由固定部分4位和可编程部分3位组成,D7~D1 位组成从机的地址。D0 位是数据传送方向位,为“0”时表示主机向从机写数据,为“1”时表示主机由从机读数据。

  1. 数据传输:有阴影部分表示数据由主机向从机传送,无阴影部分则表示数据由从机向主机传送。A 表示应答,A 非表示非应答(高电平)。S 表示起始信号,P表示终止信号。
    1. 主机向从机发送数据

    1. 主机向从机读数据

  • 4
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值