第11章 串行接口技术(改).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 串行接口技术(改)

单片微型计算机与接口技术 ★ RS-485总线扩展 ★ IIC总线扩展接口及应用 ★ SPI总线扩展接口及应用 9.1 RS-485总线扩展 RS-485标准接口是单片机系统中常用的一种串行总线之一。与RS-232C比较,其性能有许多改进,细节请见表9.1所示。 表9.1 RS-232C与RS-485性能比较 RS-485接口可连接成半双工和全双工两种通信方式。常见的半双工通信芯片有MAX481、MAX483、MAX485、MAX487等,全双工通信芯片有MAX488、MAX489、MAX490、MAX491等。 下面以MAX485为例来介绍RS-485串行接口的应用。MAX485的封装有DIP、SO和uMAX三种,其中DIP封装的管脚如图9.1所示。 MAX485典型的工作电路如图9.2所示,其中平衡电阻Rp通常取100~300欧姆。MAX485的收发功能见表9.3。 表9.3 MAX485的收发功能 89C51与MAX485的接口电路如图9.4所示。P1.7用来控制MAX485的接收或发送,其余操作同串口 。 9.2 I2C总线扩展接口及应用 9.2.1 原理 Philip公司推出,芯片间串行传输总线。 两根线实现了完善的半全双工同步数据传送, 可极为方便地构成多机系统和外围器件扩展系统。 采用了器件地址的硬件设置方法,用软件寻址, 完全避免了器件的片选线寻址方法,简单灵活。 IIC总线规范:主机按状态码进行总线管理, 程序中,根据数据操作要求完成IIC总线的初始化, 启动IIC总线就能自动完成规定的数据传送操作。 开漏或开集电极输出,需加上拉电阻。 系统中所有单片机、外围器件的SDA、SCL 同名端相连在一起, 总线上的所有节点都由器件和管脚给定地址。 主机:具有IIC总线接口的单片机, 总线扩展芯片或用I/O口软件仿真IIC。 可挂接各种类型的外围器件, 如RAM/EEPROM、日历/时钟、A/D、D/A、 以及由I/O口、显示驱动器模块。 9.2.2 软件IIC总线 设单片机所用晶体振荡器的频率为6MHz。 用P1.7和P1.6分别模拟SDA和SCL,定义如下: SDA EQU P1.7 SCL EQU P1.6 (1)产生起始位和停止位 若单片机则每个机器周期为2us, SCL和SDA发送起始条件和停止条件子程序如下。 若晶振频率非 6MHz,则要相应增删NOP指令, 以满足时序的要求。 如:fosc=12MHz ,则两条NOP指令应增至4条。 ①发送起始条件START ;SCL为高时SDA由高变低 STA: SETB SDA SETB SCL NOP NOP CLR SDA NOP NOP CLR SCL RET (2)发送应答位和非应答位子程序 在第9个时钟接收数据者要发应答位,。 SDA=“0”为“ACK”,=“1”为“NACK”。 发送应答位和非应答位的子程序分别如下。 (3)应答位检查子程序 本子程序产生第9个时钟脉冲,读ACK位到F0, 若有正常ACK,则F0标志为0,否则为1。 CACK: SETB SDA ;SDA作输入 SETB SCL ;第9个时钟脉冲开始 NOP MOV C,SDA ;读SDA线 MOV F0,C ;转存入F0中 CLR SCL ;时钟脉冲结束 NOP RET (4)字节数据发送子程序 SDA用并口线,无移位寄存器,要用移位指令串行输出。 按时序要求,数据在时钟低时变,高时稳定,每1时钟传1位。 入口条件是待发送的字节存于累加器ACC中。 (5)字节数据接收子程序 时钟高电平时数据已稳定,读入1位,8个时钟后1字节; 并将所读字节存于A和R6中。  RDB: MOV R7,#8 ;R7存放位计数器初值 RLP: SETB SDA ;SDA输入 SETB SCL ;SCL脉冲开始 MOV C,SDA ;读SDA线 MOV A,R6 ;取回暂存结果 RLC A ;移入新接收位 MOV R6,A ;暂存入R6 CLR SCL ;SCL脉冲结束 DJNZ

文档评论(0)

shuwkb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档