西北农林科技大学本科课程考试试卷
2007—2008学年第一学期《单片机原理与接口技术》
课程A卷专业年级:05电信、机电 命题教师,郭文川 审题教师,
考生班级, 学 号,考生姓名,
题号
一
二
三
四
五
合计
分值
20
20
30
20
10
100
得分
一、填空题(每空1分,共20分)
1,执行下列两条指令后,PSW中的标志位(CY)=,(OV)=,(AC)=,(P)= 。
MOV A,#80H
ADD A,#98H
2.JC LOOP指令中操作数的寻址方式是,MOV A,P1指令中源操作数的寻址方式为 。
3.下列指令中正确的是 。
(1) RLC R7 (2)SETB R7.0
(3) MOV A,@DPTR (4)POP 40H
4.一个4k*4RAM芯片的地址线有 根,数据线有 。
5.设(A)=30H,(B)=40H,(SP)=40H,执行下列程序段后,(A)= 。
PUSH A
PUSH B
POP A
POP B
6.若8位A/D转换器的满量程输入为5V时,该转换器可分辨的最小电压是 。
7.一单片机系统的外部晶体振荡器频率为6MHz,现启动单片机的的定时/计数器1统计外部脉冲的个数,当计满100时,使P1.0输出0。则:
当T1工作在方式0时,T1的初值应为(TH1)=,(TL1)= ;
当T1工作在方式1时,T1的初值应为(TH1)=,(TL1)= ;
当T1工作在方式2时,T1的初值应为(TH1)=,(TL1)= 。
8,已知(SP)=60H,子程序DELAY的首地址为1878H,现执行位于1123H处的LCALL DELAY三字节指令后,(PC)=,(61H)=,(62H)= 。
二、根据要求完成任务(每题4分,共20分)
1.已知 (R3)=05H,程序运行后,结果为(50H )= 。
MAIN:MOV A,R3
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV 50H,A
RET
TAB, DB 00,01, 04, 09, 16
DB 25,36, 49, 64, 81
这个子程序的功能是 。
2.该段程序执行后,(A)=,(CY)= 。
MOV A,#56H
MOV R4,#95H
ADD A,R4
DA A
3,下面该段程序的功能是 。
MOV DPTR, #1000H
MOV R0,#20H
MOV A,#0FFH
LOOP: MOVX @DPTR,A
INC DPTR
DJNZ R0,LOOP
4.下列程序段执行后,(A)=_________,(B)=_________。
MOV A,#0FBH
MOV B,#12H
DIV AB
5,下面该段程序的功能是 。
CLR A
MOV R0,A
MOV R2,#09H
LOOP: ADD A,R0
INC R0
DJNZ R2, LOOP
MOV R3,A
HERE: SJMP HERE
三、分析、编程题(每题6分,共30分)
1,在外部RAM中,从1000H开始有20个字节型数据,编写完整的汇编语言源程序将每个字节的最高位无条件地置1。
2.假设ADC0809的端口地址为8000H,编写程序段采集ADC0809的第一和第二通道的值,并求两通道采集结果的平均值(假设每路采集的值都小于7FH,ADC0809的EOC信号经非门接至8051单片机的)。
3,用远程查表指令编写一段程序,完成寻找存放在R0中的十六进制数的共阳极字形代码,并将查找结果输出至与数码管相连的P1口。
4,在由8031单片机组成的系统中,定时器1实现定时100ms的任务,且允许定时器1中断、允许外部中断0中断,外部中断0为脉冲触发方式,且T1为最高级,此时,特殊功能寄存器TCON、IE和IP应初始化为多少?
5,图1是利用中规模集成电路扩展I/O口的电路,分析、、输出口的地址。
四、(20分)如图2所示,8255A的B口连接8个开关,A口连接8个LED,各口均工作于方式0。利用定时器T1(工作于方式1)产生中断信号,使每隔1s采集一次开关的状态,并将该状态通过LED反映出来。假设8255A端口的起始地址为7FFCH,单片机的晶振频率为6MHz。
(1)该单片机的机器周期是多少?(2分)
(2)方式1下,若每次定时时间为100ms,则T1的计数初始值为多少?(4分)
(3)定时/计数器的工作方式控制字TMOD为多少?(2分)
(4)8255A的控制字是多少?(2分)
(5)编写完整的汇编语言程序实现以上的功能。(10分)
五、(10分)8051单片机与存储器的部分连接如图3所示,由该图确定:
(1)27128和6264芯片的容量分别是多少?(2分)
(2)和的作用分别是什么?(2分)
(3)分析各芯片的地址范围(6分)。
西北农林科技大学本科课程考试试卷
2007—2008学年第一学期,单片机原理与接口技术》
课程B卷专业年级,05电信、机电 命题教师,郭文川 审题教师,
考生班级, 学 号,考生姓名,
题号
一
二
三
四
五
合计
分值
25
25
20
15
15
100
得分
根据题意完成任务(每题5分,共25分)
1.下段程序完成的功能是 。 ORG 4200H
VAR EQU 40H
FUNC EQU 50H
START:MOV A,VAR
JZ COMP
JNB ACC.7,POSI
MOV A,#0FFH
SJMP COMP
POSI: MOV A,#01H
COMP:MOV FUNC,A
END
2.下段程序完成的功能是 。 MOV A,#245
MOV R0,#40H
MOV B,#100
DIV AB
MOV @R0,A
INC R0
MOV A,#10
XCH A,B
DIV AB
SWAP A
ADD A,B
MOV @R0,A
RET
3.下段程序完成的功能是 。
ORG 1000H
START: MOV A,#2
ACALL SQR
MOV R1,A
MOV A,#4
ACALL SQR
ADD A,R1
MOV 40H,A
SJMP $
SQR: INC A
MOVC A,@A+PC
RET
TAB: DB 0,1,4,9,16,25,36,49,64,81
END
4、指出执行下列伪指令后,各数据存放的单元地址(画图说明)。
ORG 1000H
TAB: DB -1,“Me”
DW 50H,-1
BLOCK:DS 02H
5.当显示多位数字时,有静态显示和动态显示两种方法,各方法的优缺点是什么?在动态显示中,显示缓冲单元的作用是什么?段控制口和位控制口能不能用同一个地址?如果不能,那么各自的作用是什么?在显示过程中,若显示器是共阴极接法,能不能在某一个时刻使多位显示器的共阴极接地,为什么?
二、编程(共25分)
1.(10分)编写汇编语言源程序实现将外部RAM 从1000H单元开始的20个单元的内容搬到内部RAM从40H开始的单元中去。
2.(15分)利用8255A可编程并行接口芯片实现输入输出操作。实验中用8255A的PA口作为输入口,工作于方式0,读取与PA口相连的开关的状态;用PB口作为输出口,工作于方式0,将读取的开关状态输出到与PB口相连的LED上。若8255A的起始端口地址为8000H,则编写完整的汇编语言源程序实现该任务(8255A的方式控制字见图1)。
三、(20分)一单片机系统的外部晶体振荡器频率为6MHz,现统计10ms内送给外部中断0的脉冲个数。若10ms内的脉冲个数大于100,则复位P1.0,否则,置位P1.0。若用定时/计数器0实现定时,则:
(1)在方式0下,装入定时/计数器TH0、TL0的初值为多少?(3分)
(2)在方式1下,装入定时/计数器TH0、TL0的初值为多少?(2分)
(3)要求用定时器0以工作方式1编程实现该任务(中断结构)。(15分)
四、(15分)P1口连接有8个LED (LED0~LED7),编写程序使每次亮4个LED,即开始时偶数码的灯亮,下一个时刻奇数码的灯亮,如此循环。灯亮持续时间为2s。
(1)画出单片机8051扩展8个灯的电路图;(5分)
(2)编写程序实现该功能。(10分)
五、(15分)以两片Intel 2716和两片Intel 6116 给8051单片机扩展一个4KB的程序存储器和4KB的数据存储器,要求:数据存储器的地址从0开始,且连续;程序存储器的地址范围与8051内部的ROM相连接,且连续。
(1)说明6116有几根地址线,2716有几根地址线?
(2)、和的作用分别是什么?
(3)画出逻辑连接图(所需芯片不受限制)。

