基于CPLD的系统中I2C总线的设计

发布时间:2023-07-02 15:01:28

I2C总线是PHILIPS公司推出的新一代串行总线,其应用日渐广泛?1~2?。目前许多单片机都带有I2C总线接口,能方便地实现I2C总线设计;对没有I2C总线的微控制器(MCU),可以采用两条I/O口线进行模拟。在以单片机为MCU的系统中很容易实现I2C总线的模拟扩展,有现成的通用软件包可以使用?2~3?。

对有些基于CPLD的系统,要与带有I2C总线接口的*器件连接,实现起来相对复杂一些。为实现系统中的I2C总线接口,可以另外引入单片机,也可以采用PCF8584或者PCA9564器件(PHILIPS公司推出的专用I2C总线扩展器)进行扩展,但这样会增加系统成本,使系统冗余复杂。像ALTERA、XILINX等一些大公司有专用的基于CPLD器件的I2C总线IP核,但这些IP核的通用*不强,需要的*控制信号较多,占用系统很大的资源,因此直接采用这种IP核不可取。

基于CPLD的系统中I2C总线的设计

鉴于此,依照I2C总线协议的时序要求,在基于CPLD的系统中开发了自己的I2C总线IP核。对于一些带有I2C总线接口的*器件较少、对I2C总线功能要求较简单的CPLD系统,自主开发IP核显得既经济又方便。

1I2C总线的协议

I2C总线仅仅依靠两根连线就实现了完善的全双工同步数据传送:一根为串行数据线(SDA),一根为串行时钟线(SCL)。该总线协议有严格的时序要求。总线工作时,由时钟控制线SCL传送时钟脉冲,由串行数据线SDA传送数据。总线传送的每帧数据均为一个字节(8bit),但启动I2C总线后,传送的字节个数没有限制,只要求每传送一个字节后,对方回应一个应答位(AcknowledgeBit)。发送数据时首先发送数据的最高位(MSB)。

I2C总线协议规定,启动总线后第一个字节的高7位是从器件的寻址地址,第8位为方向位(“0”表示主器件对从器件的写*作;“1”表示主器件对从器件的读*作),其余的字节为*作的数据。总线每次传送开始时有起始信号,结束时有停止信号。在总线传送完一个或几个字节后,可以使SCL线的电平变低,从而使传送暂停。

图1列出了I2C总线上典型信号的时序,图2表示I2C总线上一次完整的数据传送过程。

依据I2C总线的传输协议,总线工作时的具体时序如下:

起始信号(S):在时钟SCL为高电平期间,数据线SDA出现由高电平向低电平的变化,用于启动I2C总线,准备开始传送数据;

停止信号(P):在时钟SCL为高电平期间,数据线SDA出现由低电平向高电平的变化,用于停止I2C总线上的数据传送;

应答信号(A):I2C总线的第9个脉冲对应应答位,若SDA线上显示低电平则为总线“应答”(A),若SDA线上显示高电平则为“非应答”(/A);

数据位传送:I2C总线起始信号或应答信号之后的第1~8个时钟脉冲对应一个字节的8位数据传送。在脉冲高电平期间,数据串行传送;在脉冲低电平期间,数据准备,允许总线上数据电平变化。

2应用实例

2.1实例模型介绍

现举某应用实例,要求对显示器的视频信号进行采集、处理和再显示,整个系统采用CPLD器件进行控制。信号采集采用A/D公司的专用视频采集芯片AD9883,该芯片在使用前需要依据实际的功能指标进行初始化。

看了基于CPLD的系统中I2C总线的设计还看了:
  • 基于IIS总线的嵌入式音频系统设计

    嵌入式音频系统广泛应用于GPS自动*、PDA、3G手机等嵌入式领域,但目前国内在这方面的研究较少。音频系统设计包括软件设计和硬件设计两方面,在硬件上使用了基于IIS总线的音频系统体系结构。IIS(Inter-ICSoundbus)又称I2...

  • 基于DSP和CPLD的高精度频率测量系统设计

    介绍了以CPLD(ComplexProgrammableLogicDevice)为核心处理芯片的频率测量系统,整个系统由信号调理电路、CPLD和DSP等构成,在CPLD中设计等精度测频模块,再由DSP进行数字滤波并将采集值送至双口RAM以供...

  • I2C器件接口IP核的CPLD设计

    由于CPLD数字设计结构化的趋势,将出现针对CPLD不同层次的IP(IntellectualProperty)核。各个IP核可重复利用,可大大提高设计能力和效率。国外各大公司都推出了专门的IP核,我国也迫切需要发展自己的IP核。本文针对I2...

  • 嵌入式系统中的线*Flash文件系统设计

    在嵌入式系统中,为了便于对闪存(Flash)空间进行管理,会采用文件的形式来访问Flash。目前,可以购买到的Flash文件系统一般都是兼容DOS的文件系统(FlashFileSystem,FFS),这对需要一个具有复杂的目录层次,并且DD...

  • 基于CAN总线的EV电控系统通信的设计与开发

    随着汽车上电子控制装置越来越多,车身布线也愈来愈复杂,使得运行可靠*降低,故障维修难度加大。为了提高信号的利用率,要求大批数据信息能在不同的电控单元*享,同时汽车综合控制系统中大量的控制信号也能实时进行交换。但是,传统的汽车电子系统采用串...