- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 C51单片机系统扩展 (3)在单主系统中,每个I2C总线接口芯片具有唯一的器件地址,各器件间互不干扰,相互之间不能通信,MCU和I2C器件间的通信是通过独一无二的器件地址实现。 (4)PHILIPS公司在推出I2C总线的同时制定了严格的规范,如接口的电器特征、型号时序、信号传送的定义等,决定了I2C总线软件编写的一致性。 6.4.2 I2C总线的电气连接 I2C总线采用二线制传输,一根是数据线SDA(Serial Data Line),另一根是时钟线SCL(Serial Clock Line),所有I2C器件都连接在SDA和SCL上, I2C总线支持多主和主从两种工作方式。一般I2C总线工作在主从工作方式,只有一个主器件,其它均为从器件,主器件对总线有控制权。在多主方式中,通过硬件和软件仲裁,主控制器取得总线控制权。 第6章 C51单片机系统扩展 第6章 C51单片机系统扩展 6.4.3 I2C总线的寻址方式 (1)数据帧格式 D7~D4(DA3~DA0):固定位,由生产厂家给出,用户不能改变。 D3~D1(A2~A0):可编程位,与器件的地址管脚的连接相对应,当系统中使用了多个相同芯片时可进行正确访问。引脚(A1,A0)和器件在电路中的实际接法有关(地址线、电源和地),形成地址数据。 第6章 C51单片机系统扩展 (2)寻址字节中的特殊地址 地 址 位 R/W 意 义 0 0 0 0 0 0 0 0 通用呼叫地址 0 0 0 0 0 0 0 1 起始字节 0 0 0 0 0 0 1 × CBUS地址 0 0 0 0 0 1 0 × 为不同总线的保留地址 0 0 0 0 0 1 1 × 保留 0 0 0 0 1 × × × 1 1 1 1 1 × × × 1 1 1 1 0 × × × 十位从机地址 第6章 C51单片机系统扩展 (3)总线寻址 I2C总线协议有明确的规定:采用7位的寻址字节(寻址字节是起始信号后的第一个字节)。 主机发送地址时,总线上的每个从机都将这7位地址码与自己的地址进行比较,如果相同,则认为自己正被主机寻址,根据位将自己确定为发送器或接收器。 从机的地址由固定部分和可编程部分组成。在一个系统中可能希望接入多个相同的从机,从机地址中可编程部分决定了可接入总线该类器件的最大数目。如一个从机的7位寻址位有4位是固定位,3位是可编程位,这时仅能寻址8个同样的器件。 第6章 C51单片机系统扩展 6.4.4 I2C总线的信息传输 (1)I2C总线信号定义 第6章 C51单片机系统扩展 I2C总线的起停信号 第6章 C51单片机系统扩展 I2C总线的数据传送时序 第6章 C51单片机系统扩展 I2C总线的应答位 第6章 C51单片机系统扩展 主控制器写操作格式示意图 主控制器写操作具体内容 第6章 C51单片机系统扩展 主控制器读操作格式示意图 主控制器写操作具体内容 第6章 C51单片机系统扩展 主控制器先写后读操作格式示意图 主控制器先写后读操作具体内容 第6章 C51单片机系统扩展 6.4.5 C51单片机与I2C总线的接口 1.内部无I2C总线的数据传送模拟驱动程序 主机可以采用不带I2C总线接口的单片机,使用单片机I/O口模拟I2C总线,利用软件实现I2C总线的数据传送,即软件与硬件结合的信号模拟。 起始信号子函数用于开始I2C总线通信。其中,起始信号是在时钟线SCL为高电平期间,数据线SDA上高电平向低电平变化的下降沿信号。起始信号出现以后,才可以进行后续的I2C总线寻址或数据传输等。 应答信号子函数用于表明I2C总线数据传输的结束。I2C总线数据传送时,一个字节数据传送完毕后都必须由主器件 产生应答信号。主器件在第9个时钟位上释放数据总线SDA,使其处于高电平状态,此时从器件输出低电平拉低数据总线SDA为应答信号。 第6章 C51单片机系统扩展 非应答信号子函数用于数据传输出现异常而无法完成时。在一个字节数据传送完毕后,在第9个时钟位上从器件输出高电平为非应答信号 硬件连接非常简单,只需要2个I/O口,在软件中分别定义成SCL和SDA,直接相连,再加上上拉电阻即可,硬件接口如图6-30所示。 第6章 C51单片机系统扩展 以MCS-51单片机为例,采用C51编写通用通用I2C总线模拟驱动程序。用P1.6和P1.7直接与SCL和SD
您可能关注的文档
- 办公软件应用教程 项目式 教学课件 作者 孙海伦 项目14.ppt
- 办公软件应用教程 项目式 教学课件 作者 孙海伦 项目15.ppt
- 办公自动化软件与设备 项目式 教学课件 作者 管小清 胡谨 05.pptx
- 办公自动化软件与设备 项目式 教学课件 作者 管小清 胡谨 06.pptx
- 办公自动化软件与设备 项目式 教学课件 作者 管小清 胡谨 07.pptx
- 办公自动化软件与设备 项目式 教学课件 作者 管小清 胡谨 08.pptx
- 办公自动化软件与设备 项目式 教学课件 作者 管小清 胡谨 09.pptx
- 办公自动化软件与设备 项目式 教学课件 作者 管小清 胡谨 10.pptx
- 单片机C语言程序设计 教学课件 作者 侯殿有1.1.ppt
- 单片机C语言程序设计 教学课件 作者 侯殿有1.2.ppt
文档评论(0)