西北农林科技大学本科课程考试
参考答案与评分标准

考试课程:单片机原理与接口技术 学年学期:2007-2008-1
试卷类型:A 卷 考试时间:2008-01-15
专业年级:05电信、机电
一、填空题(每空1分,共20分)
1,0,0
2.相对寻址,直接寻址
3.(4)
4.12,4
5.40H
6,19.53mV
7,FCH,1CH,FFH,9CH,9CH,9CH
8,1878H,26H,11H
二、根据要求完成任务(每题4分,共20分)
1,25(或19H),查表求0~9数字的平均值
2,51H,1
3,将外部RAM中从1000H单元开始的20H个单元的值置成0FFH。
4,13(0DH),17(11H)
5,完成0~8之间自然数的求和。
三、编程题(每题6分,共30分)
说明,答案比较灵活。
1. ORG 1000H
MOV DPTR,#1000H
MOV R4,#20
LOOP,MOVX A,@DPTR
ORL A,#80H
MOVX @DPTR,A
INC DPTR
DJNZ R4,LOOP
END
2. ORG 1000H
MOV A,#0
MOV DPTR,#8000H
MOVX @DPTR,A
JB P3.2,$
MOVX A,@DPTR
MOV 40H,A
INC DPTR
MOVX @DPTR,A
JB P3.2,$
MOVX A,@DPTR
ADD A,40H
RR A
MOV 40H,A
END
3. ORG 1000H
MOV A,R0
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P1,A
TABLE: DB 0C0H,0F9H, 0A4H,0B0H, 99H,92H,82H,0F8H,80H,90H
DB 88H,83H,0C6H,0A1H,86H,8EH
END
4, (TCON)= 41H(或01H),(IE)=89H,(IP)=08H。
5,分析得,, 输出口的地址分别为:
,1B00H~~1B07H ,1B08H~~~1B0FH ,1B38H~~1B3FH
四、共20分
(1)机器周期=2us (2分)
TH1= 3CH,TL1=0B0H(4分)
TMOD=10H(2分)
控制字为82H,或83H,8AH,8BH(2分)
(5) 10分
ORG 1000H
LJMP MAIN
ORG 001BH
LJMP T0INT
ORG 1000H
MAIN: MOV DPTR,#7FFFH
MOV A,#82H
MOVX @DPTR,A
MOV TMOD,#10H
MOV TH1,#3CH
MOV TL1,#0B0H
SETB EA
SETB ET1
SETB TR0
SJMP $
T0INT: INC A
MOV TH1,#3CH
MOV TL1,0B0H
CJNE A,#10,QUIT
CLR A
MOV DPTR,#7FFDH
MOVX A,@DPTR
MOV DPTR,7FFCH
MOVX @DPTR,A
QUIT,RET
END
五、(10分)
答:(1)27128和6264芯片的容量分别是16kB(128kb)和8kB(64kb)。(2分)
(2)是访问读外部RAM时的控制信号,而是读外部ROM时的控制信号。(2分)
(3)各芯片的范围为:(6分,每个1.5分)
27128(1):0~3FFFH
27128(2):4000H~7FFFH
6264(1),0A000H~0BFFFH
6264(2),8000H~9FFFH
西北农林科技大学本科课程考试试卷
2007—2008学年第一学期,单片机原理与接口技术》
课程B卷专业年级,05电信 命题教师,郭文川 审题教师,
考生班级, 学 号, 考生姓名,
题号
一
二
三
四
五
合计
分值
25
25
15
15
20
100
得分
根据题意完成任务(每题5分,共25分)
1.下段程序完成的功能是 。 ORG 4200H
VAR EQU 40H
FUNC EQU 50H
START:MOV A,VAR
JZ COMP
JNB ACC.7,POSI
MOV A,#0FFH
SJMP COMP
POSI: MOV A,#01H
COMP:MOV FUNC,A
END
2.下段程序完成的功能是 。 MOV A,#245
MOV R0,#40H
MOV B,#100
DIV AB
MOV @R0,A
INC R0
MOV A,#10
XCH A,B
DIV AB
SWAP A
ADD A,B
MOV @R0,A
RET
3.下段程序完成的功能是 。
ORG 1000H
START: MOV A,#2
ACALL SQR
MOV R1,A
MOV A,#4
ACALL SQR
ADD A,R1
MOV 40H,A
SJMP $
SQR: INC A
MOVC A,@A+PC
RET
TAB: DB 0,1,4,9,16,25,36,49,64,81
END
4、指出执行下列伪指令后,各数据存放的单元地址(画图说明)。
ORG 1000H
TAB: DB -1,“Me”
DW 50H,-1
BLOCK:DS 02H
5.当显示多位数字时,有静态显示和动态显示两种方法,各方法的优缺点是什么?在动态显示中,显示缓冲单元的作用是什么?段控制口和位控制口能不能用同一个地址?如果不能,那么各自的作用是什么?在显示过程中,若显示器是共阴极接法,能不能在某一个时刻使多位显示器的共阴极接地,为什么?
二、编程:(共25分)
1.(10分)编写汇编语言源程序实现将外部RAM 从1000H单元开始的20个单元的内容搬到内部RAM从40H开始的单元中去。
2.(15分)利用8255A可编程并行接口芯片实现输入输出操作。实验中用8255A的PA口作为输入口,工作于方式0,读取与PA口相连的开关的状态;用PB口作为输出口,工作于方式0,将读取的开关状态输出到与PB口相连的LED上。若8255A的起始端口地址为8000H,则编写完整的汇编语言源程序实现该任务(8255A的方式控制字见图1)。
三、(15分)一单片机系统的外部晶体振荡器频率为6MHz,现统计10ms内送给外部中断0的脉冲个数。若10ms内的脉冲个数大于100,则复位P1.0,否则,置位P1.0。若用定时/计数器0实现定时,则:
(1)在方式0下,装入定时/计数器TH0、TL0的初值为多少?(3分)
(2)在方式1下,装入定时/计数器TH0、TL0的初值为多少?(2分)
(3)要求用定时器0以工作方式1编程实现该任务(中断结构)。(10分)
四、(15分)P1口连接有8个LED (LED0~LED7),编写程序使每次亮4个LED,即开始时偶数码的灯亮,下一个时刻奇数码的灯亮,如此循环。灯亮持续时间为2s。
(1)画出单片机8051扩展8个灯的电路图;(5分)
(2)编写程序实现该功能。(10分)
五、(15分)以两片Intel 2716和两片Intel 6116 给8051单片机扩展一个4KB的程序存储器和4KB的数据存储器,要求:数据存储器的地址从0开始,且连续;程序存储器的地址范围与8051内部的ROM相连接,且连续。
(1)说明6116有几根地址线,2716有几根地址线?
(2)、和的作用分别是什么?
(3)画出逻辑连接图(所需芯片不受限制)。