第09章单片机应用系统资源扩展习题解答.doc

第09章单片机应用系统资源扩展习题解答.doc

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

第09章 单片机应用系统资源扩展 习题解答 填空题 1. 8051单片机扩展I/O口时占用片外 数据 存储器的地址。 2. 8051单片机寻址外设端口时用 寄存器间址 寻址方式。 3. 8051单片机PSEN控制 程序 存储器读操作。 4. 8051 单片机访问片外存储器时利用 ALE 信号锁存来自 P0 口的低八位地址信号。 5. 12根地址线可选 个存储单元,32KB存储单元需要 根地址线。欲增加8KB×8位的RAM区,请问选用Intel 2114(1KB×4位)需购 片; 若改用Inte6116(2KB×8位)需购 片,若改用Inte 6264 (1KB×8位)需购 片。74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最可以选中 块芯片。 74LS273通常用来作简单 接口扩展;而74LS244则常用来作简单 接口扩展。3 片2764A 扩展24K×8 位EPROM 的电路图。分析每个芯片的地址范围。 答:电路如图所示 U2地址:C000H~DFFFH U3地址:A000H~BFFFH U4地址:6000H~7FFFH 4.采用2114芯片在8031片外扩展1 KB数据存储器,并分析地址范围。 答:电路如图所示。 地址范围:因为地址总线的高位P2.2~P2.7均没用上,共存着26=64个重复地址区间,每个区间的范围为1K。 0000H~03FFH,0400H~07FFH,0800H~0BFFH,0C00H~0FFFH …… …… …… …… …… …… …… …… FC00H~FFFFH 5.采用2764和6264芯片在8031片外分别扩展24 KB程序存储器和数据存储器。 答:电路如图所示 外部ROM U2地址:C000H~DFFFH U3地址:A000H~BFFFH U4地址:6000H~7FFFH 外部RAM 芯片U5、U6、U7的地址范围分别与U2、U3、U4一致,但由于使用不同的指令访问,因此相互并无影响。 Proteus仿真 1. 在Proteus下,完成9.7节内容。 答:全自动洗衣机控制器存储器扩展Proteus 仿真 随着全自动洗衣机功能的不断丰富,需要的存储器容量也不断增加。当单片机内部存储器不够用时,就需要在外部扩展。下面介绍对全自动洗衣机控制器扩展一片AT24C02的方法,并在Proteu下仿真实现。 用8051单片机的P1.0和P1.1模拟I2C总线,扩展一片AT24C02,通过两个独立中断按钮对AT24C02进行读写控制。用一片并串转换芯片4014扩展一个8位数字量输入电路,输入8个拨码开关的状态。在P0口扩展8个LED发光二极管。当读按键按下时,从4014芯片读入8位拨码开关的状态信息,并写入AT24C02芯片。当写按键按下时,从AT24C02芯片中读出刚才保存的8位拨码开关状态信息,并送P0口显示。电路如图9-33所示。 图 9-33 仿真电路原理图 C语言参考程序代码如下: #include<reg51.h> //包含头文件,其中定义51特殊寄存器 #define uchar unsigned char //简化无符号变量声明字 #define uint unsigned int #define DELAY_TIME 60 //定义延时时间常数 #define TRUE 1 //定义布尔常量 #define FALSE 0 #define MYADDR 0x08 //定义AT24C02内部单元地址 sbit SDA=P1^0; //用P1.0模拟I2C 总线的SDA sbit SCL=P1^1; //用P1.1模拟I2C 总线的SCL sbit SL=P1^7; //4014工作方式控制口 sbit SD=P3^0; //定义串口数据线 sbit CLK=P3^1; //定义串口时钟线 /*4014并转串输入子程序*/ uchar get_input() { uchar dat; //声明RAM变量,用于存放转换后的8位数据 SL=1; //置4014于并行输入工作方式 CLK=0; //串行口未启动之前,P3.1上无同步移位脉冲 CLK=1; //并行置数,软件产生一个脉冲上升沿 SL=0; //置4014于串行移位工作方式 S

文档评论(0)

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

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

1亿VIP精品文档

相关文档