单片机原理及应用技术教学教程牛月兰9单元扩展输入输出演示文稿.pptVIP

单片机原理及应用技术教学教程牛月兰9单元扩展输入输出演示文稿.ppt

  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文档。上传文档
查看更多
* 注意,81C55的计数器初值不是从0开始,从2开始。这是因为,如果选择计数器的输出为方波形式(无论是单方波还是连续方波),则规定是从启动计数开始,前一半计数输出为高电平,后一半计数输出为低电平。显然,如果计数初值是0或1,就无法产生这种方波。因此81C55计数器的写入初值范围是3FFFH~2H。 如果硬要将0或1作为初值写入,其效果将与送入初值2的情况一样。81C55复位后使计数器停止计数。 9.3.3 AT89S51单片机与81C55的接口设计及软件编程 1.硬件接口电路 接口如图9-19所示。直接连接不需外加器件。 * * * 图9-19 AT89S51单片机与81C55的接口电路 * 在图9-19中,单片机P0口输出的低8位地址不需要另外加锁存器(81C55片内集成有地址锁存器),而直接与81C55的AD0~AD7相连,既可作为低8位地址总线,又可作为数据总线,地址锁存控制直接用AT89S51发出的ALE信号。 81C55的 端接P2.7,IO/ 端与P2. 6相连。当P2. 7=1时,若P2. 6=0,则访问81C55的RAM单元。由此可得到图9-19中81C55的各端口以及RAM单元的地址编码,见表9-7。 * * * * 2.81C55的编程 根据图9-19接口,介绍对81C55的具体操作。 初始化程序设计 根据图9-19所示,介绍对81C55的操作过程。 要求(1)PA口为基本输出方式,PB口为基本输入方式,读入PB口的开关状态,然后通过PA口输出到发光二极管显示。(2)对输入脉冲进行1000分频,然后输出。 分析:(1)设定计数器初值和计数器输出方式。初始值1000,16进制数为03E8H;计数器输出为连续方波,M2 M1= 01,则计数器高位=0100 0011B=43H,低位=E8H。 * * (2)设定命令控制字。命令控制字为C1H 程序初始化设计 将控制字写入81C55的控制口,设置81C55的PA口、PB口工作方式及计数器的初值。 SRART: MOV A,#0E8H;计数器低字节地始值 MOV DPTR,#0FFFDH ;计数器低字节地址 MOVX @DPTR,A ;写计数器低字节地址初始值 MOV A,#03H ;计数器高字节初始值 MOV DPTR,#0FFFEH ;计数器高字节地址 * * MOVX @DPTR,A ;写计数器高字节地址初始值 MOV A,#0C1H ;命令字 MOV DPTR,#FFF9H;命令口地址 MOVX @DPTR,A ;写命令字 读81C55的PB口开关的状态。程序如下: MOV DPTR,#0FFFBH ;DPTR指针指向81C55的FFFBH单元 MOVX A,@DPTR ;FFFBH单元内容→A 把81C55 PA口状态输出 MOV DPTR,#0FFFAH ;PA口地址 MOVX @DPTR,A ;PB口开关状态从PA口输出 * * 9.4 利用74LSTTL电路扩展并行I/O口 在单片机应用中,有些场合需要降低成本、缩小体积,这时采用74LS系列的TTL电路、CMOS电路锁存器或三态门电路也可构成各种类型的简单输入/输出口。常用的74LS系列产品有74LS373、74LS273、74LS367、74LS374、74LS377、74LS244等。 如图9-20所示,74LS244接8个按钮开关,通过P0口向AT89S51单片机输入8个按钮开关的状态。74LS273接8个LED发光二极管,通过P0口发光二极管输出显示8个按钮开关的状态。 * * 图9-20 74LSTTL I/O扩展举例 * 74LS244是八位线驱动器,引脚及功能如图9-21所示。 图9-21 74LS244引脚及功能表图 74LS244内部由2组4位三态缓冲器组成,一组输入端1A1~1A4,输出端1Y1~1Y4,控制端1;另一组输入端2A1~2A4,输出端2Y1~2Y4,控制端2。当控制端G为低电平时,输出端Y与输入端A相同;当控制端G为高电平时,输出端Y为高阻态。通过对G端进行控制,可对244的输入端1A1~1A4和2A1~2A4的数据进行读入操作。 * 电路的工作原理:当某条输入口线的按钮开关按下时,该输入口线为低电平,读入单片机后,其相应位为“0”,然后再将口线的状态经74LS273输出,某位低电平时二极管发光,从而显示出按下的按钮开关的位置。该如下。 当P2. 7=0, =0( =1)时,选中74LS244芯片,此时若无按钮开关按下,输入全为高电平。当某开关按下

您可能关注的文档

文档评论(0)

精品课件 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档