您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > 10自动化单片机原理复习
一、简述题1.MCS-51单片机芯片包含哪些主要逻辑功能部件?(习题2-1)答:1个8位CPU;1个片内振荡器及时钟电路;128字节RAM(数据存储器);4K字节ROM(程序存储器);2个16位定时器/计数器;32条可编程的I/O线(四个8位并行I/O端口);1个全双工串行口;5个中断源;2.程序计数器PC的作用是什么?什么情况下会使用PC的值?(习题2-4)答:作用:程序计数器PC用来存放即要执行的指令地址,共16位,低8位经P0口输出,高8位经P2口输出。CPU每取一次机器码,PC内容自动加一,CPU执行一条指令,PC内容自动增加该指令的长度。CPU复位后,PC内容为0000H,它标志着程序从头开始执行。PC的内容变化决定程序的流向。3.MCS-51单片机设置有四组工作寄存器,这样做的目的是什么?请举例说明。(习题2-7)答:工作寄存器区也称为通用寄存器区。工作寄存器区包含4个工作寄存器组,每个工作存器组中包含8个工作寄存器R0~R7:BANK0(00~07H);BANK1(08~0FH);BANK2(10~17H);BANK3(18~1FH)4.简述MCS-51单片机的位寻址空间。(习题2-11)答:MCS-51单片机的位寻址空间共有211个位由两部分组成,位地址范围为00~FFH。片内RAM中20-2FH单元的128位,占用位地址范围:00~7FH;地址能被8整除的SFR具有位寻址功能,占用位地址范围:80~FFH,共83位。5.什么是时钟周期、机器周期、指令周期?如何计算机器周期?晶振频率为12M时,计算时钟周期、机器周期。(习题2-9)答:与时序有关的周期:时钟周期、机器周期、指令周期。时钟周期为晶体振荡器(晶振)的振荡周期的2倍。机器周期(TM):CPU完成一个基本操作所用的时间。MCS-51单片机的1个机器周期包含12个振荡周期。指令周期(TI):执行一条指令所用的时间;MCS-51:1TI=1~4TM。一般为1—2个机器周期,乘法、除法为3个机器周期。=1/(12M)=TM=12T=6.简单说明MCS-51单片机PSW寄存器各标志位的含义。(习题2-15)答:①CY(PSW.7)进位/借位标志位。若ACC在运算过程中发生了进位或借位,则CY=1;否则=0。它也是布尔处理器的位累加器,可用于布尔操作。②AC(PSW.6)半进位/借位标志位。若ACC在运算过程中,D3位向D4位发生了进位或借位,则CY=1,否则=0。机器在执行“DAA”指令时自动要判断这一位,我们可以暂时不关心它。③F0(PSW.5)——用户标志位。④RS1(PSW.4)、RS0(PSW.3)工作寄存器组选择位RS1,RS0=00则选择了工作寄存器组0区R0~R7分别代表00H~07H单元。RS1,RS0=01则选择了工作寄存器组1区R0~R7分别代表08H~0FH单元。RS1,RS0=10则选择了工作寄存器组2区R0~R7分别代表10H~17H单元。RS1,RS0=11则选择了工作寄存器组3区R0~R7分别代表18H~1FH单元。⑤OV(PSW.2)溢出标志位。OV=1时特指累加器在进行带符号数(-128—+127)运算时出错(超oscfT1出范围);OV=0时未出错。⑥P(PSW.0)奇偶标志位:P=1表示累加器中“1”的个数为奇数;P=0表示累加器中“1”的个数为偶数。CPU随时监视着ACC中的“1”的个数,并反映在PSW中7.什么是寻址方式?在MCS-51单片机中,有哪几种寻址方式?(习题3-18)答:所谓的寻址方式就是CPU执行时获取操作数的方式。分为:立即数寻址,直接寻址,寄存器寻址,寄存器间接寻址、变址寻址、位寻址、相对寻址7种寻址方式。8.DAA指令的作用是什么?它跟在哪些指令后面使用?(习题3-20)答用:该指令是进行十进制加法调整的。这条指令是在进行BCD码加法运算时,跟在“ADD”和“ADDC”指令之后,用来对BCD码的加法运算结果自动进行修正的,使其仍为BCD码表达形式。9.“LJMPPROG”和“LCALLPROG”的区别是什么?(习题3-21)答:“LJMPPROG”执行这条指令时,把指令中给出的16位地址给PC,无条件地跳转到以PROG为标号地址的同一程序位置;“LCALLPROG”执行这条指令时,调用以PROG标号地址开头的子程序。10.MCS-51单片机提供了哪几种中断源?在中断管理上有什么特点?各个中断源优先级如何确定?中断嵌套的原则是什么?(习题4-1)答:MCS-51单片机提供的中断源:有5个中断源,分别为2个外部中断、2个定时/计数器溢出产生的中断、1个串行口接收/发送产生的中断,提供2个中断优先级。管理特点:当一个事件发生了,该中断源触发了中断,中断系统通过硬件把这个中断源对应的中断触发器置1,以此向CPU发出请求,即中断登记。CPU通过检测中断触发器的状态是否为1来识别是哪一个中断源发出了请求。只要中断触发一次,中断触发器被置1并锁存,除非中断触发器被清0,否则,该中断源后续的中断请求不再登记。中断源优先级的确定:在中断系统中,按照轻重缓急的原则给每一个中断源分配一个中断CPU的优先级中断嵌套原则:一个低级中断源的中断服务程序可以被另一个高级中断源的中断所中断,反之不能。11.MCS-51单片机响应中断的条件是什么?CPU响应中断时,不同的中断源的中断处理程序的入口地址各是多少?(习题4-2)12.答:CPU能响应中断的条件:(1)有中断源的中断请求;(2)CPU允许这个中断源请求中断;(3)CPU处于开放中断的状态;4)CPU刚刚结束一条指令的执行过程。中断源的中断处理程序的入口地址:外部事件中断0→0003H;外部事件中断1→0013H;定时/计数器T0溢出中断→000BH;定时/计数器T1溢出中断→001BH;串行口接收和发送中断→0023H13.MCS-51单片机串行口有几种工作方式?有几种数据帧格式?各种方式下通讯的波特率如何确定?(习题6-2)答:串行口有四种工作方式:方式0、方式1、方式2、方式3一共有3种数据帧:1)8位数据位、低位在前,高位在后2)1位起始位、8位数据位、1位停止位3)1位起始位、9位数据位、1位停止位波特率的确定:X)2(12322RateBaud8SMODoscfoscf为晶体振荡器的频率RateBaud123222XSMOD8oscfX为定时/计数器的初始时间常数SMOD:波特率倍增选择位14.简述MCS-51单片机多机通讯原理。(习题6-3)答:MCS-51单片机的串行口控制器SCON中的SM2位为多机通信控制位。在串行口工作在方式2或方式3时,如果SM2=1,只有在接收器收到9位数据位1时,数据才装入接收缓冲器SBUF中,并将接收中断标志位R1置1,向CPU请求中断,如果接收器收到的第9位为0,则接收中断标志位不置1,并把接收到的数据丢弃。当SM2为0时,接收到一个数据帧后,不管是9位数据是0或1,都会把接收中断标志R1置1,并将接收到的数据表装入接收缓冲器SBUF。利用这个特点,可以实现多个MCS-51单片机之间的通信。15.在MCS-51单片机系统中,扩展的程序存储器和数据存储器都使用相同的16位地址线和8位数据线,为什么不发生冲突?(习题8-5)答:因为控制信号线不同:外扩的RAM芯片既能读出又能写入,所以通常都有读写控制引脚,记为OE和WE。外扩RAM的读、写控制引脚分别与MCS-51的RD和WR引脚相连。外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE,该引脚与MCS-51单片机的PSEN相连16、简述MCS-51单片机内部RAM功能分区,说明各部分的使用特点。(习题2-6)答:单片机的内部数据存储器由RAM地址寄存器、地址译码器以及128个单元的RAM构成,用于存放可读写的数据。MCS-51单片机的片内RAM按照功能可分为3个区域:00~1FH:32个单元为工作寄存器区;20~2FH:16个单元为位寻址区;30~7FH:80个单元为数据缓冲区。特点:①工作寄存器区:主要用途是存放操作数据及中间结果等②位寻址区:主要用途是配合位操作指令,作为单片机进行布尔处理时的存储空间,也可作为一般RAM单元进行字节操作;③数据缓冲区:主要用途是作为内外数据交换式的缓冲单元,MCS-51的堆栈也设在此区。16.在MCS-51单片机应用系统中,外接程序存储器和数据存储器地址空间允许重叠而不会发生冲突,为什么?外接I/O接口是否允许与外接数据存储器地址重叠?为什么?(习题8-6)答:因为单片机访问外部程序存储器与访问外部数据存储器(包括外部I/O口)时,会分别产生PSEN与RD/WR两类不同的控制信号,因此外接程序存储器和数据存储器的地址空间允许重叠而不会发生冲突。外部扩展I/O口占用数据存储器地址空间,与外部数据存储器统一编址,单片机用访问外部数据存储器的指令来访问外部扩展I/O口,因此外部I/O接口地址允许与程序存储器地址重叠不允许与数据存储器地址重叠。17.堆栈有哪些功能?堆栈指针SP的作用是什么?在具体应用设计时,为什么要对SP重新赋值?(习题2-8)答:堆栈是为了保护CPU执行程序的现场,在存储器中开辟了一个“先进后出”(后进先出)的区域;堆栈的操作:入栈,出栈;操作规则:先进后出;堆栈由堆栈指针SP管理,它始终指向栈顶位置。一般情况下,将堆栈设在30H单元之后。程序设计时,最好设在片内RAM的末端,如MOVSP,#60H,以避免堆栈向上生成时覆盖所存储的数据。18、在MCS-51单片机中,每个特殊功能寄存器都有一个地址,且它们的地址分布在80H~0FFH之间,为什么对特殊功能寄存器只能使用直接寻址?答:在MCS-51单片机中,每个特殊功能寄存器都有一个固定的地址,在操作寻址时,可直接按照地址来寻址,而不用其他的寻址方式。这也可是说是单片机的约定俗成。所以对于已知地址的寄存器,对其寻址方式为直接寻址。二、写出下列指令中所有操作数的寻址方式1)MOVA,40H目的操作数:寄存器寻址;源操作数:直接寻址2)MOVP1,#0F0H目的操作数:源操作数:立即数寻址3)MOVA,@R0目的操作数:寄存器寻址源操作数:寄存器间接寻址4)MOVXA,@DPTR目的操作数:寄存器寻址源操作数:寄存器间接寻址5)MOVCA,@A+PC目的操作数:寄存器寻址源操作数:变址寻址6)MOV30H,50H目的操作数:直接寻址源操作数:直接寻址7)MOV30H,#50H目的操作数:直接寻址源操作数:立即数寻址8)DJNZR7,LOOP目的操作数:寄存器寻址源操作数:相对寻址9)DJNZ30H,DO目的操作数:直接寻址源操作数:相对寻址10)SJMP$操作数:11)SJMPNEXT相对寻址12)SWAPA操作数:寄存器寻址13)XCHDA,@R0目的操作数:寄存器寻址,源操作数:寄存器间接寻址14)PUSHDPH目的操作数:寄存器寻址15)POPACC目的操作数:寄存器寻址16)AJMPDO目的操作数:相对寻址17)LJMPMAIN相对寻址18)MOVX@R0,A目的操作数:寄存器间接寻址源操作数:寄存器寻址19)MOVCA,@A+DPTR目的操作数:寄存器寻址源操作数:变址寻址20)MOVDPTR,#BUFFER目的操作数:寄存器寻址源操作数:立即寻址21)MOVDPTR,#2000h目的操作数:寄存器寻址源操作数:直接寻址22)JMP@A+DPTR操作数:变址寻址23)CLRA操作数:寄存器寻址24)CLR30H操作数:直接寻址25)CLRRI操作数:寄存器寻址26)CLRC操作数:位寻址27)SETBC操作数:位寻址28)SETB20H操作数:直接寻址29)MULAB寄存器寻址30)DIVAB寄存器寻址31)JZNEXT相对寻址32)JNDONE相对寻址33)CJNEA,#10,GO1操作数1:寄存器寻址,操作数2:立即数寻址操作数3:相对寻址34)CJNEA,40,GO2操作数1:
本文标题:10自动化单片机原理复习
链接地址:https://www.777doc.com/doc-4685735 .html