最后更新:2022-07-18 14:27:42 手机定位技术交流文章
51单片I2C通信,不连线数据存储51芯片和AT24C02通信原理和代码实现
I2C是一个双级串行总线,用于同步通信,一个SCL时钟线和一个SDA数据线。
特点: 小接口线, 简单控制模式, 小装置封装形式, 通信速度高, 硬件实现简单, 广泛.
注:如果AT24C02的SCL和SDA连接有低电压,则 bus上的SDA和SCL都具有低电压。
1. 由于 总线 的 默认 高压 水平,如果没有控制SCL或SDA总线的设备,则这是高压;如果设备占有总线,则需要释放总线时,把SDA和SCL放在1上。当设备需要占用公共汽车来进行通信时,如果设备占有公共汽车,需要等公共汽车开动.
特点:
1.SDA在SCL高压平衡期间必须保持稳定(即SCL在高压平衡期间不能改变)
2.当SCL低时,SDA可以更改水平

初始和终止信号都由主机发送,机器只能对j无法执行的初始和终止通信作出响应。
开头信号后, 公共汽车被占用;
当信号终止时,总线被释放并可以被其他主机使用。
在通信时, 必须在发送初始信号后发送一个地址信号.地址也是一种数据, 就像发送数据的顺序一样.
I2C巴士地址分为7位和10位地址,七位地址定义如下。
例如AT24C02的硬件结构如下:

AT24C02的高四位固定是不变的,设备地址由A0、A1和A2图形脚高度平衡确定。 A0、A1和A2牵引脚都安装在P51单片机上。例如,在写给服务器的数据时,发送地址是:10100,即0xA0;在读取服务器的数据时,主机发送地址:101001,即0xA1。
根据最初的描述,I2C是同步通信的两级串行总线,SCL是时钟线,一个SDA是数据线。
通过同步通信,主机通过控制SCL时钟线来控制机器的时钟,并通过SDA传输数据。
与其他通信协议一样,为了保证数据传输的有效性:
当主机发送数据时,必须等待并从主机接收响应信号(让发送者知道是否继续发送数据)。当数据从主机接收时,必须向主机发送响应或非响应(告诉发送者是否继续发送数据,响应信号(特定低级)继续发送,非响应信号(特定高级)终止发送)服务器到服务器,数据发送时间序列图:
在传输数据时, 时钟线和时间序列线由主机控制.
从机器发送到主机的数据序列
读取数据类似于发送时间序列。
因为数据是读取的,主机必须将SDA总线设置到高压水平,释放SDA总线,SDA总线由主机控制,指定的时间序列是将上述数据发送到时间序列左边,SDA(主机)到SDA(主机),SDA(主机)到SDA(主机)。
AT24C02(英语:AT24C02)是一种用于通信的外部数据存储设备,例如C51主机,AT24C02作为接收器。
当C51将数据写入AT24C02时(即从主机发送数据到接收机):
1.主机发送初始信号
2. 主机发送寻址信号(以普中单片机为例,发送0xA0),找到要接收的设备(AT24C02)。
3.主机发送AT24C02的书面地址。
4.主机发送数据写字
5.传输完成后,主机发送终止信号。
当C51想从AT24C02中的地址读取数据时:(从机器发送数据到主机)
IIC通信是一种两段总线式同步通信协议,AT24C02是一种使用IIC协议的,可断电存储的元器件。不要将IIC通信协议和AT24C02混为一谈。
之后将上传太多的代码文件到github.
本文由 在线网速测试 整理编辑,转载请注明出处。