下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第09章单片机应用系统资源扩展习题解答一、填空题1. 8051单片机扩展IO I I时占用片外 数据存储器的地址。2. 8051单片机寻址外设端I I时用寄存器间址寻址方式。3. 8051单片机PSEN控制 程序存储器读操作。4. 8051单片机访问片外存储器时利用ALE信号锁存来自P0 I I的低八位地址信号。5. 12根地址线町选_4K个存储单元,32KB存储单元需要15根地址线。6.欲增加8KBX8位的RAM区,请问选用Intel 2114 (1KBX 4位)需购16片;若 改用Intel6116C2KBX8位)需购4片,若改用Intel 6264 (1KBX8位)需购_8片。一7. 7
2、4LS164是 串入并出转换芯片,74LS165是 并入串出转换芯片。8. 74LS138是具有3个输入端的译码器芯片,其输出作为片选信号时,最多可以选中_8块芯片。9. 74LS273通常用来作简单 输出接I】扩展:而74LS244则常用来作简单输入接II扩展。10.片选方式通常有3种形式:线选法、部分译码器法、全译码法二、简答题1.简述单片机并行扩展外部存储器时三总线连接的基本原则。答:P0II提供数据线,P0、P2【l提供地址线,低位用于片内选择,高位用做片选信号, 用侖控制程序存储器的读操作,用而和顾控制数据存储器或I/O端I I的读写。2.什么是全译码?什么是部分译码?什么是线选法?
3、有什么特点?答:(1)全译码法:先将扩展芯片的地址线与单片机的地址总线从低位开始顺次相连后, 剩余的高位地址线的全部经译码后连接到各扩展芯片的片选线上。全译码法扩展芯片的地址 空间是唯一确定的,不会有地址重叠。但译码电路相对复杂。(2)部分译码法: 与全译码法类似, 先将扩展芯片的地址线与单片机的地址总线从低位开 始顺次相连后,剩余的高位地址线的一部分经译码后连接到各扩展芯片的片选线上。部分译 码使存储器芯片的地址空间也有重叠, 但硬件上比全译码法简单, 重叠情况与线选法相比较 又有所改进。(3)线选法: 先将扩展芯片的地址线与单片机的地址总线从低位开始顺次相连后, 剩余的 高位地址线的一根或
4、几根直接连接到各扩展芯片的片选线上。线选法的优点是简单明了,不 需增加额外电路。缺点是存储空间不连续,存在地址重叠现象。适用于扩展存储容量较小的场合。3.画出利用线选法,用3片2764A扩展24KX8位EPROM的电路图。分析每个芯片的地址范闱。答:电路如图所示U2地址:COOOHDFFFHU3地址:AOOOHBFFFHU4地址:6000H7FFFH4.采用2114芯片在8031片外扩展1 KB数据存储器,并分析地址范围。 答:电路如图所示。U10P2WA8P2.1JA9P22W10P23W11P24JA17P27M3P2&XM4P2.7AM5PI DPI 1PI 2PI 3PI 4P
5、I5PI &PI7P3aiF:OP3.1JDCDP;亦而P3P3 4iT0P25fH_P3&殛P3.刃RD80C51d 皿2PEENOJE EAPOIfADIFOXAW旳4心P0%A8ro&AIfIf地址范I制:因为地址总线的高位P2 2P2 7均没用上,共存着2=64个重复地址区间,每个区间的范闱为1K。0000H 03FFH, 0400H 07FFH, 0800H OBFFH, OCOOH OFFFHFCOOHFFFFH2764和6264芯片在8031片外分别扩展24 KB程序存储器和数据存储器。电路如图所示外部ROMU2地址:COOOHDFFFHU3地址:AOOO
6、HBFFFHU4地址:6000H7FFFH外部RAM芯片U5、U6、U7的地址范围分别与U2、U3、U4一致,但由于使用不同 的指令访问,因此相互并无影响。三、Proteus仿真1.在Proteus F,完成9.7节内容。5 采用答:w力*1.12FZFiiF5WitU?2W3-gFCMT*“an畧gc“c2VTtrazTTrazfFTrxc rajrrirszsCV:nEm*A2答:全自动洗衣机控制器存储器扩展Proteus仿真随着全自动洗衣机功能的不断丰富,需要的存储器容量也不断增加。当单片机内部存储 器不够用时,就需要在外部扩展。卞面介绍对全自动洗衣机控制器扩展一片AT24C02的方 法
7、,并在Proteu F仿真实现。用8051单片机的P1.0和P1.1模拟I2C总线,扩展一片AT24C02,通过两个独立中断 按钮对AT24C02进行读写控制。用一片并串转换芯片4014扩展一个8位数字量输入电路,输入8个拨码开关的状态。在PO I I扩展8个LED发光二极管。当读按键按下时,从4014芯片读入8位拨码开关的状态信息,并写入AT24C02芯片。当写按键按下时,从AT24C02芯片中读出刚才保存的8位拨码开关状态信息,并送PO I I显示。电路如图9-33所示。C语言参考程序代码如下:#include#defiiie uchar unsigned chai#defiiie uni
8、t unsigned mt#defiiie DELAY.TIME 60#defiiie TRUE 1#defiiie FALSE 0#defiiie MYADDR 0 x08sbit SDA=P1AO;sbit SCL=P1A1;sbit SL=P1A7;sbit SD=P3、0;sbit CLK=P3T;图9-33仿真电路原理图包含头文件,其中定义51特殊寄存器简化无符号变量声明字定义延时时河常数定义布尔常量定义AT24C02内部单元地址用P1.0模拟I2C总线的SDA用P1.1模拟I2C总线的SCL/4014工作方式控制I I定义串I I数据线RP3/*4014并转串输入子程序*/uclw
9、 get_input()uclw dat;声明RAM变屋,用于存放转换后的8位数据SL=1;置4014于并行输入工作方式CLK=0;串行1 1未启动之前,P3.1上无同步移位脉冲CLK=1;并行置数,软件产生一个脉冲上升沿SL=0;置4014于串行移位工作方式SCON=OxlO;串丨1工作方式0,允许接收ES=0;关中断while (RI=0);查询接收中断标志位RI=0;/全部接收完成,清零标志位dat=SBUF;将转换后的数据送datSL=1;置4014于并行输入工作方式xeturn(dat);返回dat值/* pc相关子函数 */-延时函数-void DELAY(umt t)输入定时时间
10、t,无输出while(t!=0)t-;当t不为0时自减1/* I2C_Stan ()函数的作用:产生I2C总线启动信号,当SCL为高电平时使SDA产生 一个由高至低的电平跳变*/void I2C_Start(void)无输入变量,无返回值SDA=1;置SDA口高电平SCL=1;置SCL口高电平DELAY(DELAY_TIME);/延时,让SCL,SDA高电平持续一段时间SDA=0;使SDA口输出低电平DELAY(DELAY_TIME);延时,让SDA低电平持续一段时间SCL=O;使SCL 1 1输出低电平DELAY(DELAY_TIME);延时,为传输数据做准备/* I2C_Stop ()函数
11、的作用:产生I2C总线停止信号,当SCL为高电平时使SDA产生一个由低至高的电平跳变*/void I2C_Stop(void)/无输入变量,无返回值SDA=0;使SDA 1 1输出低电平SCL=1;置SCL 1 1高电平DELAY(DELAY_TIME);延时,电平持续一段时间SDA=1;置SDA 1 1高电平DELAY(DELAY_TIME);延时,电平持续一段时间SCL=O;使SCL 1 1输出低电平DELAY(DELAY_TIME);延时,电平持续一段时间/* SEND_O ()函数:发送位数据“0笃在SCL为高电平时使SDA信号为低*/void SEND_0(void)无输入变量,无返
12、回值SDA=0;使SDA 1 1输出低电平SCL=1;置SCL 1 1高电平DELAY(DELAY_TIME);延时,电平持续一段时间SCL=O;使SCL丨1输出低电平DELAY(DELAY_TIME);延时,电平持续一段时间SEND()函数:发送位数据“1”,在SCL为高电平时使SDA信号为高*/void SEND_l(void)无输入变量,无返回值SDA=1;置SDA 1 1高电平SCL=1;置SCL 1 1高电平DELAY(DELAY_TIME);/延时,电平持续一段时间SCL=0;使SCL丨1输出低电平DELAY(DELAY_TIME);延时,电平持续一段时间/* Check.Ackn
13、owledgeQ函数为ACK检验函数:每发送完一个字节数据后检验ACK应答 信号,返回0表示无应答,返回1则表示有应答*/bit Check_Ackiiowledge(void)无输入变量,返回一个布尔值(0或1)SDA=1;置SDA 1 1高电平SCL=1;置SCL丨1高电平DELAY(DELAY_TIME/2);短延时,电平持续一段时间F0=SDA;读入SDA的状态保存至PSW中的F0用户标志位DELAY(DELAY_TIME/2);短延时,电平持续一段时间SCL=0;使SCL丨1输出低电平DELAY(DELAY_TIME);延时,电平持续一段时间if(FO=l)根据F0的值返回布尔变量值
14、return FALSE;/SDA为1,则无应答信号,返回0return TRUE;/SDA为0,表示收到应答,返回1/* WnteI2CBvte ()函数的作用:向I2C总线写一个字节5*7void WriteI2CBvte(chai- b)reentiant输入1字节数据b,无返回值,函数门J重入char 1;声明变量1,用于循坏计数fbr(i=0;i8;i+)8次循环if(bi)&0 x80)逐一判断输入数据各位的值SEND_10;若位值为1,向总线发送位数据“1”else否则SEND.OQ;位值为0,向总线发送位数据“0”/*从I2C总线读一个字节犁char ReadI2CBy
15、te(void)reentrant无输入,返回8位数据,函数可重入声明两个变量:b用于数据接收缓冲,1用于循环控制循环8次置SDA I I高电平置SCL I I高电平延时将SDA值读至PSW的F0位延时使SCL I I输出低电平如果位值为1将“1”移入缓冲区的最低位b左移1位/左移后b的最低位置1否则,位值为0, “0”移入缓冲区的最低位/b左移1位,低位填0下一次循环返回b的值函数调用返回/*以下为读写AT24C02的函数*/void Write_One_Byte(chai addr.chai- thedata)向AT24C02的addr单元写数据tliedatabit acktemp=l;
16、定义位变acktemp,用于存放ACK检验结果,初始为1char b=Oj;fbr(i=0;i5LWOLED7 .ro1U1U01234 5 6 7 DDDDDDD DQIQOQ1W3Q49Q0Q7AIo 十5 *仃12 3 456 7 Q Q QQ Q Q Q Q ffCJls:0 12 3 4 5 6 7DDDDDDD D图9-28 I/O口扩展1.芯片及连线在图9-28中采用的芯片为74LS244、74LS273。其中,74LS244为8位缓冲驱动器(三 态输出),庚、巨为低电平有效使能端。74LS273为8D触发器,阪 为低电平有效的清零端,当帀=0时,输出全为0且与其它输入端无关;C
17、P端是时钟信号,当CP由低电平向 高电平跳变时,D端输入数据传送到Q输出端。P0丨I作为双向8位数据线,既能够从74LS244输入数据,又能够从74LS273输出数据。输入控制信号由P2.0和而相“或,后形成。当二者都为0时,74LS244的控制端有效,选通74LS244,外部的信息输入到P0数据总线上。当与74LS244相连的按键都没有按下时,输 入全为1,若按卞某键,则他所在线输入为0。输出控制信号由P2.0和顾相“或”后形成。当二者都为0后,74LS273的控制端有效,选通74LS273, P0上的数据锁存到74LS273的输出端,控制发光二极管LED,当某线输出 为0时,相应的LED发
18、光。2.I/O口地址确定因为74LS244和74LS273都是在P2.0为0时被选通的,所以二者的I I地址都为FEFFH(这个地址不是唯一的,只要保证P2.0=0,其它地址位无关),即占有相同的地址空间。但是由于分别由而和顾控制,而这两个信号不可能同时为0(执行输入指令,如MOVX A, DPTR或MOVX A, Ri时,而有效;执行输出指令,如MOVX DPTR, A或MOVX R1, A时,顾有效),所以逻辑上二者不会发生冲突。3.编程应用下面的汇编程序实现的功能是按下任意键,对应的LED发光。ORG 0000HLJMP LOOPORG 01 OOHLOOP: MOV DPTR. #0FEFFHMOVX A, DPTRMOVX DPTR. ASJNIP LOOPEND;00H单元存储转移指令;转至LOOP程序段;0100H开始存放主程序;数据指针指向IO I I地址;从74LS244读入数据74LS2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026护理常规化面试题及答案
- 全国统一安装工程预算定额答疑
- 2026婚姻类案件面试题及答案
- 试谈钢筋结构工程施工设计方案
- 2026金融群面试题及答案
- 单位(子单位)工程质量控制资料核查记录
- 空调施工面试题目及答案
- 苏州城西中学生物八年级上册期末试卷
- 智能头皮按摩器赋能养老产业:重构银发族护理成本结构
- 智能健身车出海拉美:汇率风险与本地售后体系建设
- 2025年新版粤省事食品生产考试题库及答案
- 勘察质量体系及保障措施
- 《教育管理学》 陈孝彬编 (第3版)复习重点梳理笔记
- 2025年妇产科实习生出科考试试卷(附答案)
- 淘宝客服劳动合同(标准版)
- 剩余制剂管理办法
- 货车车辆报废管理制度
- 2025年合规性评价报告(模板)
- 危险化学品生产、经营、运输企业安全检查表
- 铁路工务基础知识
- 二年级下册数学计算题每日一练及答案
评论
0/150
提交评论