
一 填空题
1、单片机是将微处理器、一定容量的 RAM 和ROM以及 I/O 口、定时器等电路集成在一块芯片上而构成的微型计算机。
2、单片机C51片内集成了 4 KB的FLASH ROM,共有 5 个中断源。
3、在C51中,只有当EA引脚接 高 电平时,CPU才访问片内的Flash ROM。
4、当CPU访问片外的存储器时,其低八位地址由 P0 口提供,高八位地址由 P2 口提供,8位数据由 P0 口提供。
5、在I/O口中, P0 口在接LED时,必须提供上拉电阻, P3 口具有第二功能。
6、C51具有 KB的字节寻址能力。
7、从应用形态上,微机可以分成三种:多板机、单板机、单片机。
8、12位地址线可寻址的范围为 0~4096 (十进制表示)。
9、单片机复位后SP= 07H 。
10、扩展的寻址方式一般包括 变址寻址、 相对寻址、位寻址。P40
11、分支结构可以分成单分支、双分支 、 多分支几种情况。
12.在C51中,一个机器周期包括 12 个振荡周期,而每条指令都由一个或几个机器周期组成,分别有单周期指令 、 双周期指令 、 4周期指令 。
13、80C51的中断系统有 5 个中断源, 2 个优先级。
14、数据指针DPTR是一个 16 位的 特殊功能寄存器 寄存器。
15、串行通信有 同步 通信和 异步 通信两种通信方式。
16、LED数码管有 动态 显示和 静态 显示两种方式。
17、当系统处于正常工作状态且振荡稳定后,在RST引脚上加一个 高 电平并维
持 2 个机器周期,可将系统复位。
18、单片机C51中的串行通信共有4 种方式,其中方式0 是用作同步移位寄存器来扩展I/O口的。
19、在C51中,片内RAM分为地址为 00H~7FH 的真正RAM区,和地址为80H~FFH的 特殊功能寄存器(SFR) 区两个部分。
20、在C51中,通用寄存器区共分为 4 组,每组 8 个工作寄存器,当CPU复位时,第 0 组寄存器为当前的工作寄存器。
21、中断处理过程分为3个阶段,即 中断响应 、中断处理以及 中断返回 。
22、在异步通信中,数据的帧格式定义一个字符由4部分组成,即: 起始位 、数据位、 奇偶校验位 和停止位。
23、串行通信中,为使设备同步工作,需要通信双方有两个共同的要求,一是 通信双方必须采用统一的编码方式 ,二是 通信双方必须能产生相同的传送速率 。
24、在C51中,外部中断由IT0(1)位来控制其两种触发方式,分别是 电平 触发方式和 边沿 触发方式。
二 判断题
1、在执行子程序调用或执行中断服务程序时都将产生压栈的动作。T
2、并行通信的优点是传送速度高,缺点是所需传送线较多,远距离通信不方便。T
3、串行通信的优点是只需一对传送线,成本低,适于远距离通信,缺点是传送速度较低。T
4、异步通信中,在线路上不传送字符时保持高电平。T
5、在异步通信的帧格式中,数据位是低位在前高位在后的排列方式。T
6、异步通信中,波特率是指每秒传送二进制代码的位数,单位是b/s。T
7、在C51的串行通信中,串行口的发送和接收都是对特殊功能寄存器SBUF进行读/写而实现的。T
8、在单片机C51中,串行通信方式1和方式3的波特率是固定不变的。F(P134)
9、在单片机C51中,读和写的SBUF在物理上是的,但地址是相同的。T
10、单片机C51一般使用非整数的晶振是为了获得精确的波特率。T
11、单片机C51的定时/计数器是否工作可以通过外部中断进行控制。T
12、单片机C51复位后,其PC指针初始化为0000H,使单片机从该地址单元开始执行程序。T
12、是读端口还是读锁存器是用指令来区别的。T
13、在C51的片内RAM区中,位地址和部分字节地址是冲突的。F
14、中断的矢量地址位于RAM区中。F
15、在C51中,当CPU访问片内、外ROM区时用MOVC指令,访问片外RAM区时用MOVX指令,访问片内RAM区时用MOV指令。T
16、工作寄存器组是通过置位PSW中的RS0和RS1来切换的。T
17、访问128个位地址用位寻址方式,访问低128字节单元用直接或间接寻址方式。T
18、程序计数器PC是一个可以寻址的特殊功能寄存器。F
19、在51系列单片机中,中断服务程序从矢量地址开始执行,一直到返回指令RETI为止。T
三 简答题
1、请说明为什么使用LED需要接限流电阻,当高电平为+5V时,正常点亮一个LED需要多大阻值的限流电阻(设LED的正常工作电流为10mA,导通压降为0.6V),为什么?
解:因为LED导通时,电压降是固定的(0.6V)。为了使LED既能正常工作(电流为10mA),又不至于被过大的电流损坏,所以必须加一个限流电阻,限流电阻为440欧。
2、简述C51单片机中断的概念。
当CPU正在处理某件事情的时候,外部发生的某一事件请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转去处理所发生的时间。中断服务处理完该事件以后,再回到原来被中止的地方,继续原来的工作,这样的过程成为中断。
3、什么是保护现场,什么是恢复现场?
保护现场:当CPU响应中断程序时,硬件会自动把断点地址(16位程序计数器的值)压入堆栈之外,用户还须注意保护有关工作寄存器、累加器、标志位等信息;
恢复现场:在完成中断服务程序后,恢复原工作寄存器、累加器、标志位等的内容。
4、单片机C51有哪些中断源,对其中断请求如何进行控制?
C51中断系统有5个中断源:
●INT0:外部中断0请求,低电平有效。通过P3.2引脚输入。
●INT1:外部中断1请求,低电平有效。通过P3.3引脚输入。
●T0:定时器/计数器0溢出中断请求。
●T1:定时器/计数器1溢出中断请求。
●TXD/RXD:串行口中断请求。当串行口完成一帧数据的发送或接收时,便请求中断。
5、简述单片机C51中断的自然优先级顺序,如何提高某一中断源的优先级别。
单片机80C51中断优先级有高到低顺序为:1)外部中断0;2)定时器/计数器0溢出中断;3)外部中断1;4)定时器/计数器1溢出中断;5)串行口中断。
中断的优先级有两级:高优先级和低优先级,五个中断源的优先级可以通过IP寄存器进行设置,如果需要提高某一个中断源优先级时,可以通过设置IP寄存器对应的位为1以提高优先级。
6、简述51系列单片机中断响应的条件。
●有中断源发出中断请求;
●中断总允许位EA=1,即CPU开中断;
●申请中断的中断源的中断允许位为1,即中断没有屏蔽;
●无同级或更高级中断正在被服务;
●当前的指令周期已经结束;
●若现在指令为RETI或者是访问IE或IP指令,则该指令以及紧接着的另一条指令已执行完。
7、在51系列单片机执行中断服务程序时,为什么一般都要在矢量地址开始的地方放一条跳转指令?
因为51系列单片机的两个相邻中断源中断服务程序入口地址相距只有8个单元,一般的中断服务程序是容纳不下的,因此一般都要在相应的中断服务程序入口地址中放一条跳转指令。
8、简述80C51串口通信的四种方式及其特点。
答:1)方式0:同步移位寄存器输入/输出方式,常用于扩展I/O口。波特率固定为振荡频率的1/12,并不受PCON寄存器中SMOD位的影响。2)方式1:用于串行发送或接收,为10位通用异步接口。TXD与RXD分别用于发送与接收数据。收发一帧数据的格式为1位起始位、8位数据位(低位在前)、1位停止位,共10位。波特率由定时器T1的溢出率与SMOD值同时决定。3)方式2:用于串行发送或接收,为11位通用异步接口。TXD与RXD分别用于发送与接收数据。收发一帧数据的格式为1位起始位、8位数据位(低位在前)、1位可编程的第9数据位和1位停止位,共11位。波特率取决于PCON中SMOD位的值:当SMOD=0时,波特率为 的1/;当SMOD=1时,波特率为 的1/32。4)方式3:用于串行发送或接收,为11位通用异步接口。TXD与RXD分别用于发送与接收数据。帧格式与方式2相同,波特率与方式1相同。
四 程序编程
1、将两个半字节数合并成一个一字节数。设内部RAM 40H, 41H单元中分别存放着8位二进制数, 要求取出两个单元中的低半字节, 并成一个字节后(40H单元数据存放在高4位), 存入50H单元中。
START: MOV R1, #40H ; 设置R1为数据指针
MOV A, @R1 ; 取出第一个单元中的内容
ANL A, #0FH ; 取第一个数的低半字节
SWAP A ; 移至高半字节
INC R1 ; 修改数据指针
XCH A, @R1 ; 取第二个单元中的内容
ANL A, # 0FH ; 取第二个数的低半字节
ORL A, @R1 ; 拼字
MOV 50H, A ; 存放结果
RET
2、用一个定时/计数器加软件计数器的方式,实现一秒的时钟基准信号,试写出程序。(设晶振频率为12MHz,由P1.0口输出秒信号。)
(本程序使用定时器T0,工作模式1。由于晶振频率为12MHz,因此利用定时器T0计时50ms,其初值为3CB0H。利用工作寄存器R7作软件计数器,计数20次。每计时满一秒,就将P1.0口输出信号取反,以输出秒信号。)
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP ONE
ORG 0030H
MAIN: MOV P1,0FFH
MOV SP,#60H
MOV R7,#20
MOV TMOD,#01H
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
SETB ET0
SETB EA
SJMP $
ONE: PUSH PSW
PUSH ACC
MOV TL0,#0B0H
MOV TH0,#3CH
DJNZ R7,LOOP
CPL P1.0
MOV R7,#20
LOOP: POP ACC
POP PSW
RETI
END
3、设有50个工作单元, 其首址为外部存储器8000H单元, 编写程序把所有工作单元清零。
ORG 2000H
CLR A
MOVX DPTR, #8000H
MOVX R0, 50
CLEAR: MOVX @DPTR, A
INC DPTR
DJNZ R0, CLEAR
RET
