试题6参考答案 一、填空 1.MCS-51单片机片内含有运算器和控制器的功能单元称为(CPU)。 2.单片机复位时SP的值为(07H)。 3.PSW寄存器中的(F0)位,是用户可自由使用的标志位。 4.8052单片机片内有(256)个RAM单元,(8K)字节程序存储器单元。 5.当8031单片机的一个机器周期为4μS时,这时它的晶振的频率为(3)MHz。 6.执行DJNZ R5,re1指令,将循环执行250次。此时R5初值应为(FAH)。 7.MCS-51单片机上电复位时,5个中断源中断优先级最低的是(串行口)。 8.89C51单片机采用外部时钟电路时,XTAL1引脚接(外部振荡器时钟),XTAL2引脚的接法为(悬空)。 9.当TMOD中的GATEx-=(1)时(x=0,1),定时器的启停由两个信号(TRx)和( NT)来控制的。 10.以8751为核心的单片机最小系统,除了要有8751单片机外,还要有(时钟)电路和(复 位)电路 11.定时器T0工作在方式3时,定时器T1主要用作(串行口的波特率发生器)。 12.己知8段共阴极LED数码显示器要显示某字符的段码为7DH(a段为最低位),此时显示器显示的字符为 (6). 13.若某存储器芯片地址线为15根,那么它的存储容量为(32)KB 14.使用8751单片机,当引脚A=1时,其外扩的程序存储器的最大容量为(60)KB,其地址从(1000) H~(FFFF )H 15.单片机执行子程序返回指令时,应把子程序调用指令的(下一条指令的首地址)装入P℃中。 16.欲使P1口的高2位输出1,低6位不变,应执行一条(0LP1,#0C0H)指令。 17.单片机系统常用的的A/D转换器有两种,它们是(逐次比较)型和(双积分)型 18.当MCS-51执行MOVC A,@A+PC指令时,伴随着(PSEN)控制信号有效。 19.某8位A/D转换器的转换电压的范围为0~5v,其分辨率为(0.19mv) 20.若P标志位为1,且A中的低6位均为0,那么A的内容为(80)H或(40)H。 21.串行口方式2接收到的第9位数据送(SCON)寄存器的(RB8)位中保存。 22.双积分A/D转换器的积分周期为20ms的整数倍时,能够抑制(工频干扰) 23.A/D转换器的两个重要的技术指标是(转换时间)和(分辨率)。 24.MCS-51单片机的P2口是(准双向)口。 二、判断,在后面的括号中填入“√”或“X” 1.单片机是一种CPU。(×) 2.A/D转换器的位数越多,其量化误差越小。(√) 3.MCS-51单片机中的寄存器PC是用户不能用指令直接访问的寄存器。(√) 4.访问单片机外部扩展RAM的低128字节与访问片内RAM单元,指令是不同的。(√) 5.并行接口芯片8255A的方式1是无条件的输入输出方式。(×) 6.MCS-51单片机对片外的RAM单元和片外的I/0端口使用相同的访问指令。(√)
试题 6 参考答案 一、填空 1.MCS-51 单片机片内含有运算器和控制器的功能单元称为( CPU )。 2.单片机复位时 SP 的值为( 07H )。 3.PSW 寄存器中的( F0 )位,是用户可自由使用的标志位。 4.8052 单片机片内有( 256 )个 RAM 单元,( 8K )字节程序存储器单元 。 5.当 8031 单片机的一个机器周期为 4μS 时,这时它的晶振的频率为( 3 )MHz。 6.执行 DJNZ R5,rel 指令,将循环执行 250 次。此时 R5 初值应为( FAH )。 7.MCS-51 单片机上电复位时,5 个中断源中断优先级最低的是( 串行口 )。 8.89C51单片机采用外部时钟电路时,XTAL1引脚接( 外部振荡器时钟 ),XTAL2引脚的接法为( 悬空 )。 9.当 TMOD 中的 GATEx=( 1 )时(x=0,1),定时器的启停由两个信号( TRx )和( INTx )来控制的。 10.以 8751 为核心的单片机最小系统,除了要有 8751 单片机外,还要有( 时钟 )电路和( 复 位 )电路 11.定时器 T0 工作在方式 3 时,定时器 T1 主要用作( 串行口的波特率发生器 )。 12.已知8段共阴极LED数码显示器要显示某字符的段码为7DH(a段为最低位),此时显示器显示的字符为 ( 6 )。 13.若某存储器芯片地址线为 15 根,那么它的存储容量为( 32 )KB 14.使用 8751 单片机,当引脚 EA =1 时,其外扩的程序存储器的最大容量为( 60)KB,其地址从( 1000 ) H~( FFFF )H 15.单片机执行子程序返回指令时,应把子程序调用指令的( 下一条指令的首地址 )装入PC中。 16.欲使 P1 口的高 2 位输出 1,低 6 位不变,应执行一条( ORL P1, #0C0H ) 指令。 17.单片机系统常用的的 A/D 转换器有两种,它们是(逐次比较 )型和( 双积分)型 18.当 MCS-51 执行 MOVC A,@A+PC 指令时,伴随着( PSEN )控制信号有效。 19.某 8 位 A/D 转换器的转换电压的范围为 0∼5v,其分辨率为( 0.19mv ) 20.若 P 标志位为 1,且 A 中的低 6 位均为 0,那么 A 的内容为( 80 )H 或( 40 )H。 21.串行口方式 2 接收到的第 9 位数据送( SCON )寄存器的( RB8 )位中保存。 22.双积分 A/D 转换器的积分周期为 20ms 的整数倍时,能够抑制( 工频干扰 ) 23.A/D 转换器的两个重要的技术指标是( 转换时间 )和(分辨率)。 24.MCS-51 单片机的 P2 口是( 准双向 )口。 二、判断,在后面的括号中填入“√”或“×” 1.单片机是一种 CPU。( × ) 2.A/D 转换器的位数越多,其量化误差越小。(√) 3.MCS-51 单片机中的寄存器 PC 是用户不能用指令直接访问的寄存器。( √ ) 4.访问单片机外部扩展 RAM 的低 128 字节与访问片内 RAM 单元,指令是不同的。(√) 5.并行接口芯片 8255A 的方式 1 是无条件的输入输出方式。(×) 6.MCS-51 单片机对片外的 RAM 单元和片外的 I/O 端口使用相同的访问指令。(√)
7.指令LJMP的跳转空间最大为64KB。(√) 8.8751单片机对片内的EPROM和外部扩展的EPROM的访问指令是相同的。(√) 9.MCS-51单片机的P1口如果作为输入端口使用时,必须先向P1口写入FFH。(√) 10.指令“MOVA,@R2”是错误的。(√) 11.串行口方式0的波特率仅与单片机的晶体振荡器有关,与定时器无关。(√) 12.MCS-51单片机的堆栈区设在片外的RAM区。(×) 13.MCS-51单片机中的同级中断不能嵌套。(√) 14.两片具有相同分辨率的AD转换器,其转换精度也是一样的。(×) 15.当MCS-51执行MOVX A,@R1指令时,伴随着WR信号有效。(X) 三、简答 1.写出MCS-51的所有中断源。并说明哪些中断源在响应中断时,其中断请求是由硬件自动清除,哪 些中断源必须用软件清除,为什么? 答:5个中断源:外部中断0(中断入口0003H)、定时器/计数器中断T0(中断入口000BH)、外部中 断1(中断入口0013H)、定时器/计数器中断T1(中断入口001BH)、定时器/计数器中断T1、串行口 接收/发送中断TI与RI(中断入口0023H)。 外部中断0和外部中断1其跳沿触发中断请求是自动撤消,但是其电平触发要外加电路来撤消。 两个定时器的中断请求是自动撤消的。 串行口的接收/发送中断请求TI/RI必须用软件清除,因为串行口的中断请求分为接收或发送中断,无法 直接断定是哪一个中断请求,所以必须根据程序的实际运行,来用软件清除。 2.下面是某8031系统的程序段,当8031响应定时器T0中断后,跳向T0中断中断服务子程序入口, 且执行了的第一条单字节指令后,此时P℃的内容为多少? ORG 0000H LIMP 4000H ORG 0003H LJMP 1000H ORG 000BH LJMP 2000H ORG 0013H LJMP 3000H 答:因为定时器T0中断的中断入口为000BH,跳向2000H后,再执行一条单字节指令,此时PC指向2000H单 元的下一个单元,所以此时PC的内容为2001H。 3.已知程序执行前有A=02H,SP=42H,(41HD)=FFH,(42H)=FFH。下述程序执行后,则A=(); SP=( );(41HD)=( );(42H0=( );PC( )。(5分) POP DPH DPH=FFH, POP DPL DPL=FFH,SP=40H MOV DPTR,#3000H DPTR =3000H, RL A :A=04组 MOV B,A ;B=04H MOVC A,@A+DPTR :A=50H PUSH Acc :41h=50H MOV A,B :A=04组 INC A :A=05H
7.指令 LJMP 的跳转空间最大为 64KB。(√ ) 8.8751 单片机对片内的 EPROM 和外部扩展的 EPROM 的访问指令是相同的。(√) 9.MCS-51 单片机的 P1 口如果作为输入端口使用时,必须先向 P1 口写入 FFH。(√) 10.指令“MOV A,@R2”是错误的。( √ ) 11.串行口方式 0 的波特率仅与单片机的晶体振荡器有关,与定时器无关。(√ ) 12.MCS-51 单片机的堆栈区设在片外的 RAM 区。( × ) 13.MCS-51 单片机中的同级中断不能嵌套。(√ ) 14.两片具有相同分辨率的 A/D 转换器,其转换精度也是一样的。(×) 15.当 MCS-51 执行 MOVX A,@R1 指令时,伴随着 WR 信号有效。( × ) 三、简答 1.写出 MCS-51 的所有中断源。并说明哪些中断源在响应中断时,其中断请求是由硬件自动清除,哪 些中断源必须用软件清除,为什么? 答:5 个中断源:外部中断 0(中断入口 0003H)、定时器/计数器中断 T0(中断入口 000BH)、外部中 断 1(中断入口 0013H)、定时器/计数器中断 T1(中断入口 001BH)、定时器/计数器中断 T1、串行口 接收/发送中断 TI 与 RI(中断入口 0023H)。 外部中断 0 和外部中断 1 其跳沿触发中断请求是自动撤消,但是其电平触发要外加电路来撤消。 两个定时器的中断请求是自动撤消的。 串行口的接收/发送中断请求 TI/RI 必须用软件清除,因为串行口的中断请求分为接收或发送中断,无法 直接断定是哪一个中断请求,所以必须根据程序的实际运行,来用软件清除。 2. 下面是某 8031 系统的程序段,当 8031 响应定时器 T0 中断后,跳向 T0 中断中断服务子程序入口, 且执行了的第一条单字节指令后,此时 PC 的内容为多少? ORG 0000H LJMP 4000H ORG 0003H LJMP 1000H ORG 000BH LJMP 2000H ORG 0013H LJMP 3000H 答:因为定时器T0中断的中断入口为000BH,跳向2000H后,再执行一条单字节指令,此时PC指向2000H 单 元的下一个单元,所以此时PC的内容为2001H。 3. 已知程序执行前有 A=02H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序执行后, 则 A=( ); SP=( );(41H)=( );(42H)=( );PC=( )。(5 分) POP DPH ;DPH= FFH, POP DPL ;DPL= FFH, SP=40H MOV DPTR,#3000H ;DPTR =3000H, RL A ;A =04H MOV B,A ;B =04H MOVC A,@A+DPTR ;A =50H PUSH Acc ;41h= 50H MOV A,B ;A =04H INC A ;A =05H
MOVC A,@A+DPTR :A=80H PUSH Acc :42h=80H RET :PC=8050HSP=40H ORG 3000H DB 10H,80H,30H,80H,50H,80H 答:A=80H,SP=40H,(41D=50H,(42H)=80H,PC8050H 四、下图为某MCS-51应用系统的3位LED8段共阳极静态显示器的接口电路,回答下列问题: (1)该静态显示器电路与动态扫描的显示器电路相比有哪些优缺点? (2)写出显示字符“3.”、“8”、“5”的段码,注意:段码的最低位为“a”段,段码的最高位为“dp”段。 (3)己知82C55的PA口、PB口和PC口的地址分别为FF7CH、FF7DH、FF7EH,且82C55的这3个端口均 己被初始化为方式0输出,用汇编语言编写出使3位LD共阳极显示器从左至右显示“3.85”的程序段。 来自8031单片机P0口 82C55 PA PB PC dp 答:(1)优点:亮度高,字符不闪烁,占用CPU资源少。缺点:占用的I/O口太多,当LED数码显 示器数目较多时,需要外扩展I/0口。 (2))3.:→30H: 8:→80H:5:→92H (3) MOV DPTR,#OFF7CH :PA口地址送DPTR MOV A,#30H MOVX@DPTR,A :左边数码管显示“3.” MOV DPTR,#OFF7DH :PB口地址送DPTR MOV A,#80H MOVX @DPTR,A :中间数码管显示“8” MOV@DPTR,#OFF7EH:PC口地址送DPTR MOV A,#92H MOVX @DPTR,A RET 五、请回答: 1.下图中外部扩展的程序存储器和数据存储器容量各是多少? 2.三片存储器芯片的地址范围分别是多少??(单片机发地址时,每次只能选中一片芯片)。 3.请编写程序(用汇编语言),指令后要有注释,要求: (1)将内部RAM40H4FH中的内容送入1#6264的前16个单元中: (2)将2#6264的前4个单元的内容送入片内RAM单元50H53H中:
MOVC A,@A+DPTR ;A =80H PUSH Acc ;42h= 80H RET ;PC=8050H SP=40H ORG 3000H DB 10H,80H,30H,80H,50H,80H 答:A=80H ,SP=40H,(41H)=50H,(42H)=80H ,PC=8050H 四、下图为某 MCS-51 应用系统的 3 位 LED 8 段共阳极静态显示器的接口电路,回答下列问题: (1)该静态显示器电路与动态扫描的显示器电路相比有哪些优缺点? (2)写出显示字符“3.”、“8”、“5”的段码,注意:段码的最低位为“a” 段,段码的最高位为“dp” 段。 (3)已知 82C55 的 PA 口、PB 口和 PC 口的地址分别为 FF7CH、FF7DH、FF7EH,且 82C55 的这 3 个端口均 已被初始化为方式 0 输出,用汇编语言编写出使 3 位 LED 共阳极显示器从左至右显示“3.85”的程序段。 答: (1) 优点:亮度高,字符不闪烁,占用 CPU 资源少。缺点:占用的 I/O 口太多,当 LED 数码显 示器数目较多时,需要外扩展 I/0 口。 (2) 3.:→30H; 8 :→80H;5 :→92H (3) MOV DPTR,#0FF7CH ;PA 口地址送 DPTR MOV A,#30H MOVX@DPTR,A ;左边数码管显示“3.” MOV DPTR,#0FF7DH ;PB 口地址送 DPTR MOV A,#80H MOVX @DPTR,A ;中间数码管显示“8” MOV @DPTR,#0FF7EH ;PC 口地址送 DPTR MOV A,#92H MOVX @DPTR,A RET 五、请回答: 1.下图中外部扩展的程序存储器和数据存储器容量各是多少? 2.三片存储器芯片的地址范围分别是多少??(单片机发地址时,每次只能选中一片芯片) 。 3.请编写程序(用汇编语言),指令后要有注释,要求: (1) 将内部 RAM 40H~4FH 中的内容送入 1# 6264 的前 16 个单元中; (2) 将 2# 6264 的前 4 个单元的内容送入片内 RAM 单元 50H~53H 中;
P2.0 5 DO Q0 8 D7 Q7 A0-A7A8-A12 A0-A7A8-A12 A0-A7A8-A12 74LS373 ALE G OE CE CE CE 2764 1#6264 2#6264 8031 +cs +5V cs D0-D7 OE O正亚 OE WR P0.7 8 P0.0 PSEN 丽 丽 答: 1.外扩的程序存储器容量为:8kB 外扩的数据存储器容量为:8kB×2=16kB 2. 程序存储器2764地址范围为:A15A14 A13 0 0 0 范围为:0000H广1FFFH 数据存储器1#6264地址范围为:A15 A14 A13 0 1 范围为:6OOOH7FFFH 数据存储器2#6264地址范围为: A15 A14 A13 1 0 1 范围为:AOOOH BFFFH 3.编写程序 (1) MOV R0,#40H MOV DPTR,#600OH:设置数据指针为60OOH LOOP:MOV A,@RO :将片内RAM(40~4FH)中的内容送入A中 MOVX@DPTR,A:将A→@DPTR中 INC RO INC DPTR CJNE RO,#10H,L00P:将此子程序,循环执行16次 RET (2) MOV R0,#50H MOV DPTR,#0A0O0H 设置数据指针为A000H LOOP:MOVX A,@DPTR
答: 1.外扩的程序存储器容量为:8kB 外扩的数据存储器容量为:8kB×2=16kB 2. 程序存储器 2764 地址范围为: A15 A14 A13 0 0 0 范围为:0000H~1FFFH 数据存储器 1#6264 地址范围为: A15 A14 A13 0 1 1 范围为:6000H~7FFFH 数据存储器 2#6264 地址范围为: A15 A14 A13 1 0 1 范围为:A000H~BFFFH 3.编写程序 (1) MOV R0, #40H MOV DPTR, #6000H ;设置数据指针为 6000H LOOP:MOV A, @R0 ; 将片内 RAM(40∼4FH)中的内容送入 A 中 MOVX @DPTR, A ; 将 A→@DPTR 中 INC R0 INC DPTR CJNE R0, #10H,LOOP; 将此子程序,循环执行 16 次 RET (2) MOV R0, #50H MOV DPTR, #0A000H ; 设置数据指针为 A000H LOOP:MOVX A, @DPTR
MOV @RO,A ;将外部数据存储器内容送入到片内中 INC RO INC DPTR CJNE R0,#04组,L00P:将此子程序循环执行4次 RET
MOV @R0, A ; 将外部数据存储器内容送入到片内中 INC R0 INC DPTR CJNE R0, #04H,LOOP ; 将此子程序循环执行 4 次 RET