初出茅庐的小李第45篇博客之学习使用AT24C02存储器使用 |
您所在的位置:网站首页 › at24c02接线 › 初出茅庐的小李第45篇博客之学习使用AT24C02存储器使用 |
AT24C02
8个引脚三个用来接VCC或者GND,其实就是地址选择线,A2 A1 A0 留给我们的编程地址就三位了,通信则采用的是I2C的方式 要想实现数据的存储和读取那首先要明白它和主机(作为存储器件来使用挂在到单片机上我们可以称之为从机)如何通信的 I2C总线协议我就记录我学习的理解吧 I2C总线: 它是一种同步时钟串行总线 用于 单个主设备----------单个主设备 多个主设备----------多个从设备 两条线 SCL–时钟线 SDA–数据线 电气特性: 开漏输出要外接上拉电阻 场效应管导通电平会被拉低,场效应管不导通高阻态通过上拉电阻电平被拉高,只有一条数据线属于半双工通信总线,所有的通信都必须由主机发起。 - i.主设备想要向从设备请求数据 1.发送起始条件并寻址从器件 2.主机发送器将数据发送到从器件 3.主机以停止条件终止传输 ii.主设备想要向从设备接收数据 1.发送起始条件并寻址从器件 2.主接收器发送请求读取的寄存器 3.主机接收从从机发送器接收数据 4.主机发送器以停止条件终止传输 何为起始条件SCK=1; SDA=1;SDA=0; 何为终止条件SCK=1; SDA=0;SDA=1; 理解:数据线数据必须在SCK=1的时候稳定,也就是说不能再产生下降沿或者上升沿,要不然容易被误判位起始条件或者是终止条件。我们为了避免以上情况发生,每次SDA数据先数据变化的时候都要发生在SCK=0的低电平时刻。 什么是应答和不应答(ACK和NACK)应答位是由跟在每一个数据字节的后面一位数据由数据接收的一方发送,并不一定是主机。 SCL=1高电平时刻SDA=1高电平就是无应答 SCK=1高电平时刻SDA=0低电平就是有应答 主器件写数据到从器件 单字节写 S A6 A5 A4 A3 A2 A1 A0 0 A B7 B6 B5 B4 B3 B2 B1 B0 A D7 D6 D5 D4 D3 D2 D1 D0 A P 主器件写数据到从器件 单字节读 S A6 A5 A4 A3 A2 A1 A0 0 A B7 B6 B5 B4 B3 B2 B1 B0 A Sr A6 A5 A4 A3 A2 A1 A0 1 A D7 D6 D5 D4 D3 D2 D1 D0 NA P S代表START A6~A0表示要访问的寄存器地址(器件的地址)就相当于需要送快递的小区地址 0代表是写寄存器(A6~A0) 表示一种动作我要写到这里 A代表是从机的应答位 让不让送快递回个信 B7~B0是主机要送数据到的地址 有点像是快递柜子的具体的位置 A代表从机的应答 回复一下没问题 D7~D0 送的数据内容 (瓜子果皮饮料。。。。。。。。) A收到data后回复 P 就是这个动作结束了stop 下面这个有点类似 只不过在读数据之前也要先说一声去哪里读 沟通好后再次发送START 就可以发地址回复发请求数据地址不回复结束 关于I2C这有一个比较好的图
其实这个页写和页读没有看明白。。。。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |