• 二线制I2C CMOS串行EEPROM


    二线制I2C CMOS串行EEPROM是一种采用CMOS工艺制成的串行可用电擦除可编程随机读写存储器。

    1、I2C总线特征介绍

    I2C(Inter Integrated Circuit)双向二进制总线,简而言之就是有两根线。一根是数据线(sda),另一根是时钟线(scl)。

    • scl,是输入端口
    • sda,是输出/输出的双向端口
      I2C总线协议定义为:只有在总线处于“非忙”状态时,数据传输才能开始。数据传输期间,只要时钟线为高电平,数据线都必须保持稳定,否则数据线上任何变化都被当做“启动”或者“停止”信号。下图描述I2C双向二进制串行总线的协议波形图。
      I2C双向二进制串行总线.png
    • A:总线非忙状态,数据线(sda)和时钟线(scl)都保持高电平。
    • B:启动状态,数据线(sda)下降沿并且时钟线(scl)处于高电平。只有“启动信号”发出以后,其他的命令才有效。
    • C:写状态,可以对数据线(sda)进行数据的写入修改,数据线(sda)可以变化并且时钟线(scl)处于低电平状态。
    • D:读状态,数据线(sda)的数据不能改变,数据线(sda)不变并且时钟线(scl)处于高电平状态。
    • E:停止状态,数据线(sda)上升沿并且时钟线(scl)处于高电平状态。
      注意:
      1、每一个数据的传输都会开始于“启动信号”,结束于“停止信号”。

      2、每个正在接收数据的EEPROM在接收到一个字节的数据后,通常需要发出一个应答信号,而每个正在发送数据的EEPROM在发出一个字节的数据后,通常要接收一个应答信号。
      3、所谓的应答信号是将数据线拉低,也就是低电平信号,非应答信号就是高电平信号。
      4、在读操作中,结束时发送非应答信号,然后发送通知信号。
    1.1 EEPROM的写入和读出方式

    串行EEPROM一般具有两种写入方式:一种是字节写入方式;一种是页写入方式。允许在一个写周期内对一个字节到一页的若干个字节进行编程写入。
    为了程序的简单起见,我们这里只讨论串行EEPROM的一个字节的写入和读出方式。

    1.2 写操作

    EEPROM的写操作(字节编程方式):通过读写控制器把一个字节数据发送到EEPROM中指定地址的存储单元。过程如下:EEPROM读写控制器发出启动信号,紧跟着是8位的控制字,然后接收到一个应答信号,接着是EEPROM存储单元的地址,然后接收到一个应答信号,接着是要写入的8位数据,然后接收到一个应答信号,便产生停止信号。
    字节写入帧格式.png

    8bit的控制字.png
    在这里我还是想再次强调一下,sda上的应答信号有效时是低电平,非应答信号是高电平。sda是双向的,在进行数据的写入时,应答信号是接收到的,是输入信号;在进行控制字、地址和数据的写入时,是输出信号。深入理解sda上的数据是怎样来的是十分重要的,必须要彻底理清自己的思路才能着手写代码,要不然会十分混乱!

    1.3 读操作

    EEPROM的读操作:通过读写控制器读取EEPROM中指定地址的存储单元中的一个字节数据。串行EEPROM的读操作分为两步进行,读写控制器发送一个启动信号,紧接着是控制字,然后接收到一个应答信号,接着是EEPROM存储单元指定地址,然后接收到一个应答信号,再接着发送一个启动信号,紧接着是控制字,接收应答信号,读出数据,接收非应答信号,最后发出停止信号。
    读指定地址存储单元的数据帧格式.png
    这里要强调一下,在读操作进行时,在读出数据时,sda是输出端口并且接收一个非应答信号。
    小结:充分了解I2C总线协议是很必要的,特别是对sda这个双向端口,何时是输出端何时是输入端更是对设计有着重要的影响。把握住全局,理清设计思路才能写出优秀的代码。下面,我们就EEPROM 的Verilog HDL程序进行一个专题的系列介绍。参照了夏宇闻老师的《Verilog 数字系统设计教程》。

  • 相关阅读:
    基于 HTML5 WebGL 的 水泥工厂可视化系统
    基于 HTML5 WebGL 的楼宇智能化集成系统(二)
    基于 HTML5 WebGL 的楼宇智能化集成系统(一)
    20200601
    App上线-Unexpected CFBundleExecutable Key
    'CALayer position contains NaN: [nan nan]'异常
    shareSDK由4.2.8升级成4.3.7详解(微信sdk自动升级为1.8.6+)
    从0开始教你 swift
    20年开篇
    19再见,20你好
  • 原文地址:https://www.cnblogs.com/xuqing125/p/8963190.html
Copyright © 2020-2023  润新知