Proteus仿真C51的I2C

本文介绍了I2C总线的基本概念,包括二线传输、器件地址和传输过程。详细阐述了I2C的起始信号、终止信号、应答信号以及数据传输规则。同时,通过24C02C串行EEPROM为例,详细说明了写操作和读操作的步骤,强调了页操作的注意事项以及在STOP和START之间的等待时间。最后,给出了实验中使用的电路图和部分汇编程序代码。
摘要由CSDN通过智能技术生成

第一次写博客,有点小紧张哈

    首先介绍一下I2C总线:I2C总线采用二线传输,分别是串行数据线SDA(Serial Data Line)和串行时钟线SCL(Serial Clock Line),所有的I2C器件都连接在SDA和SCL上。(为了避免总线信号的混乱和冲突,I2C总线接口电路均为漏极开路或集电极开路,因此总线上必须有上拉电阻,上拉电阻与电源电压VDD和SDA/SCL总线串接电阻有关,一般选择5-10K)

    I2C总线上连接的器件都是总线上的节点,每个时刻只有一个主控器件操控总线,每个器件有一个唯一确定的地址。器件的地址由7位组成,其后附加了1个方向位,以确定数据传输方向,这8位构成了传输起始状态后的第一字节,器件地址由4位固定位和3位可编程位组成。当主器件发送了数据帧第一字节后,总线上的所有从器件会将接收到的地址数据与自己的地址比对,被选中的器件根据方向位确定接受和发送数据。

                                                

    I2C总线的传输过程:(1)起始信号(S):在时钟信号SCL为高电平时,数据线SDA从高电平变为低电平产生起始条件,标志着启动I2C总线。 (2)终止信号(P):在时钟信号SCL为高电平时,数据线SDA从低电平变为高电平,标志着终止I2C总线传输过程。 (3)应答信号(A/NA):I2C总线协议规定总线每传输一个字节数据后,都要有一个应答位,应答位由接收器接收。接收方可以接收数据时,产生应答信号ACK,不能接受数据时,产生非应答信号NACK,此时发送器应当终止发送。当主器件接收从器件送来的最后一个数据后,必须给从器件发送一个非应答信号NACK,令总线释放SDA信号线。 (4)数据信

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值