单片机的IO扩展及应祥解.ppt

  1. 1、本文档共135页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机的IO扩展及应祥解.ppt

2. 采用译码法在8051外部扩展两片2764的连接图如下: 译码法 3. 解:8255A有3种工作方式,即方式0、方式1、方式2。 1)方式0(基本输入/输出方式):这种工作方式不需要任何选通信 号,A口、B口及C口的高4位和低4位都可以设定为输入或输出。 2)方式1(选通输入/输出方式):在这种方式下,A、B、C三个口 将分为两组。A组包括A口和C口的高4位,A口可由编程设定为输入口或输 出口,C口的高4位则用来作为输入/输出操作的控制和同步信号;B组包 括B口和C口的低4位, B口可由编程设定为输入口或输出口,C口的低4位 则用来作为输入/输出操作的控制和同步信号。 3)方式2(双向数据传送方式):在这种工作方式下,A口为8位双向 数据口,C口的PC3~PC7用来作为输入/输出的控制同步信号。 8255A的工作方式是通过对控制口输入控制字的方式实现的。方式选 择控制字的格式与定义见书P74页,图5-10。 4. 解:根据题意,可得8255A的控制字为,即95H。于是,可编程如下: MOV DPTR, #0EF83H MOV A, #95H MOVX @DPTR, A 5. 80C51单片机内部设有2个16位的可编程定时器/计数 器,简称为T0和T1。它们由特殊功能寄存器TMOD、TCON、 TH0、TL0、TH1、TL1组成。 6. 80C51单片机内部的T/C用作定时功能时,其定时时 间与时钟周期、计数器的长度(如8位、13位、16位等)、定 时初值等因素有关。 作计数功能时,外部数据的最高计数频率为振荡频率 (即时钟周期)的1/24。 7. 80C51单片机的定时器/计数器有4种工作方式: (1)方式0是一个13位的T/C。当TL0的低5位溢出时向 TH0进位,而TH0溢出时将中断标志TF0置“1”,并申请中断。 (2)方式1是一个16位的T/C,操作几乎与方式0相同。 (3)方式2是能重复置初值的8位T/C。该方式具有自动恢 复初值的功能,适合作较精确的定时脉冲信号发生器。 (4)方式3只适用于T0,除了仅用8位寄存器TL0外,其功 能和操作方式与方式0、方式1完全相同。 8. 选用 T1 定时 250μs,工作方式设为 2,用 TL1 作为 8 位定时器,产生 250μs 的定时,定时初值 X 为: X = 256 - = 6 250μs 1μs 故 TH1=TL1=6H,TMOD=20H。编程如下: MOV TMOD, #20H MOV TH1, #06H MOV TL1, #06H SETB TR1 RPTA: MOV R2, #04H RPTB: JNB TF1, $ CLR TF1 CPL P1.1 DJNZ R2, RPTB CPL P1.0 LJMP RPTA 9.(1)将外部脉冲引至 INT0 引脚上,设 T0 为定时器 方式 1,GATE 位置为“1”,TR0 为 1。 一旦 INT0(P3.2)引脚上出现高电平,定时器即开始定 时,也就是它开始对时钟的机器周期进行计数,直至低电平 出现,此时读出 T0 值即可。 (2)由于定时器方式 1 的长度为 16 位,最大计数值为 65536,即正脉冲的宽度最大值不能超过 65536 个机器周期。 如果时钟频率为 6MHz ,允许测量的最大脉冲宽度是: 65536×2μs=131.07ms。 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * (2)线反转法: 线反转法比扫描法要简练,无论被按键是处于哪列,均可经过两步即能获得此按键所在的行列值: 第一步:将行线P1.0~P1.3置低,列线置高,读列线状态,值为低的列即为按键按下的列。 第二步:将列线P1.4~P1.7置低,行线置高,读行线状态,值

文档评论(0)

love + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档