《单片机原理及应用》系统扩展题题库参考答案
七、单片机系统扩展与编程(10分)
1、由8751组成的单片机应用系统如图所示:
(1)请写出由74LS244组成的输入口和74LS273组成的输出口所占据的地址范围;
(2)请编程实现每秒钟从输入口(74LS244)读入一次8个开关的状态,并将其输出到输出口(74LS273)在发光二级管D1-D8显示出来(某一路开关闭合,则相应路的发光二极管熄灭)。要求:利用定时器T0实现50mS定时,并对中断次数进行计数的办法实现1秒定时。T0工作在方式1下。
解:(1) 74LS244的地址范围为:0-1FFFH (写对得1分)
74LS273的地址范围为:2000H-3FFFH (写对得1分)
(2) T0定时初值为:65536-50000*12/12=15536=3CB0H
ORG 0
LJMP START
ORG 000BH
LJMP TS
ORG 0030H
START: MOV SP,#50H
MOV 08H,#14H ;1区R0送20,表示中断20次为1秒
MOV TMOD,#01H ;T0为方式1定时器工作
MOV TH0,#3CH
MOV TL0,#0B0H
SETB ET0 ;允许T0中断
SETB EA ;开中断
SETB TR0 ;启动计数
SJMP $
TS:PUSH PSW ;保护现场
CLR TR0
MOV TH0,#3CH
MOV TL0,#0B0H
SETB TR0
SETB RS0 ;使用1区工作寄存器
CLR RS1
DJNZ R0,NEXT
MOV R0,#14H ;恢复中断20次计数值(1秒)
MOV DPTR,#0000H
MOVX A,***@DPTR ;读入开关状态
MOV DPTR,#2000H
MOVX ***@DPTR,A ;将开关状态送LED显示
NEXT: POP PSW ;恢复现场
RETI
END
编程部分评分办法:不要求使用伪指令和对程序进行注释。编程思路正确可得3分,编程正确可得8分。仅写出少量指令可酌情给1-2分;编程思路正确,有少量指令写错可酌情扣1-2分。
2、由8751组成的单片机应用系统如图所示:
(1) 请写出由74LS244组成的输入口和74LS273组成的输出口所占据的地址范围;
(2) 请编程实现每20mS从输入口(74LS244)读入一次8个开关的状态,并将其输出到输出口(74LS273)在发光二级管D1-D8显示出来(某一路开关闭合,则相应路的发光二极管点亮)。要求:利用定时器T0实现20mS定时,并且T0工作在方式1和中断方式下。
解:(1) 输入口74LS244的地址范围是:4000H-5FFFH (写对得1分)
输出口74LS273的地址是:0E000H-0FFFFH (写对得1分)
(2) 20mS定时初值为:65536-20000*12/12=45536=0B1E0H (20ms=20000us)
ORG 0H
LJMP START
ORG 000BH
LJMP TS
ORG 30H
START: MOV TMOD,#01H
MOV TH0,#0B1H
MOV TL0,#0E0H
SETB ET0
SETB TR0
SETB EA
SJMP $
TS: CLR TR0
MOV TH0,#0B1H
MOV TL0,#0E0H
SETB TR0
MOV DPTR,#4000H
MOVX A,***@DPTR
CPL A
MOV DPTR,#0E000H
MOVX ***@DPTR,A
RETI
END
编程部分评分办法:不要求使用伪指令和对程序进行注释。编程思路正确可得3分,编程正确可得8分。仅写出少量指令可酌情给1-2分;编程思路正确,有少量指令写错可酌情扣1-2分。
3、由8751组成的单片机应用系统如图所示:
(1)请写出由74LS244组成的输入口和74LS273组成的输出口所占据的地址范围;
(2)请编程实现每50mS从输入口(74LS244)读入一次8个开关的状态,并将其输出到输出口(74LS273)在发光二级管D1-D8显示出来(某一路开关闭合,则相应路的发光二极管熄灭)。要求:利用定时器T0实现50mS定时,并且T0工作在方式1和中断方式下。
解:(1) 输入口74LS244的地址范围是:8000H-8FFFH (写对得1分)
输出口74LS273的地址范围是:9000H-9FFFH (写对得1分)
(2) T0的50mS定时初值为:65536-500
《单片机》扩展题题库答案 来自淘豆网www.taodocs.com转载请标明出处.