范文一:单片机原理与应用单片机考试资料_3
单片机原理与应用 资料
一、填空题
1(80C31,80C51,87C51芯片最主要的差别是 80C31内部 没有ROM , 80C51内部 有4KROM , 87C51内部 有4KEPROM 。
2(80C51单片机的位寻址区地址范围是 00 , 7F H。
3(80C51的最大程序存储器容量是 64 KB。它的寻址空间的范围是 0000 , FFFF H。 4(80C51有 4 个平行口,每个平行口有 8 位。 5(80C51单片机的内部工作寄存器区地址范围是 00 , 1F H。 6(80C51单片机的内部有 2 个 加 法 16 位计数/定时器。
7((A)=5BH,执行指令SWAP A后,(A)= B5H 。再执行CLR A后,(A)= 00H 。 8(单片机复位后(PC)= 0000 H,(SP)= 07 H,(P1)= FF H。 9(MCS-51系列的三个典型芯片是 8031 、 8051 、 8751 。 10(80C51单片机的位寻址区的位地址范围是 00 , 7F H。
11. 80C51的内部存储器容量是 4 KB。它的寻址空间的范围是 0000 , 0FFF H。 12(设PSW=88H,用的是 1 组工作寄存器,此时R3的字节地址是 0B H。 13(80C51单片机的内部工作寄存器区地址范围是 00 , 1F H。
14(80C51内部有 128 字节RAM,80C52内部有 256 字节RAM。
15(JZ rel 指令转移条件是 A 的内容为 00 。
16(DPTR由 DPH 与 DPL 两个特殊功能寄存器构成。
17(80C51 单片机有 40 个引脚,引脚ALE输出 地址锁存 信号。 18(80C51单片机的位寻址区有 128 个位地址。
19(80C51的T0,T1引脚属于 P3 平行口。
20(80C51单片机的内部工作寄存器区地址范围是 00 , 1F H。
21(单片机复位后(IE)= 00H H,(IP)= 00H H,(P2)= FF H。 22(80C51单片机的平行口的读操作有读 引脚 与读 锁存器 两种。 23(80C51单片机内部RAM可以分成三部分,它们是 工作寄存器 区、 位寻址区 、(堆栈)数据缓冲 区。 24(80C51单片机引脚是 程序存储器读(或程序存储器选通) 信号。 PSEN
25(80C51的外部程序存储器的寻址空间的范围是 0000 , FFFF H。 26(80C51单片机只使用外部存储器时,引脚 EA’ 应该接 地 。 27((A)=7EH,执行指令SWAP A后,(A)= E7H 。再执行CPL A后,(A)= 18H 。 28(单片机复位后(PC)= 0000H H,(DPL)= 00H H,(P2)= FFH H。 29(JC rel 指令转移条件是 CY 的内容为 1(或高电平) 。
30(单片机接口技术要求输出要 锁存 ,输入要 三态 。
二、选择题(包括作业选择题)
1、下列指令中正确的是( A )。
A(ADD A, R4; B( ADD 20H,R4; C( ADD R4, R3; D( ADD @R4, R3; 2(下列指令中影响标志位CY的指令有(A )
D(ADD A,20H B( RL A C( RR A D( INC A 3. 指令RLC A,表示A中内容( C )。
C( 左移一位 B(右移一位 C(连同进位左移一位 D(连同进位右移一位 4(指令MOV 21H,20H是( A )寻址方式。
A. 直接 B(位 C( 寄存器间接 D( 寄存器
,
5( 指令XCH A, @R1是( C )寻址方式。
A( 直接 B( 立即 C( 寄存器间接 D( 寄存器 6、程序指针PC在( C )中 。
A(CPU运算器 B(外部程序存储器 C(CPU控制器 D(外部数据存储器 7(当标志寄存器P S W的RS0和RS1分别为0和1时,系统选用的工作寄存器组为( C )。
A(组0 B(组1 C、组2 D(组3
三、简答题(简答题可由填空题转化而来)
1(设PSW=08H,使用的是第几组工作寄存器,此时R5的字节地址是多少, 答:第1组。0DH。
2(指令MOVC A,@A+DPTR,的源操作数是什么寻址方式,它的操作对象是在数据存储器还是在程序存储器中,
答:变址寻址。在程序存储器中。
3(什么是PC的当前值,
答:(正在执行指令的)下一条指令的地址。
四、阅读与分析程序(包括作业)
1(下列程序段执行后,(A)=_________,(PSW)=_________。(必须用16进制数表示)
MOV PSW, ,88H
MOV A, #0BBH
RLC A
RLC A
(A)=___EFH____,(PSW)=_09H___。
2(若(CY)=0,(P1)=1111 1010B,(P3)=1011 1100B。执行下列程序段后,CY、Pl口及P3口内容为什么,
(Pl口及P3口结果必须用16进制数表示)
MOV P1.3, C ; (P1)= 1111 0010B
MOV P1.4, C ; (P1)= 1110 0010B
MOV C, P1.6 ; (CY)=1
MOV P3.6, C ; (P3)=1111 1100
MOV C, P1.0 ; (CY)=0
MOV P3.4, C ; (P3)=1110 1100
执行后:(CY)=0;(P1)=E2H;(P3)=ECH
3(下列程序段执行后,(R0)=___7EH ______,(7EH)=___ FF____,(7FH)=___3FH _____.
MOV R0, #7FH
MOV 7EH, #00H
MOV 7FH, #40H
DEC @R0
DEC R0
DEC @R0
4(执行下面的程序后,累加器(A)=,(PSW)=,如果是有符号数是否溢出,(要求写出加法二进制算式)
MOV PSW, ,88H
MOV A, ,0BAH
SUBB A, #7DH
(A)=3CH;(PSW)=4CH;有符号数溢出。
,
5(下面指令语句JNC转移的条件是什么, 执行后(A)=(用16进制数表示),是否转移,当rel=96H时,
转移的目的地址是什么(不管是否转移),
MOV PSW, ,00H
MOV A, ,0BAH
RLC A
3040H JNC rel ;两字节指令
转移条件:(CY)=0;
执行后:(A)=74H;
不转移;
目的地址:3040H+FF96H+2H = 2FD8H
五、编程题(包括作业)
1(写出将外部RAM单元1000H的内容传送到内部RAM单元60H的汇编语言语句。 解: MOV DPTR, #1000H
MOVX A, @DPTR
MOV 60H, A
2(执行下面的程序后,累加器(A)=,(PSW)=,如果是有符号数是否溢出,(要求写出加法二进制算式)
MOV PSW, ,88H
MOV A, ,0BAH
ADDC A, #7DH
解: (A)=38H (PSW)= C9H,有符号数不溢出。
3(写出将内部RAM单元5CH的内容传送到外部RAM单元0800H的汇编语言语句。
MOV DPTR, #0800H
MOV A, 5CH
MOVX @DPTR, A
4(编写程序,将 R1中低四位与R2中高四位合并成一个8位数,并存入R1中。
MOV A, R1
ANL A, #0FH
MOV R1, A
MOV A, R2
ANL A, #0F0H
ORL A, R1
MOV R1, A
5(试编写程序,完成两个16位数的减法:7F4DH,2B4EH,结果存人内部RAM的30H和31H单元,31H单元
存差的高8位,30H单元存差的低8位。
CLR C
MOV A, #4DH
SUBB A, #4EH
MOV 30H,A
MOV A, #7FH
SUBB A, #2BH
MOV 31H,A
,
6(若单片机的晶振频率为l2MHz,试用双重循环转移指令(DJNZ)编写延时20mS的延时子程序,要求内
循环为循环120次。(要求写出有关的算式) 解: Tcy = 1 (μ S)
t = ( 2x + 3) y ?Tcy
x =120=78H
y = t / [( 2x + 3) ?Tcy ] = 20000 / 243 = 82.3 ?82=52H
DELAY: MOV R6, #52H
LL: MOV R7, #78H
L: DJNZ R7, L
DJNZ R6, LL
RET
,
范文二:单片机原理与应用考试试题(A)JD
院系姓名 考试形式考试时间 成绩
一、填空题(每空1分,共16分)
1.计算机的数据传送有两种方式,即:(方式和()方式,其中具有成本低特点的是( 串行 )数据传送。
2.在查询和中断两种数据输入输出控制方式中,CPU效率较高的是(断 )。
3.指令MOVX @DPTR ,A, 原操作数的寻址方式是(),执行时产生的控制信号是( WR )有效。
4.通过堆栈操作实现子程序调用,首先要把()的内容压入堆栈,以进行断点保护。调用返回时进行出栈操作,把保护的断点送回( PC )。 5.在单片机中,为实现数据的I/O传送,可使用3种控制方式,即()方式,( 中断 )方式和(查询 )方式。
6.为扩展存储器而构成系统总线,应以P0口的8位口线作为( 地址/数据 )线,以P2口的口线作为( 高8位地址 )线。
7.在MCS-51中PC和DPTR都用于提供地址,但PC是为访问(存储器提供地址,而DPTR是为访问( 数据 )存储器提供地址。
8. )功能,连接到数据总线上的输入口应具有( 三态 )功能。
二、单选题(每小题2分,共16分)
1.在下列单片机中使用掩膜ROM作为内部程序存储器的是( B )。 (A)8031 (B)80C51 (C)8032 (D)87C51 2. 在寄存器间址寻址方式中,指定寄存器中存放的是( D )。
(A) 操作数 (B) 转移地址 ( C) 地址偏移量 (D) 操作数地址 3. 中断查询,查询的是( C )
(A)中断请求信号 (B)外中断方式控制位 (C)中断标志位 (D)中断允许控制位
4.执行中断返回指令,要从堆栈弹出断点地址,以便去执行被中断了的主程序。从堆栈弹出的断点送给( B )
(A)A (B)PC (C)DPTR (D)CY
5. 执行返回指令时,返回的断点是( C )
(A)调用指令的首地址 (B)调用指令的末地址 (C)调用指令下一条指令的首地址 (D)返回指令的末地址 6.对程序存储器的读操作,只能使用( C )
(A)MOV指令 (B) PUSH指令 (C)MOVC指令 (D)MOVX指令 7.必须进行十进制调整的十进制运算( A )
(A) 有加法和减法 (B)有乘法和除法 (C)只有减法 (D)只有加法 8.在MCS—51中,需要外加电路实现中断撤除的是 ( D )
(A)定时中断 (B)脉冲方式的外部中断 (C)串行中断 (D)电平方式的外部中断
二、程序阅读(第1小题4分,第2小题14分,共18分)
1.执行以下程序段
MOV SP,#3AH
MOV A,#20H ;(A)=20H MOV B,#30H ;(B)=30H PUSH ACC ;(SP)=3BH
PUSH B ;(SP)=3CH
POP ACC ;(A)=30H,(SP)=3BH POP B ;(B)=20H,(SP)=3AH
后,试指出A和B以及SP里的内容各为多少? 答:(A)=30H,(B)=20H,(SP)=3AH
2. 内部RAM 20H单元开始存放8个8位无符号二进制数,找出其中的最大数的程序如下。阅读程序后,请给程序加上适当注释,并画出该程序的流程图。
ORG START
START:MOV R0,#20H ;首地址送R0
MOV R7,#08H ;指定长度计数器R7 MOV A,@R0 ;取第一个数送A DEC R7 ;长度计数器内容减1 LOOP: INC R0 ;修改地址
MOV 2AH,@R0 ;取第二个数送2AH CJNE A,2AH,CHK ;前后两个数比较 CHK: JNC LOOP1 ;前者大于后者去LOOP1 MOV A,@R0 ;前者小于后者,大数存A LOOP1:DJNZ R7,LOOP ;8个数没比完去LOOP MOV 2BH,A ;比完了大数存2BH SJMP $ ;等待 END ;结束
三、简单编程(第1小题6分,第2小题8分,共14分) 1.设单片机8031系统的振荡频率为6MHz,试编程实现10mS的延时程序。
2.设8031时钟频率f=12MHz,请编出利用定时器T0在P1.0引脚上输出周期为2秒的方波程序。
解:1、DELAY: MOV R6,#0AH DELAY1:MOV R7,#0FAH DELAY0:DJNZ R7,DELAY0 DJNZ R6,DELAY1 RET
2、 AND TMOD,#0F0H
ORL TOMD,01H MOV TH0,#0D8H MOV TL0,#0E6H SETB TR0 SETB EA SETB ET0
PL0: MOV R2,#10 PL1: MOV P1,#01H
CJNE R2,#0,PL1 CPL P1.0 SJMP PL0
TO-INT:CLR TR0 DEC R2
MOV TH0,#0D8H MOV TL0,#0E6H SETB TR0 RETI END
四、简答(每小题6分,共12分)
1.假定异步串行通信的字符格式为一个起始位、8个数据位、一个停止位和一个偶校验位,请画出传送字符“T”的帧格式。(T的ASCII码为54H)
解:
0 0 0 1 0 1 0 1 0 1 1
起始位 偶校验 停止
位
说明:图中数据可用D0D1D2D3D4D5D6D7代替算对。
2.在MCS—51单片机系统中,外部程序存储器和数据存储器共用16位地址
线和8位数据线,为什么不会发生冲突﹖
答:因为在MCS—51单片机系统中,对外部程序存储器和数据存储器的操作的指令不同,所以不会发生冲突。
五、应用(第1小题16分,第2小题8分,共24分)
1.8031通过8155对6位共阳极数码管LED接口的动态显示程序如下:
ORG 2000H
DISPLY:MOV A,#06H ;给8155送控制字
MOV DPTR,#8000H MOVX @DPTR,A
DISPLY1:MOV R0, #70H ;指向显示缓冲区
MOV R3, #0FEH ;
MOV A, R3
LD0: MOV DPTR,#8003H ;送8155C口地址
MOVX @DPTR, A ;扫描初值送8155C口 MOV DPTR,#8002H ;送8155B口地址 MOV A,@R0 ;取待显示数 ADD A, #13 ;加偏移量 MOVC A,@A+PC ;查段码表
MOVX @DPTR, A ;待显示字符送8155B口 ACALL DELAY ;调用延时子程序 INC R0 ;修改地址
MOV A, R3
JNB ACC.5, LD1 ;6位显示完了吗?
RL A ;没有,则下一位
MOV R3, A AJMP LD0
DTAB: DB 0C0H,0F9H,0A4H, 0B0H, 99H ;字符表
DB 92H, 82H, 0F8H, 80H, 90H DB 88H, 83H, 0C6H, 0A1H, 86H DB 8EH,0FFH,0CH,89H, 7FH,0BFH
DELAY: MOV R7,#02H ;延时子程序 DELAY1: MOV R6, #0FFH
DELAY2: DJNZ R6, DELAY2
DJNZ R7, DELAY1 RET END
*待显示的数据放在始址为70H的显示缓冲区。8155的命令字:
D7 D6 D5 D4 D3 D2 D1 D0 TM2,TM1,IEB,IEA,PC2,PC1,PB,PA 要求:1).阅读程序,给程序加适当的注释;
2).根据所给程序,画出硬件连接图。要求详细画出8031与8155的
连线,并标注清楚,8155与显示器部分可简画;
3).指出指令“ADD A, #13”中的“13”为何意?
解:1、注释见程序边
2、8155与显示器部分的硬件连接图如下:
LD1: RET 6位显示完了返回主程
3、指令ADD A,#13中的13是查表指令到段码表间的偏移量。
2、试画出8031单片机和外部2片EPROM2732的连线图,规定采用三-八译码,通过8031的P2.6、P2.5、P2.4译码,指出各片的地址范围。
第1片2732的地址范围:P2.7 P2.6 P2.5 P2.4=0001——1001,即1000H——1FFFH或 9000H——9FFFH 第2片2732的地址范围:P2.7 P2.6 P2.5 P2.4=0011——1011,即3000H——3FFFH或 B000H——BFFFH
范文三:单片机原理与应用考试论文
理学院 School of Sciences
单片机原理与应用
考试论文
学生姓名: 学生学号: 所在班级:
方雪军 201101081 电子111
所在专业: 电子信息科学与技术
引 言
自习室是学生们学习的重要场所,对于自习室的管理工作也会带来麻烦,通常自习室里没人却灯火通明,造成电力浪费,通过此设备,可以自动对自习室进行供电的调节。从人达到对资源的有效利用,避免浪费!因此,利用STC公司的89C52RC单片机来设计教室人数统计系统,扩展两个光电传感器和一块8*8LED显示器,可以将当前教室人数显示在门口,以方便同学们方便快捷地选择自习室进行自习,同时,当教室人数少于10人时候,本设备自动点亮自习室第一排灯光,人数在11-20人时候,本设备自动点亮自习室第一、二排灯光,21-30人时候,本设备自动点亮自习室第一、二、三排灯光,大于31人时候,教室灯光全亮。
1.系统控制模块的硬件设计
1.1系统控制模块的硬件构成
系统控制单元以单片机主控模块为核心,其他外围电路主要包括:ISP下载线模块、系统供电模块、硬件时钟模块、环境光模块、热释电红外传感器模块、灯光驱动模块。其结构框图如图1所示。
图1 室灯光自动控制系统结构框图
1.2 控制系统的主要硬件电路
本系统的主控模块主要采用STC公司的89C52RC作为主控芯片, STC89C52的I/O端口与系统的其他外围器件接口的链接电路如图2所示。其中具体包括在线编程模块电路、系统复位电路、系统供电电路、环境光采集电路、报警系统电路。
图2系统电路图
1.3热释电红外传感器模块的工作原理
热释电传感器在接收到人体红外辐射温度发生变化时就会失去平衡,向外释放电荷,后续电路经过检测处理后就会产生人体存在信号。为了只对人体红外辐射敏感,他的辐射照面覆盖有特殊的菲尼尔滤光片。热释电红外传感器模块DYP—ME003主要特性如下:
(1)感应为全自动式,人体进入感应范围时输出高电平(3.3V),离开时输出低电平(0.3V); (2)采用可重复触发方式;
(3)人体感应模块感应范围为锥形,感应角<>
2.控制模块软件设计与开发
2.1系统控制程序模块的设计
主程序通常是一个无限循环的过程。子程序主要分为中断子程序和功能子程序,他们之间可以相互嵌套和调用。在应用软件的设计中,尽可能各个功能模块写成子程序的形式。本系统的控制程序如下:
#include #define uchar unsigned char #define unit unsigned int sbit FMQ =P2^0;//output sbit SW =P2^4;//input sbit GUANG =P2^5;//input sbit LAMP =P2^6;//output sbit DYP =P3^2;//intput unit count; uchar Away_flag; void delay(unit x) { unit m,n; for(m=x;m>0;m--);} void main(void) { FMQ=1; LAMP=0; EA=1; EX0=1; IT0=1; while(1) { if(SW) { LAMP=1;} else { if(!GUANG) {LAMP=0;} else { if(DYP) { LAMP=1;} if(Away_flag) { TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; ET0=1; TR0=1; while(Away_flag); } }}} } void int_0()interrupt 0 { EX0=0; Away_flag=1; EX0=1; } void timer0() interrupt 1 { ET0=0; TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++ if(count==1200) { Away_flag=0; count=0; LAMP=0; FMQ=0; delay(20); FMQ=1; ET0=0; TR0=0;} ET0=1;} 系统上电后,会有一分钟左右的初始化时间,当系统初始化结束后,会通过光敏电阻采集环境的亮度,若达到自习时对亮度的需求,则无论有人与否都不会开灯,如果没有达到,教室有人进入时就会亮灯。当灯亮后,光敏电阻不再起作用,直到灯灭,才再次对环境光进行采集输入。当灯打开后,若教室的人全部离开,一分钟后在系统的控制下,灯自动熄灭。 2.2单片机系统调试 在对系统进行实际调试时,首先应对硬件进行硬件调试,同时对系统软件进行初步调试,此后再对硬件和软件进行动态调试,最后才能使系统进入正常工作状态。本系统调试过程中出现的问题及解决方案: 问题一:电源供电电路中集成稳压器温度过高。 分析解决:此问题可通过使用9V变压器,在集成稳压器前串联两只二极管降压,同时增大散热片来解决。 问题二:人体存在传感器在有人存在时输出高电平电压偏低 分析解决:在人体存在传感器的输出端加一个100千欧的上拉电阻。 3.结论 课题对灯光自动控制进行了研究。以人体存在作为控制器的主要输入参数,比单纯的人力管理更合理。该教室灯光控制系统是以STC89C52单片机主控单元为核心,通过相关电路的驱动,完成对系统设备(电灯)的控制。系统在实现智能化的同时,还设置了手动控制,这样在某些特殊情况,不至于影响教室的正常照明。系统功能的实现采用多任务模块编写,省去一些不必要的延时程序,提高了系统的运行效率。系统的硬件与软件设计经实验证实具有很好的稳定性。 本系统与已有的教室灯光配套使用时,不需要对原有电路设备进行大的改动,以最低的成本实现了教室灯光的智能控制。 制卷 日期 审批 日期 单片机原理与应用考试试题jd(A) 院系 班级 姓名 学号 考试形式 闭 卷 考试时间 120分钟 成绩 一、填空题(每空1分,共,6分) 1(计算机的数据传送有两种方式,即:( 串行 )方式和( 并行 )方式,其中具有成本低特点的是( 串行 )数据传送。 2(在查询和中断两种数据输入输出控制方式中,CPU效率较高的是( 中断 )。 3(指令MOVX @DPTR ,A, 原操作数的寻址方式是( 寄存器寻址 ),执行时产生的控制信号是( WR )有效。 4(通过堆栈操作实现子程序调用,首先要把( PC )的内容压入堆栈,以进行断点保护。调用返回时进行出栈操作,把保护的断点送回( PC )。 5(在单片机中,为实现数据的I/O传送,可使用3种控制方式,即( 直接 )方式,( 中断 )方式和(查询 )方式。 6(为扩展存储器而构成系统总线,应以P口的8位口线作为( 地址/数据 )0 线,以P口的口线作为( 高8位地址 )线。 2 7.在MCS-51中PC和DPTR都用于提供地址,但PC是为访问( 程序 )存储器提供地址,而DPTR是为访问( 数据 )存储器提供地址。 8. 从单片机的角度上看,连接到数据总线上的输出口应具有( 锁存 )功能,连接到数据总线上的输入口应具有( 三态 )功能。 二、单选题(每小题2分,共16分) 1(在下列单片机中使用掩膜ROM作为内部程序存储器的是( B )。 (A)8031 (B)80C51 (C)8032 (D)87C51 2. 在寄存器间址寻址方式中,指定寄存器中存放的是( D )。 (A) 操作数 (B) 转移地址 ( C) 地址偏移量 (D) 操作数地址 3. 中断查询,查询的是( C ) (A)中断请求信号 (B)外中断方式控制位 (C)中断标志位 (D)中断允许控制位 4.执行中断返回指令,要从堆栈弹出断点地址,以便去执行被中断了的主程序。从堆栈弹出的断点送给( B ) (A)A (B)PC (C)DPTR (D)CY 1 制卷 日期 审批 日期 5. 执行返回指令时,返回的断点是( C ) (A)调用指令的首地址 (B)调用指令的末地址 (C)调用指令下一条指令的首地址 (D)返回指令的末地址 6.对程序存储器的读操作,只能使用( C ) (A)MOV指令 (B) PUSH指令 (C)MOVC指令 (D)MOVX指令 7(必须进行十进制调整的十进制运算( A ) (A) 有加法和减法 (B)有乘法和除法 (C)只有减法 (D)只有加法 8(在MCS—51中,需要外加电路实现中断撤除的是 ( D ) (A)定时中断 (B)脉冲方式的外部中断 (C)串行中断 (D)电平方式的外部中断 二、程序阅读(第1小题4分,第2小题14分,共18分) 1(执行以下程序段 MOV SP,#3AH MOV A,#20H ;(A)=20H MOV B,#30H ;(B)=30H PUSH ACC ;(SP)=3BH PUSH B ;(SP)=3CH POP ACC ;(A)=30H,(SP)=3BH POP B ;(B)=20H,(SP)=3AH 后,试指出A和B以及SP里的内容各为多少, 答:(A)=30H,(B)=20H,(SP)=3AH 2. 内部RAM 20H单元开始存放8个8位无符号二进制数,找出其中的最大数的程序如下。阅读程序后,请给程序加上适当注释,并画出该程序的流程图。 ORG START START:MOV R,#20H ;首地址送R 00 MOV R,#08H ;指定长度计数器R 77 MOV A,@R ;取第一个数送A 0 DEC R ;长度计数器内容减1 7 LOOP: INC R ;修改地址 0 MOV 2AH,@R;取第二个数送2AH 0 CJNE A,2AH,CHK ;前后两个数比较 CHK: JNC LOOP1 ;前者大于后者去LOOP1 MOV A,@R ;前者小于后者,大数存A 0 LOOP1:DJNZ R,LOOP ;8个数没比完去LOOP 7 MOV 2BH,A ;比完了大数存2BH SJMP $ ;等待 END ;结束 2 制卷 日期 审批 日期 开始 数据区首地址送R 0 数据个数送R7 读第一个数送A R-1送R00 读下一个数送2AH Y (A),(2AH) N A (2AH) N R-1=0 7 Y 2BH A 结束 三、简单编程(第1小题6分,第2小题8分,共14分) 1(设单片机8031系统的振荡频率为6MHz,试编程实现10mS的延时程序。 2(设8031时钟频率f=12MHz,请编出利用定时器T在P引脚上输出周01.0 期为2秒的方波程序。 解:1、DELAY: MOV R,#0AH 6 DELAY1:MOV R,#0FAH 7 DELAY0:DJNZ R,DELAY0 7 DJNZ R,DELAY1 6 RET 3 制卷 日期 审批 日期 2、 AND TMOD,#0F0H ORL TOMD,01H MOV TH0,#0D8H MOV TL0,#0E6H SETB TR0 SETB EA SETB ET0 PL0: MOV R2,#10 PL1: MOV P1,#01H CJNE R2,#0,PL1 CPL P1.0 SJMP PL0 TO-INT:CLR TR0 DEC R2 MOV TH0,#0D8H MOV TL0,#0E6H SETB TR0 RETI END 四、简答(每小题6分,共12分) 1(假定异步串行通信的字符格式为一个起始位、8个数据位、一个停止位和 一个偶校验位,请画出传送字符“T”的帧格式。(T的ASCII码为54H) 解: 0 0 0 1 0 1 0 1 0 1 1 起始位 偶校验 停止 位 说明:图中数据可用DDDDDDDD代替算对。 01234567 2(在MCS—51单片机系统中,外部程序存储器和数据存储器共用16位地址 线和8位数据线,为什么不会发生冲突? 答:因为在MCS—51单片机系统中,对外部程序存储器和数据存储器的操 作的指令不同,所以不会发生冲突。 五、应用(第1小题16分,第2小题8分,共24分) 1(8031通过8155对6位共阳极数码管LED接口的动态显示程序如下: ORG 2000H DISPLY:MOV A,#06H ;给8155送控制字 MOV DPTR,#8000H MOVX @DPTR,A DISPLY1:MOV R0, #70H ;指向显示缓冲区 MOV R3, #0FEH ; 4 制卷 日期 审批 日期 MOV A, R3 LD0: MOV DPTR,#8003H ;送8155C口地址 MOVX @DPTR, A ;扫描初值送8155C口 MOV DPTR,#8002H ;送8155B口地址 MOV A,,R0 ;取待显示数 ADD A, #13 ;加偏移量 MOVC A,@A+PC ;查段码表 MOVX ,DPTR, A ;待显示字符送8155B口 ACALL DELAY ;调用延时子程序 INC R0 ;修改地址 MOV A, R3 JNB ACC.5, LD1 ;6位显示完了吗, RL A ;没有,则下一位 MOV R3, A AJMP LD0 LD1: RET 6位显示完了返回主程 DTAB: DB 0C0H,0F9H,0A4H, 0B0H, 99H ;字符表 DB 92H, 82H, 0F8H, 80H, 90H DB 88H, 83H, 0C6H, 0A1H, 86H DB 8EH,0FFH,0CH,89H, 7FH,0BFH DELAY: MOV R7,#02H ;延时子程序 DELAY1: MOV R6, #0FFH DELAY2: DJNZ R6, DELAY2 DJNZ R7, DELAY1 RET END *待显示的数据放在始址为70H的显示缓冲区。8155的命令字: D7 D6 D5 D4 D3 D2 D1 D0 TM2,TM1,IEB,IEA,PC2,PC1,PB,PA 要求:1).阅读程序,给程序加适当的注释; 2).根据所给程序,画出硬件连接图。要求详细画出8031与8155的连线,并标注清楚,8155与显示器部分可简画; 3).指出指令“ADD A, #13”中的“13”为何意, 解:1、注释见程序边 2、8155与显示器部分的硬件连接图如下: 5 制卷 日期 审批 日期 P2.7 IO/M PB 6位显示器 ALE ALE PAD 0 8031 8155 RDRD PC WRWR RST RST ?CE 3、指令ADD A,#13中的13是查表指令到段码表间的偏移量。 2、试画出8031单片机和外部2片EPROM2732的连线图,规定采用三-八译码, 通过8031的P2.6、P2.5、P2.4译码,指出各片的地址范围。 解: 74LS Y3 138 Y1 P2.4 PP2.6 2.5 4 -PP2.02.3 ADAD8-11 8-11 CE 8 CE ALE 1 G ADAD0-7 0-7 373 2732(2) 8031 2732(1) 8 P-PDD0.00.7 0-7 0-7 OE OE PSEN EA 第1片2732的地址范围:P P P P=0001——1001,即1000H——1FFFH或 2.72.62.52.4 9000H——9FFFH 第2片2732的地址范围:P P P P=0011——1011,即3000H——3FFFH或 2.72.62.52.4 B000H——BFFFH 6 填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为__7EH_______,X与Y的“异或”运算为___6CH_____。 2、若机器的字长为8位,X=17,Y=35,则X,Y=__110100_____,X,Y=_11101110______ (要求结果写出二进制形式)。 3、单片机的复位操作是____高电平______(高电平/低电平),单片机复位后,堆栈指针SP的值是___07h_____。 4、单片机中,常用作地址锁存器的芯片是__74HC373____________,常用作地址译码器芯片是_____74HC138____________。 5、若选择内部程序存储器,应该设置为_____高_______(高电平/低电平),那么,PSEN信号的处理方式为___不用__________________。 6、单片机程序的入口地址是____0000H__________,外部中断1的入口地址是______0013H_________。 7、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为__0.5us_______,机器周期为_____2us__________。 8、外围扩展芯片的选择方法有两种,它们分别是___线选法_______________和_____译码法__________。 9、单片机的内部RAM区中,可以位寻址的地址范围是____20H~2FH______________,特殊功能寄存器中,可位寻址的地址是___是能被8整除的地址_________________。 10、子程序返回指令是___ret______,中断子程序返回指令是__reti。 11、8051单片机的存储器的最大特点是内部RAM与外部RAM分开编址。 12、8051最多可以有32个并行输入输出口,最少也可以有8个并行口。 13、函数是C语言的基本单位。 14、串行口方式2接收到的第9位数据送SCON寄存器的RB8位中保存。 15、MCS-51内部提供3个可编程的16位定时/计数器,定时器有4种工作方式。 16、一个函数由两部分组成,即说明部分和语句部分。 17、串行口方式3发送的第9位数据要事先写入SCON寄存器的TB8位。 18、利用8155H可以扩展3个并行口,256个RAM单元。 19、C语言中输入和输出操作是由库函数scanf和printf等函数来完成。 二、选择题 1、C语言中最简单的数据类型包括(B)。 A、整型、实型、逻辑型B、整型、实型、字符型 C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型 2、当MCS-51单片机接有外部存储器,P2口可作为(C)。 A、数据输入口B、数据的输出口 C、准双向输入,输出口D、输出高8位地址 3、下列描述中正确的是(D)。 A、程序就是软件B、软件开发不受计算机系统的限制 C、软件既是逻辑实体,又是物理实体D、软件是程序、数据与相关文档的集合 4、下列计算机语言中,CPU能直接识别的是(D)。 A、自然语言B、高级语言C、汇编语言D、机器语言 5、MCS-5l单片机的堆栈区是设置在(C)中。 A、片内ROM区B、片外ROM区C、片内RAM区D、片外RAM区 6、以下叙述中正确的是(C)。 A、用C语言实现的算法必须要有输入和输出操作 B、用C语言实现的算法可以没有输出但必须要有输入 C、用C程序实现的算法可以没有输入但必须要有输出 D、用C程序实现的算法可以既没有输入也没有输出 7、定时器/计数器工作方式1是(D)。 A、8位计数器结构B、2个8位计数器结构 C、13位计数结构D、16位计数结构 8、C语言提供的合法的数据类型关键字是(B)。 A、DoubleB、shortC、integerD、Char 9、片内RAM的20H,2FH为位寻址区,所包含的位地址是(B)。 A、00H,20HB、00H,7FHC、20H,2FHD、00H,FFH 10、以下能正确定义一维数组的选项是(B)。 A、inta[5]={0,1,2,3,4,5};B、chara[]={0,1,2,3,4,5}; C、chara={'A','B','C'};D、inta[5]="0123"; 11、数据的存储结构是指(D)。 A、存储在外存中的数据B、数据所占的存储空间量 C、数据在计算机中的顺序存储方式D、数据的逻辑结构在计算机中的表示 12、下列关于栈的描述中错误的是(C)。 A、栈是先进后出的先性表B、栈只能顺序存储 C、栈具有记忆作用D、对栈的插入和删除操作中,不需要改变栈底指针 13、在寄存器间接寻址方式中,间址寄存器中存放的数据是(B)。 A、参与操作的数据B、操作数的地址值 C、程序的转换地址D、指令的操作码 14、MCS-51单片机的复位信号是(A)有效。 A、高电平B、低电平C、脉冲D、下降沿 15、为了使模块尽可能独立,要求(B)。 A、模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 B、模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 C、模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 D、模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 16、若MCS-51单片机使用晶振频率为6MHz时,其复位持续时间应该超过(B)。 A、2μsB、4μsC、8μsD、1ms 17、以下选项中可作为C语言合法常量的是(A) A、,80B、,080C、,8e1.0D、,80.0e 18、能够用紫外光擦除ROM中程序的只读存储器称为(C)。 A、掩膜ROMB、PROMC、EPROMD、EEPROM 19、以下不能定义为用户标识符是(D)。 A、MainB、_0C、_intD、sizeof 20、下选项中,不能作为合法常量的是(B)。//幂不能为小数 A、1.234e04B、1.234e0.4C、1.234e 4D、1.234e0 21、以下叙述中错误的是(C) A、对于double类型数组,不可以直接用数组名对数组进行整体输入或输出 B、数组名代表的是数组所占存储区的首地址,其值不可改变 C、当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的 出错信息 D、可以通过赋初值的方式确定数组元素的个数 22、以下与函数fseek(fp,0L,SEEK_SET)有相同作用的是(D) A、feof(fp)B、ftell(fp)C、fgetc(fp)D、rewind(fp) 23、存储16×16点阵的一个汉字信息,需要的字节数为(A) A、32B、64C、128D、256 24、已知1只共阴极LED显示器,其中a笔段为字形代码的最低位,若需显示数字1,则 它的字形代码应为(B)。 A、06HB、F9HC、30HD、CFH 25、在C语言中,合法的长整型常数是(A) A、OLB、4962710C、324562&D、216D 26、以下选项中合法的字符常量是(B) A、"B"B、’\010’C、68D、D 27、若PSW.4=0,PSW.3=1,要想把寄存器R0的内容入栈,应使用(D)指令。 A、PUSHR0B、PUSH@R0C、PUSH00HD、PUSH08H 28、在片外扩展一片2764程序存储器芯片要(B)地址线。 A、8根B、13根C、16根D、20根 29、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频 率应为(C) A、2MHzB、1MHzC、500kHzD、250kHz 30、下列数据字定义的数表中,(A)是错误的。 A、DW“AA”B、DW“A”C、DW“OABC”D、DWOABCH 三、判断题 (?),、在对某一函数进行多次调用时,系统会对相应的自动变量重新分配存储单元。 (×),、在C语言的复合语句中,只能包含可执行语句。 (?),、自动变量属于局部变量。 (×)4、Continue和break都可用来实现循环体的中止。 (?)5、字符常量的长度肯定为,。 (×)6、在MCS-51系统中,一个机器周期等于1.5μs。 (?)7、C语言允许在复合语句内定义自动变量。 (?)8、若一个函数的返回类型为void,则表示其没有返回值。 (×)9、所有定义在主函数之前的函数无需进行声明。 (×)10、定时器与计数器的工作原理均是对输入脉冲进行计数。 (×)11、END表示指令执行到此结束。 (?)12、ADC0809是8位逐次逼近式模/数转换接口。 (?)13、MCS-51的相对转移指令最大负跳距是127B。 (×)14、MCS-51的程序存储器只是用来存放程序的。 (?)15、TMOD中的GATE=1时,表示由两个信号控制定时器的的启停。 (×)16、MCS-51的特殊功能寄存器分布在60H,80H地址范围内。 (×)17、MCS-51系统可以没有复位电路。 (×)18、片内RAM与外部设备统一编址时,需要专门的输入/输出指令。 (?)19、锁存器、三态缓冲寄存器等简单芯片中没有命令寄存和状态寄存等功能。 (?)20、使用8751且=1时,仍可外扩64KB的程序存储器。 四、简答题 1、在使用8051的定时器/计数器前,应对它进行初始化,其步骤是什么, 答:(1)确定T/C的工作方式——编程TMOD寄存器; (2)计算T/C中的计数初值,并装载到TH和TL; (3)T/C在中断方式工作时,须开CPU中断和源中断——编程IE寄存器; (4)启动定时器/计数器——编程TCON中TR1或TR0位。 2、什么是重入函数,重入函数一般什么情况下使用,使用时有哪些需要注意的地方, 答:多个函数可以同时使用的函数,称为重入函数。 通常情况下,C51函数不能被递归调用,也不能应用导致递归调用的结构。有此限制是由于函数参数和局部变量是存储在固定的地址单元中。重入函数特性允许你声明一个重入函数。即可以被递归调用的函数。 重入函数可以被递归调用,也可以同时被两个或更多的进程调用。重入函数在实时应用中及中断服务程序代码和非中断程序代码必须共用一个函数的场合中经常用到。 3、8051引脚有多少I/O线,他们和单片机对外的地址总线和数据总线有什么关系,地址总线和数据总线各是几位, 答:8051引脚共有40个引脚,8051的地址总线由P2和P0口提供,P2口是地址总线的高8位,P0口是地址总线的低8位;数据总线由P0口提供;P0口的地址总线和数据总线是分时进行的,P0口的地址总线需要外接地址锁存器完成地址锁存。 地址总线共16位,数据总线是8位。 4、在有串行通信时,定时器/计数器1的作用是什么,怎样确定串行口的波特率, 答:在有串行通信时,定时器/计数器1的作用是串行口发生器。 串行口的波特率根据串行口的工作方式具有不同的计算方式: 方式0的波特率固定为晶体振荡器的十二分之一; 方式1的波特率=2SMOD.(定时器1的溢出率)/32; 方式2波特率=2SMOD.(fosc/64); 方式3波特率同方式1(定时器l作波特率发生器)。 5、如何消除键盘的抖动,怎样设置键盘中的复合键, 答:由于按键是机械开关结构,所以当用手按下其中一个键时,往往会出现所按键在闭合位置和断开位置之间发生跳几下后才会稳定到闭合状态的情况。在释放一个键时,也会出现类似的情况,这就是键的抖动,抖动的持续时间不一,但通常不会大于10ms。 若抖动问题不解决,就会引起对闭合键的多次读入。对于键抖动最方便的解决方法就是当发现有键按下后,不是立即进行扫描,而是延时大约10ms后再进行。由于一个键按下的时间一般会持续上百毫秒,所以延迟10ms后再扫描处理并不迟。 转载请注明出处范文大全网 » 单片机原理与应用单片机考试资范文四:单片机原理与应用考试试题
范文五:单片机原理与应用考试