- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
目前世界各大公司为用户提供了一系列具有SPI接口的单片机和外围接口芯片,例如Motorola公司存储器MC2814、显示驱动器MC14499和MC14489等各种芯片;美国TI公司的8位串行A/D转换器TLC549、10位串行A/D转换器TLC1549、12位串行A/D转换器TLC2543等。 SPI外围串行扩展系统的从器件要具有SPI接口。主器件是单片机。AT89S51单片机不带有SPI接口,可采用软件与I/O口结合来模拟SPI的接口时序。在SPI总线系统扩展的应用设计中,扩展串行D/A转换器和串行A/D转换器应用较多,AT89S51单片机与带有SPI串行接口的12位A/D转换器TLC2543的扩展设计案例将在11.7节介绍。 * 10.3 I2C总线的串行扩展 I2C(Inter Interface Circuit)全称为芯片间总线,是应用广泛的芯片间串行扩展总线。目前世界上采用的I2C总线有两个规范,分别由荷兰飞利浦公司和日本索尼公司提出,现在多采用飞利浦公司的I2C总线技术规范,它已成为电子行业认可的总线标准。采用I2C技术的单片机以及外围器件种类很多,目前已广泛用于各类电子产品、家用电器及通信设备中。 10.3.1 I2C串行总线系统的基本结构 I2C串行总线只有两条信号线,一条是数据线SDA,另一条是时钟线SCL。SDA和SCL是双向的, I2C总线上各器件的数据线都接到SDA线上,各器件的时钟线均接到SCL线上。 I2C总线系统的基本结构如图10-6所示。 * * 图10-6 I2C串行总线系统的基本结构 带有I2C总线接口的主器件可直接与具有I2C总线接口的各种从器件(如存储器、I/O芯片、A/D或D/A转换器、键盘、显示器、日历/时钟芯片)连接。由于I2C总线采用纯软件的寻址方法,无需片选线的连接,这样就大大简化了总线数量。I2C串行总线的运行由主器件控制。主器件是指启动数据的发送(发出起始信号)、发出时钟信号、传送结束时发出终止信号的器件,通常由单片机来担当。从器件可以是存储器、LED或LCD驱动器、A/D或D/A转换器、时钟/日历器件等,从器件必须带有I2C串行总线接口。 当I2C总线空闲时,SDA和SCL两条线均为高电平。由于连接到总线上器件的输出级必须是漏级或集电极开路的,只要有一个器件任意时刻输出低电平,都将使总线上的信号变低,即各器件的SDA及SCL都是“线与”的关系。由于各器件输出端为漏级开路,故必须通过上拉电阻接正电源(图10-6中的两个电阻),以保证SDA和SCL在空闲时被上拉为高电平。 * SCL线上的时钟信号对SDA线上的各器件间的数据传输起同步控制作用。SDA线上的数据起始、终止及数据的有效性均要根据SCL线上的时钟信号来判断。 在标准的I2C普通模式下,数据的传输速率为100kbit/s,高速模式下可达400kbit/s。总线上扩展的器件数量不是由电流负载决定的,而是由电容负载确定的。I2C总线上的每个器件的接口处都有一定的等效电容,器件越多,电容值就越大,就会造成信号传输的延迟。总线上允许的器件数以器件的电容量不超过400pF(通过驱动扩展可达4000pF)为宜,据此可计算出总线长度及连接器件的数量。每个连到I2C总线上的器件都有一个唯一的地址,扩展器件数目的多少也要受器件地址数目的限制。 * I2C总线应用系统允许多主器件,但是在实际应用中,经常遇到的是以单一单片机为主器件,其他外围接口器件为从器件的情况。 10.3.2 I2C总线的数据传送规定 1.数据位的有效性规定 I2C总线在进行数据传送时,每一数据位的传送都与时钟脉冲相对应。时钟脉冲为高电平期间,数据线上的数据必须保持稳定,在I2C总线上,只有在时钟线SCL为低电平期间,数据线SDA上的电平状态才允许变化,如图10-7所示。 * 图10-7 数据位的有效性规定 2.起始信号和终止信号 根据I2C总线协议,总线上数据信号的传送由起始信号(S)开始、由终止信号(P)结束。起始信号和终止信号都由主器件发出,在起始信号产生后,总线就处于占用状态;在终止信号产生后,总线就处于空闲状态。下面结合图10-8介绍有关起始信号和终止信号的规定。 * 图10-8 起始信号和终止信号 (1)起始信号S。在SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号,只有在起始信号以后,其他命令才有效。 (2)终止信号P。在SCL线为高电平期间,SDA线由低电平向高电平的变化表 示终止信号。随着终止信号的出现,所有外部操作都结束。 3.I2C总线上数据传送的应答 I2C总线进
原创力文档


文档评论(0)