资源描述
第七章 系统扩展 习题答案七
1、 试以80C31为主机,用2片2764EPPROM扩展6K ROM,画出硬件接线图。
答:用P2.7直接控制2764的片选。硬件接线图如下:
P2.7
P2.4~P2.0
ALE
80C31
P0
EA’ PESN’
G 74LS373
OE’
A0~A7 A8~A12 CE’
2764(1)
D0~D7 OE’
A0~A7 A8~A12 CE’
2764(2)
D0~D7 OE’
2、 设计扩展2KB RAM 和4KB EPPROM的电路图。
答:用80C31作主机扩展2KBRAM和4KBEPROM。2KBRAM使用芯片6116,因为只有2k的容量,所以只需连上单片机的10根地址线。4KBEPROM使用芯片2732,地址线数目为11根。连接图如下:
P2.7
P2.6
P2.1(P2.4)~P2.0
ALE
80C31
P0
RD’
WR’
PSEN’
EA’
G 74LS373
OE’
A0~A7 A8~A9 CE’
6116
D0~D7 WE’ OE’
A0~A7 A8~A12 CE1’
2732
D0~D7 OE’
3、 当单片机在应用系统中数据存储器RAM地址和程序存储器EEPROM地址重叠时,是否会发生数据冲突,为什么?
答:不会发生冲突,因为访问片外数据存储器RAM时使用指令MOVX;而访问片外程序存储器EPROM时使用MOVC,并使EA’=0。
4、 80C51单片机在应用中P0和P2是否可以直接作为输入/输出连接开关、指示灯等外围设备?
答:是的。因为80C51只需外接晶振和复位电路就可以构成最小系统,此时如果没有扩展存储器和外设时,P0,P2口可以直接作为I/O口连接开关、指示灯等外围设备。
5、 七段LED显示器有动态和静态两种显示方式,这两种显示方式要求80C51系列单片机如何安排接口电路?
答:对于静态显示方式,LED显示器由接口芯片直接驱动,采用较小的驱动电流就可以得到较高的显示亮度。但是,并行输出显示的十进制位数多时,需要并行I/O接口芯片的数量较多。采用串行输出可以大大节省单片机的内部资源,串并转换器采用74LS164,低电平时允许通过8mA电流,无需添加其它驱动电路。TXD为位时钟输出,RXD为移位数据输出,一般采用P1.0作为显示器允许控制输出线。具体接口电路图可参考书本图7.19。
对于动态显示,显示器的位数不大于8位时,则控制显示其公共极电位只需一个I/O口(称为扫描口或字位口),控制各位LED显示器所显示的字型也需要一个8位口(称为段数据口过字型口)。具体接口电路图可参考书本图7.20。
6、 设计80C51键盘显示接口,采用中断扫描方式扩展3*6共18个键,分别为0~9、A~F、RUNt和RESET键,具体要求如下:
(1) 按下RESET键后,单片机复位。
(2) 按下RUN键后,系统进入地址为2000H的用户程序。
(3) 按下0~9、A~F键后,键值存入内部RAM,首地址为40H。
(4) 试画出接口电路的硬件连接图并编写相应程序。
答:键盘显示接口电路图如下:
程序的原理框图如下:
开始
跳转到启动程序
INT0中断程序跳转
1
等待按键
1
启动按键有效
启动INT0
中断
判断按键值
根据按键值跳转对应的键处理
RETI
(RESET键处理程序)开始
SJMP 0000H
(RUN键处理程序)开始
SJMP 2000H
(0~F键处理程序)开始
键值存入内部RAM,首地址为40H
RET
RET
RET
END
4、 答: 程序原理图如下:
显示子程序
读键子程序
初始化
主程序
返回
读键子程序入口
P1.2=0
SBUF=00H
P1.0=0
P1.1=0
延时10ms
P1.0=0
P1.1=0
P1.0=0
P1.1=0
循环检测
返回
循环检测
返回
是
是
否
是
否
否
否
显示子程序
入口
P1.2=0
取数据
SBUF=#DATA
等待TI=1
取数据
SBUF=#DATA
等待TI=1
返回
6
展开阅读全文