MCS51的中断系统有几个中断源
- 格式:doc
- 大小:70.50 KB
- 文档页数:6
单片机的一些面试题整理1.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少?答:MCS51单片机有5个中断源,2个中断优先级,中断优先级由特殊功能寄存器IP控制,在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,各个中断源的入口地址分别是0003H、000BH、0013H、001BH、0023H。
单片机是将微处理器、一定容量的 RAM 和ROM以及 I/O 口、定时器等电路集成在一块芯片上而构成的微型计算机。
当CPU访问片外的存储器时,其低八位地址由P0口提供,高八位地址由P2口提供,8位数据由P0口提供。
在I/O口中,P0口在接LED时,必须提供上拉电阻,P3口具有第二功能。
19、是非题:工作寄存器区不允许做普通的RAM单元来使用。
F20、是非题:工作寄存器组是通过置位PSW中的RS0和RS1来切换的。
T21、是非题:特殊功能寄存器可以当作普通的RAM单元来使用。
F22、是非题:访问128个位地址用位寻址方式,访问低128字节单元用直接或间接寻址方式。
T23、是非题:堆栈指针SP的内容可指向片内00H~7FH的任何RAM单元,系统复位后,SP初始化为00H。
F24、数据指针DPTR是一个16位的特殊功能寄存器寄存器。
25、是非题:DPTR只能当作一个16位的特殊功能寄存器来使用。
F26、是非题:程序计数器PC是一个可以寻址的特殊功能寄存器。
F28、当系统处于正常工作状态且振荡稳定后,在RST引脚上加一个高电平并维持 2 个机器周期,可将系统复位。
29、是非题:单片机89C51复位后,其PC指针初始化为0000H,使单片机从该地址单元开始执行程序。
T31、是非题:单片机系统上电后,其内部RAM的值是不确定的。
T36、以下哪一条指令的写法是错误的(C)。
MCS-51单⽚机的中断系统单⽚机中断技术概述在任何⼀款事件驱动型的CPU⾥⾯都应该会有中断系统,因为中断就是为响应某种事件⽽存在的。
中断的灵活应⽤不仅能够实现想要的功能,⽽且合理的中断安排可以提⾼事件执⾏的效率,因此中断在单⽚机应⽤中的地位是⾮常重要的。
单⽚机中断(Interrupt)是硬件驱动事件,它使得CPU暂停当前的主程序,转⽽去执⾏⼀个中断服务⼦程序。
为了更形象地理解中断,下⾯以学⽣上⾃习时接电话为例阐述⼀下中断的概念。
单⽚机的中断系统有5个中断源、2个中断优先级,可实现两级中断服务程序嵌套。
如果单⽚机没有中断系统,单⽚机的⼤量时间可能会浪费在查询是否有服务请求发⽣的定时査询操作上。
采⽤中断技术完全消除了单⽚机在査询⽅式中的等待现象,⼤⼤地提⾼了单⽚机的⼯作效率和实时性。
单⽚机中断系统结构及中断控制中断系统结构图如图5-2所⽰。
由图5-2可见,MCS-51中断系统共有5个中断请求源:INT0——外部中断请求0,中断请求信号由INT0引脚输⼊。
定时/计数器T0计数溢出发出的中断请求。
INT1——外部中断请求1,中断请求信号由INT1引脚输⼊。
定时/计数器T1计数溢出发出的中断请求。
串⾏⼝中断请求。
中断优先级从⾼到底排列。
单⽚机如何知道有中断请求信号?是否能够响应该中断?若5个中断源请求信号同时到来,单⽚机如何响应?这些问题都可以由中断寄存器来解决。
单⽚机中断寄存器有中断标志寄存器TCON和SCON、中断使能寄存器IE和中断优先级寄存器IP,这些寄存器均为8位。
中断标志寄存器5个中断请求源的中断请求标志分别由TCON和SCON的相应位锁存,单⽚机通过这些中断标志位的状态便能知道具体是哪个中断源正在申请中断。
TCON寄存器TCON寄存器为定时/计数器的控制寄存器,字节地址为88H,可位寻址。
特殊功能寄存器TCON的格式如图5-3所⽰。
TCON各标志位功能如下。
TF1——定时/计数器T1的溢出中断请求标志位。
CS,S5一的五个中断源优先级。
mcs-51单片机有5个中断源,分别为:
1、外部中断0(INT0):默认中断级别最高,中断入口地址0003H;
2、定时/计数器0(T1):默认中断级别第2,中断入口地址000BH;
3、外部中断1(INT1):默认中断级别第3,中断入口地址0013H;
4、串行口中断(TX/RX):默认中断级别第4,中断入口地址0023H;
5、定时/计数器1(T1):默认中断级别最低,中断入口地址001BH。
中断请求源有两个中断优先级,每一个中断请求源可由软件设置为高优先级中断或低优先级中断,也可实现两级中断嵌套。
两级中断嵌套,就是正在执行低优先级中断的服务程序时,可被高优先级中断请求所中断,待高优先级中断处理完毕后,再返回低优先级中断服务程序。
第五章习题参考答案一、填空题1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。
2、外中断请求标志位是 IE0 和 IE1 。
3、 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后,CPU不能马上响应中断。
4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。
二、选择题:1、在中断服务程序中,至少应有一条( D )。
A、传送指令B、转移指令C、加法指令D、中断返回指令2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。
A、 98HB、 84HC、 42HD、 22H3、MCS-51响应中断时,下列哪种操作不会发生( A )A、保护现场B、保护PCC、找到中断入口D、保护PC转入中断入口4、MCS-51中断源有( A )A、 5个B、 2个C、 3个D、6个5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )A、由CPU自动完成B、在中断响应中完成C、应由中断服务程序完成D、在主程序中完成6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。
A、 INT0,INT1B、 T0,T1C、 T1,串行接口D、 INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。
A、 INT1B、 INT0C、 T1D、T08、当CPU响应串行接口中断时,程序应转到( C )。
A、 0003HB、 0013HC、 0023HD、 0033H9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。
A、 1个B、 2个C、 3个D、0个10、外部中断1固定对应的中断入口地址为( C )。
第五章习题参考答案一、填空题1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。
2、外中断请求标志位是 IE0 和 IE1 。
3、 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后,CPU不能马上响应中断。
4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。
二、选择题:1、在中断服务程序中,至少应有一条( D )。
A、传送指令B、转移指令C、加法指令D、中断返回指令2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。
A、 98HB、 84HC、 42HD、 22H3、MCS-51响应中断时,下列哪种操作不会发生( A )A、保护现场B、保护PCC、找到中断入口D、保护PC转入中断入口4、MCS-51中断源有( A )A、 5个B、 2个C、 3个D、6个5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )A、由CPU自动完成B、在中断响应中完成C、应由中断服务程序完成D、在主程序中完成6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。
A、 INT0,INT1B、 T0,T1C、 T1,串行接口D、 INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。
A、 INT1B、 INT0C、 T1D、T08、当CPU响应串行接口中断时,程序应转到( C )。
A、 0003HB、 0013HC、 0023HD、 0033H9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。
A、 1个B、 2个C、 3个D、0个10、外部中断1固定对应的中断入口地址为( C )。
第4章单片机中断系统习题解答一、填空题1.MCS-51单片机有 5 个中断源。
上电复位时,同级中断的自然优先级从高至低依次为外中断0、定时器/计数器0、外中断1、定时器/计数器1、串行口,若IP=00010100B,优先级别最高者为外中断1、最低者为定时器/计数器1。
2.外部中断请求有低电平触发和下降沿触发两种触发方式。
3.MCS-51单片机5个中断源的中断入口地址为:0003H、000BH、0013H、001BH、0023H。
4.当定时器/计数器1申请中断时,TF1为 1 ,当中断响应后,TF1为 0 。
当串口完成一帧字符接收时,RI为 1 ,当中断响应后,RI为 1 ,需要软件清零。
5.中断源扩展有三种方式,分别是定时器/计数器扩展、查询方式扩展、中断控制芯片扩展。
二简答题1.MCS-51单片机有几个中断源?各中断标志是如何产生的?如何撤销的?各中断源的中断矢量分别是什么?答:MCS-51单片机有5个中断源。
外中断0/1电平触发方式,在对应引脚上检测到低电平将中断标志位IE0/1置1向CPU申请中断,边沿触发方式,在对应引脚上检测到负跳变将中断标志位IE0/1置1向CPU申请中断;定时器/计数器0/1在计数溢出时将TF0/1置1向CPU申请中断;串行口发送1帧结束将TI置1或接收1帧数据将RI置1向CPU申请中断。
对于T0/T1和边沿触发的INT0/INT1中断标志在进入中断服务程序后自动撤销;对于电平触发的INT0/INT1需在中断申请引脚处加硬件撤销电路;对于串行口中断标志TI/RI需在进入中断服务程序后用软件CLR RI或CLR TI,撤销。
它们的中断矢量分别是:0003H、000BH、0013H、001BH、0023H。
2.简述MCS-51中断过程答:中断过程分中断申请、中断响应、中断处理、中断返回4个阶段。
中断请求:各中断源根据自身特点施加合适的信号,将对应的中断标志位置1向CPU申请中断。
51单片机中断系统详解51 单片机中断系统详解(定时器、计数器)51 单片机中断级别中断源INT0---外部中断0/P3.2 T0---定时器/计数器0 中断/P3.4 INT1---外部中断1/P3.3 T1----定时器/计数器1 中断/P3.5 TX/RX---串行口中断T2---定时器/计数器 2 中断第5 最低4 5 默认中断级别最高第2 第3 第4 序号(C 语言用) 0 1 2 3 intrrupt 0中断允许寄存器IE位序号符号位EA/0 ------ET2/1 ES ET1 EX1 ET0 EX0 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 EA---全局中允许位。
EA=1,打开全局中断控制,在此条件下,由各个中断控制位确定相应中断的打开或关闭。
EA=0,关闭全部中断。
-------,无效位。
ET2---定时器/计数器2 中断允许位。
ET2=1, 打开T2 中断。
ET2=0,关闭T2 中断。
关,。
ES---串行口中断允许位。
关,。
ES=1,打开串行口中断。
关,。
ES=0,关闭串行口中断。
关,。
ET1---定时器/计数器1 中断允许位。
关,。
ET1=1,打开T1 中断。
ET1=0,关闭T1 中断。
EX1---外部中断1 中断允许位。
EX1=1,打开外部中断1 中断。
EX1=0,关闭外部中断1 中断。
ET0---定时器/计数器0 中断允许位。
ET0=1,打开T0 中断。
EA 总中断开关,置1 为开;EX0 为外部中断0 (INT0) 开关,。
ET0 为定时器/计数器0(T0)开EX1 为外部中断1(INT1)开ET1 为定时器/计数器1(T1)开ES 为串行口(TX/RX)中断开ET2 为定时器/计数器2(T2)开ET0=0,关闭T0 中断。
EX0---外部中断0 中断允许位。
EX0=1,打开外部中断0 中断。
EX0=0,关闭外部中断0 中断。
中断优先级寄存器IP位序号位地址------PS/0 PT1/0 PX1/0 PT0/0 PX0/0 DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 -------,无效位。
.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少?答:MCS51单片机有5个中断源,2个中断优先级,中断优先级由特殊功能寄存器IP控制,在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,各个中断源的入口地址分别是0003H、000BH、0013H、001BH、0023H。
3.MCS51系列单片机的内部资源有哪些?说出8031、8051和8751的区别。
答:MCS51系列单片机上有1个8位CPU、128B的RAM、21个SFR、4个并行口、1个串行口、2个定时计数器和中断系统等资源。
8031、8051和8751的区别是8031内无ROM;8051内有4KB的掩膜ROM;8751内有4KB的EPROM。
五、作图题(10分)用6264(8K*8)构成16K的数据存储系统。
要求采用线选法产生片选信号,并计算6264的地址范围答:WR接6264的WERD接6264的OEAB0---AB12接6264的A0---A12DB0—DB7接6264的D0—D7AB15、AB14分别接Y0和Y1地址:0000H---1FFFH;2000H---3FFFH六、设计题(1题13分;2题12分,共25分)1.某单片机控制系统有8个发光二极管。
试画出89C51与外设的连接图并编程使它们由左向右轮流点亮。
2.某控制系统有2个开关K1和K2,1个数码管,当K1按下时数码管加1,K2按下时数码管减1。
试画出8051与外设的连接图并编程实现上述要求1.某单片机控制系统有8个发光二极管。
试画出89C51与外设的连接图并编程使它们由右向左轮流点亮。
答:图 (5分) 构思 (3分)MOV A,#80H (1分)UP:MOV P1,A (1分)RR A (2分)SJMP UP (1分2.某控制系统有2个开关K1和K2,1个数码管,当K1按下时数码管加1,K2按下时数码管减1。
试画出8051与外设的连接图并编程实现上述要求。
答:图 (5分) 构思 (3分)程序(4分)ORG 0000HLJMP MAINORG 0003HLJMP AINT0ORG 0013HLJMP BINT1MAIN: MOV IE,#83HSETB IT0SETB IT1MOV R0,#00HMOV DPTR,#TABUP: MOV A,R0MOVC A,@A+DPTRMOV P1,ASJMP UPAINT0: INC R0CJNE R0,#10,AINT01MOV R0,#0AINT01: RETIBINT1: DEC R0CJNE R0,#0FFH,BINT11MOV R0,#9BINT11: RETI1.如何正确使用P3口?2.简述累加器的ACC的作用。
3.简述寄存器间接寻址方式及其寻址范围。
4.简述MCS-51单片机的中断入口地址。
5.简述串行数据传送的特点。
四、读程序题(每小题4分,共20分)1.执行下列程序段后,(P1)=_______。
MOV P1,#5DHCPL P1.1CPL P1.2CLR P1.6SETB P1.72.执行下列程序段后,(A)=_______,(C Y)=____MOV A,#C5HRL A)=_______,(7EH)=____,(7FH)=_______。
3.下列程序段执行后,(R,#7EHMOV RMOV 7EH,#0FFHMOV 7FH,#40H1NC @R1NC R1NC @R4.已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于0123H的ACALLSUBTRN双字节指令后,(PC)=___,(61H)=_______,(62H)= ____。
5.阅读下列程序,说明其功能。
,#dataMOV RMOV A,@RRL A,AMOV R1RL ARL AADD A,R1,AMOV @RRET1.要点:口有第一功能和第二功能的使用。
(1)说明P3口的第二功能各位线的含义。
(2)P3(3)使用时应先按需要选用第二功能信号,剩下的口线才作第一功能I/O 线用。
(4)读引脚数据时,必需先给锁存器输出“1”。
2.(1)8位专用寄存器。
(2)运算时存放一个操作数。
(3)运算后存放运算结果,所以称它为累加器。
3.(1)寄存器中存放的是操作数的地址,操作数是通过寄存器间接得到,这种寻址方式称为寄存器间接寻址方式。
(2)寻址范围:①内部RAM低128单位,形式@Ri(i=0,1)。
②外部RAM64K使用DPTR作间址寄存器,形式为@DPTR。
4.中断入口地址为中断响应后PC的内容即中断服务的入口地址。
它们是:外部中断0 0003H中断 000BH定时器T外部中断1 0013H中断 001BH定时器T1串行口中断 0023H5.(1)传送按位顺序进行,速度慢。
(2)传输线少,成本低。
(3)传送距离远,可达几公尺到几千公里。
四、读程序题(每小题4分,共20分)1.(P1)=9BH2.(A)=8BH(或10001011B)(CY)=不影响3.(R)=7FH(7EH)=00H(7FH)=41H4.(PC)=0345H(61H)=25H(62H)=01H5.(data)×10操作1.已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。
2.请使用位操作指令实现下列逻辑操作:BIT=(10H∨P1.0)∧(11H∨CY)3.已知变量X存于VAR单元,函数值Y存于FUNC单元,按下式编程求Y值。
Y=10 01xxx> -=<⎧⎨⎪⎩⎪4.已知在R2中存放一个压缩的BCD码,请将它拆成二个BCD字节,结果存于SUM 开始的单元中(低位在前)。
5.将存于外部RAM 8000H开始的50H数据传送0010H的区域,请编程实现。
1.SQR:1NC AMOVC A,@A+PCRETTAB:DB 0,1,4,9,16DB 25,36,49,64,812.ORL C,11HMOV 12H,CMOV C,P1.0ORL C,/10HANL C,12HMOV BIT,CRET3. MOV A,VARCJNE A,#0,COMPSJMP RES ;x=0,Y=0COMP:JNC POSI ;x>0,Y=1MOV A,#0FFH ;x<0,Y=-1SJMP RESPOSI:MOV A,#01HRES:MOV FUNC,ARET4.MOV R,#SUMMOV A,R2ANL A,#OFH,A ;存低字节BCDMOV @RMOV A,R2ANL A,#0F0HSWAP A1NC R,A ;存高字节BCDMOV @RRET5. MOV DPTR,#8000H,#10HMOV R,#50HMOV R2LOOP:MOVX A,@DPTR ;取数,A ;存数MOVX @R1NC DPTR1NC R,LOOPDJNZ R2RET六、综合应用题(每小题10分,共20分)1.已知如图,8155的PA口用于输出,PB口用于输入,PC口用于输出,请:(1)写出8155的各I/O口的口地址和存储器的地址范围。
(2)编写出8155初始化程序。
B155命令字格式:2.已知如图并给出下列程序,请在读图并理解程序后回答下列问题:(1)程序功能为_______。
(2)ADC0809的口地址为_______。
(3)EOC的作用是_______。
(4)程序运行结果存于_______。
ADC:MOV DPTR,#7FFOHMOV R,#0A0H,#8MOV R2MOV A,#0LOOP:MOVX @DPTR,AJB P3.3,$MOVX A,@DPTR,AMOVX @R1NC DPTR1NC RDJNZ RLOOP2,AJMP ADC、综合应用题(每小题10分,共20分)1.(1)(2)初始化程序:MOV DPTR,#0100HMOV A,#0DHMOVX @DPTR,A2.(1)巡回采集8个通道的数据(2)ADC0809口地址为7FF0H~7FF7H(或7FF8~7FFFH)(3)EOC为A/D转换结束信号,用来引起中断或查询,以便读取A/D的转换结果。
(4)结果存入外部RAM的A0H~A7H。