大学单片机考试试题终极版.docx
《大学单片机考试试题终极版.docx》由会员分享,可在线阅读,更多相关《大学单片机考试试题终极版.docx(10页珍藏版)》请在冰点文库上搜索。
大学单片机考试试题终极版
单片机原理及应用考试试题(A卷2011.5)
一、填空题(15分)
1.使用8KB×8的RAM芯片,用译码法扩展32KB×8的外部存储器,需要(4)片存储芯片,共需要(15)条地址线。
其中(13)条用于存储单元选择,
(2)条用于芯片选择。
2.设二进制数A=10101101,B=0110110。
则逻辑运算A∧B=(00100100),A∨B=(10111111),A⊕B=(10011011)。
3.向8255写入的工作方式命令为0A5H,所定义的工作方式是:
A口是(输出),B口是(输出),C口高位部分是(输出),C口低位部分是(输入)。
4.80C51单片机中,一个机器周期包含(6)个状态周期,一个状态周期又可划分为
(2)个节拍,一个节拍为
(1)个振荡周期,因此,一个机器周期包含(12)个振荡周期。
5.三态缓冲器的三态分别是(高电平)、(低电平)和(高阻)。
6.串行异步通信,传送速率为2400b/s,每帧包含1个起始位,7个数据位,1个奇偶校验位和一个停止位,则每秒传送字符数为(240)。
7.单片机上电复位后,各中断优先级从高到低的次序是(INT0)、(T0)、(INT1)、(T1)和(串行中断)。
8.定时器0工作于方式2的计数方式,预置的计数初值为156,若通过引脚T0输入周期为1ms的脉冲,则定时器0的定时时间为(100mS)。
9.假设累加器A的内容为30H,执行指令“1000H:
MOVCA,@A+PC”后,会把存储器(1032H)单元的内容送累加器A中。
10.十进制24对应的二进制数表示为(00011000),十六进制数表示为(18H),BCD码表示为(00100100);-24的补码表示为(11101000)。
二、选择题(20分)
1.在共阴极静态LED显示电路中,D0~D7分别对应a~dp,若使某位LED显示一个3,则应向此位LED传送的段码数字量是(B),若将其改为共阳极静态LED显示电路,则应向此位LED传送的段码数字量是(C)
A、3FHB、4FHC、B0HD、CFH
2.取指操作后,PC的值是(C)
A.当前指令前一条指令的地址B.当前正在执行指令的地址
C.下一条指令的地址D.控制器中指令寄存器的地址
3.设置堆栈指针SP=30H后,进行一系列堆栈操作。
当堆栈数据全部弹出后,SP应指向(A)
A.30H单元B.07H单元C.31H单元D.2FH单元
4.若在系统中只扩展一片Intel2732(4K×8),除应使用P0口的8条口线外,至少还应使用P2口的口线(B)
A.4条B.5条C.6条D.7条
5.允许打开INT1及定时器T0,禁止其他中断,则IE应设为(B)
A、34HB、86HC、68HD、88H
6.控制串行接口工作方式的寄存器是(C)
A、TCONB、PCONC、SCOND、TMOD
7.以下各项中不能用来对内部数据存储器进行访问的是(A)
A.数据指针DPTRB.堆栈指针SP
C.按存储单元地址或名称D.由R0或R1作间址存储器
8.执行返回指令后,返回的断点是(B)
A.调用指令的首地址B.调用指令的末地址
C.调用指令的下一条指令的首地址D.返回指令的末地址
9.下列条件中,不是中断响应必要条件的是(B)
A.TCON或SCON寄存器中相关的中断标志位置1
B.IP寄存器中相关位置1
C.IE寄存器中相关的中断允许位置1
D.中断请求发生在指令周期的最后一个机器周期
10.在LED显示中,为了输出位控和段控信号,应使用命令(B)
A.MOVB.MOVXC.MOVCD.XCH
11.有一个数152,它与十六进制6A相等,那么该数是(B)
A.二进制数B.八进制数C.十进制数D.四进制数
12.下列特点中不属于闪速存储器的是(C)
A.读/写速度快B.可以在线编程C.易失性D.低功耗
三、判错题(要求解释)(15分)
1.MCS-51单片机的程序存储器只是用来存放程序的。
(错)
2.MCS-51单片机只能做控制用,不能完成算术运算。
(错)
3.特殊功能寄存器SCON与定时器/计数器的控制无关。
(对)
4.必须有中断源发出中断请求,并且CPU开中断,CPU才可能响应中断。
(对)
5.特殊功能寄存器SP内装的是栈顶首地址单元的内容。
(错)
6.单片机执行程序需要使用MOVC指令从程序存储器中逐条读出指令。
(对)
7.单片机内部RAM和外部RAM是统一编址的,它们的访问指令相同。
(错)
8.扩展I/O口占用片外数据存储器的地址资源。
(对)
9.8051单片机,程序存储器数和数据存储器扩展的最大范围都是一样的。
()
10.要进行多机通信,MCS-51单片机串行接口的工作方式应选方式1。
(错)
11.MCS-51单片机的串行接口是全双工的。
(对)
12.单片机数据存储器只使用MOV指令进行读写。
(错)
四、简答题(任选5个)(25分)
1.简述8255的3种工作方式;
答案要点:
各个方式的解释说明;
各方式对应端口的使用说明。
(1)方式0:
是一种基本输入输出方式;
(2)方式1:
选通输入输出,采用应答联络的输入/输出工作方式
(3)方式3:
双向传送
2.简述键盘扫描及键码生成原理;
答案要点:
键盘扫描过程;
键码形成原理。
两步:
第一:
识别键盘有无键按下:
第二:
识别哪个键按下。
3.简述80C51单片机定时器/计数器的工作方式;
答案要点:
各方式的解释说明;
各个方式下的定时计算及定时计数范围。
(1)方式0:
13位定时器/计数器
(2)方式1:
为16位定时器/计数器
(3)方式2:
8位的常熟自动重新装载的定时器/计数器
(4)方式3:
用于T0此时T0分成两个8位计数器,T1停止计数
4.简述80c51单片机串行口的工作方式;
答案要点:
各个方式的解释及设置;
各方式的功能描述;
各个方式下的波特率的计算。
四种工作方式:
方式0:
同步移位寄存器方式(用于扩展I/O口)
方式1:
8位异步移位寄存器,波特率可变(有定时器控制)
方式2:
9位异步收发
方式3:
9位异步收发,波特率可变
5.简述LED显示器的显示原理;
答案要点:
数码管解释;
数码管两种接法(共阴及共阳)及引脚分布;
数码管段码形成。
N个LED显示块有N位位选线和8xN条段码线。
段码线控制显示字符的字型,而位选线为各个LED显示块中各段的公共端,他控制该LED显示的亮和暗。
6.简述80c51单片机的中断响应过程。
答案要点:
明确中断响应的三个阶段;
三个阶段的说明;
中断响应的快慢说明。
当测控对象发出中断请求时,单片机暂时中止当前正在执行的主程序,转到中断服务处理程序处理服务请求,中断服务处理程序处理完成中断服务请求后,再回到原来的被终止的地方,继续执行被中断的程序。
五、应用题(要求有设计思路,有流程图及程序注释)(选作3个)(25分)
1.设单片机晶振频率为6MHz,使用定时器1以方式0产生周期为500uS的等宽正方波连续脉冲,并由P1.0输出(要求以查询及中断两种方式实现)。
解:
计数初值计算:
(213-X)×2×10-6=250×10-6 →X=8067=FC03H
即TH1=FCH,TL1=03H
TMOD寄存器的初始化:
TMOD=00H
参考程序:
查询方式:
MOVTMOD,#00H
MOVTH1,#0FCH
MOVTL1,#03H
MOVIE,#00H
SETBTR1
LOOP:
JBCTF1,LOOP1
AJMPLOOP
LOOP1:
MOVTH1,#0FCH
MOVTL1,#03H
CLRTF1
CPLP1.0
AJMPLOOP
中断方式:
MOVTMOD,#00H
MOVTH1,#0FCH
MOVTL1,#03H
SETBEA
SETBET1
LOOP:
SETBTR1
HERE:
SJMP$
中断服务程序:
MOVTH1,#0FCH
MOVTL1,#03H
CPLP1.0
RETI
2.用一片8255芯片实现4×4键盘和6位LED显示器的接口。
试画出接口连线图,并做具体连接说明。
参考设计:
利用PB口控制LED灯的段码,PA口控制LED灯的位;PC口连接并控制4×4键盘。
3.将单片机内36H地址的数据98以两位数码管显示出来。
试设计一电路图完成此任务。
要求采用串行方式0传输数据至数码管显示。
参考设计:
参考程序:
ORG0000H
AJMPMAIN
ORG0030H
MAIN:
MOVR1,#36H
MOV@R1,#98H
MOVA,@R1
MOVR0,A
ACALLDELAY
AJMPMAIN
DISP:
MOVA,R0
ANLA,#0FH
ACALLDSEND
MOVA,R0
SWAPA
ANLA,#0FH
ACALLDSEND
RET
DSEND:
MOVDPTR,#SGTB1
MOVCA,@A+DPTR
MOVSBUF,A
JNBTI,$
CLRTI
RET
DELAY:
MOVR6,#250
DELAY1:
MOVR7,#250
DJNZR7,$
DJNZR6,DELAY1
RET
SGTB1:
DB03H,9FH,25H,0DH,99H,49H,41H
DB1FH,01H,09H,11H,0C1H,63H,85H
DB61H,21H,00H;0,1,2,…D,E,F
4.假设有多个单字节数,依次存放在外部RAM21H开始的连续单元中,要求把这些数相加并将结果存放在R1和R2中(假定和为2字节数)。
其中R1为高位字节。
参考程序:
MOVR0,#21H
MOVR3,#N
MOVR1,#00H
MOVR2,#00H
LOOP:
MOVXA,@R0
ADDA,R2
MOVR2,A
JNCLOOP1
INCR1
LOOP1:
INCR0
DJNZR3,LOOP