资源描述
第一章1-1选择1.计算机中最常用的字符信息编码是(A)A ASCII B BCD码 C 余3码 D 循环码2.要MCS-51系统中,若晶振频率8MHz,一个机器周期等于(A ) sA 1.5 B 3 C 1 D 0.53.MCS-51的时钟最高频率是 ( A ). A 12MHz B 6 MHz C 8 MHz D 10 MHz4.以下不是构成的控制器部件(D):A 程序计数器、 B指令寄存器、 C指令译码器、 D存储器5.以下不是构成单片机的部件(D)A 微处理器(CPU)B存储器 C接口适配器(IO接口电路) D 打印机6.下列不是单片机总线是(D)A 地址总线 B 控制总线 C 数据总线 D 输出总线7.-19D的二进制补码为(B)A 11101111 B 11101101 C 0001000 D 111011008.十进制29的二进制表示为原码(C)A 11100010 B 10101111 C 00011101 D 000011119. 十进制0.625转换成二进制数是( A )A 0.101 B 0.111 C 0.110 D 0.10010 选出不是计算机中常作的码制是( D )A 原码 B 反码 C补码 D ASCII1-2填空1.计算机中常作的码制有原码、反码和补码2.十进制29的二进制表示为000111013.十进制数-29的8位补码表示为111000114.单片微型机CPU、存储器和IO接口三部分组成.5.若不使用MCS-51片内存器引脚EA必须接地.6.输入输出设备是计算机与外部世界交换信息的载体.7.十进制数-47用8位二进制补码表示为110100018.计算机中最常用的字符信息编码是ASCII9.计算机中的数称为机器数,它的实际值叫真值1-3判断1.我们所说的计算机实质上是计算机的硬件系统与软件系统的总称( )2.MCS-51上电复位时,SBUF=00H。( )SBUF不定3.使用可编程接口必须处始化。( )4.8155的复位引脚可与89C51的复位引脚直接相连。( )5.MCS-51是微处理器。( )6.MCS-51系统可以没有复位电路。( )复位是单片机的初始化操作。7.要MCS-51系统中,一个机器周期等于1.5s。( )若晶振频率8MHz,才可能为1.5s8.计算机中常作的码制有原码、反码和补码( )9.若不使用MCS-51片内存器引脚EA必须接地. ( )10.十进制数-29的8位补码表示为.11100010( )1-4简答1.何谓单片机?单片机与一般微型计算机相比,具有哪些特点?答:单片机是在一块集成电路上把CPU、存储器、定时器/计数器及多种形式的I/O接口集成在一起而构成的微型计算机。它与通用微型计算机相比,具有如下特点:(1) 单片机的程序存储器和数据存储器是分工的,前者为ROM,后者为RAM;(2) 采用面向控制的指令系统,控制功能强;(3) 多样化的I/O接口,多功能的I/O引脚;(4) 产品系列齐全,功能扩展性强;(5) 功能是通用的,像一般微处理机那样可广泛地应用在各个方面。2 单片机主要应用在哪些领域?答:单片机的应用范围很广泛,诸如智能化家用电器、仪器仪表、工业控制、计算机外部设备、智能机器人、电信及导航等方面。3 在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用?答:各种类型的单片机片内程序存储器的配置形式主要有以下几种形式:(1) 掩膜(Msak)ROM型单片机:内部具有工厂掩膜编程的ROM,ROM中的程序只能由单片机制造厂家用掩膜工艺固化,用户不能修改ROM中的程序。例如:MCS51系列的8051。掩膜ROM单片机适合于大批量生产的产品。用户可委托芯片生产厂家采用掩膜方法将程序制作在芯片的ROM。(2) EPROM型单片机:内部具有紫外线可擦除电可编程的只读存储器,用户可以自行将程序写入到芯片内部的EPROM中,也可以将EPROM中的信息全部擦除。擦去信息的芯片还可以再次写入新的程序,允许反复改写。例如:MCS51系列的8751。EPROM型单片机使用比较方便,但价格较高,适合于研制产品或结构要求简单的小批量产品。(3) 无ROM型单片机:内部没有程序存储器,它必须连接程序存储器才能组成完整的应用系统。例如:MCS51系列的8031。无ROM型单片机价格低廉,用户可根据程序的大小来选择外接程序存储器的容量。这种单片机扩展灵活,但系统结构较复杂。(4) E2ROM型单片机:内部具有电可擦除叫可编程的程序存储器,使用更为方便。例如:MCS51的派生型89C51单片机。(5) OTP(One Time Programmable)ROM单片机:内部具有一次可编程的程序存储器,用户可以在编程器上将程序写入片内程序存储器中,程序写入后不能再改写。例如:NEC公司的PD75P308GF3B9。这种芯片的价格也较低。4.控制器的组成和作用答:控制器:由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成。用来协调指挥计算机系统的操作。5 微型计算机组成答:微型计算机组成由微处理器(CPU)、存储器、接口适配器(IO接口电路)及输入/输出设备组成。通过系统总线将它们连接起来,以完成某些特定的运算与控制。6.什么叫寻址方式答:寻址方式:寻址方式就是寻找指令中操作数或操作数所在地址的方式。也就是如何找到存放操作数的地址,把操作数提取出来的方法。7.什么是汇编语言?什么叫指令周期?答:汇编语言源程序在交付计算机执行之前,需要先翻译成目标程序,这个翻译过程叫汇编。指令周期:指执行一条指令所占用的全部时间。通常一个指令周期含14个机器周期。8.什么是进位和溢出答:两数运算的结果若没有超出字长的表示范围,则由此产生的进位是自然进位;若两数的运算结果超出了字长的表示范围(即结果不合理),则称为溢出。例如将正数3FH和负数D0H相加,其结果不会超出8位字长的表示范围,所以其结果10FH中的进位是正常进位(也就是模)。但是,若正数3FH与正数70H相加,其结果为AFH,最高位为1,成了负数的含义,这就不合理了,这种情况称为溢出。第二章2-1填空1.微处器由寄存器、控制器和运算器三部分组成.2.当MCS-51引脚ALE信号有效时,表示从Po口稳定地送出了低8位地址.3.MCS-51的堆栈是软件填写堆栈指针临时在_片内数据存储器内开辟的区域.4.MCS-51中凡字节地址能被_8整除的特殊功能寄存器均能寻址.5.MCS-51有4组工作寄存器,它们的地址范围是00H1FH.6.MCS-51片内20H2FH范围内的数据存储器,既可以字节寻址又可以位寻址.7.计算机的系统总线有地址总线、控制总线和数据总线。8.80C51含4KB掩膜ROM。9.80C51在物理有4个独立的存储空间。10.一个机器周期等于6个状态周期,振荡脉冲2分频后产生的时钟信号的周期定义为状态周期。2-2判断1.我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。( )2.MCS-51的相对转移指令最大负跳距是127B。( )跳距范围:-1281273.MCS-51的程序存储器只是用来存放程序的。 ( )存放程序和表格常数。 4.MCS-51的时钟最高频率是18MHz。 ( ) 12MHz5.使用可编程接口必须处始化。( )6.当MCS-51上电复位时,堆栈指针SP=00H。( )SP=07H7.MCS-51外扩I/O口与外RAM是统一编址的。( )8.使用8751且 EA引脚为高点位时,仍可外扩64KB的程序存储器。( )外部60KB9.8155的复位引脚可与89C51的复位引脚直接相连。( )10.MCS-51是微处理器。( )11.MCS-51的串行接口是全双工的。( )12.PC存放的是当前执行的指令。( )是将要执行的下一条指令的地址13.MCS-51的特殊功能寄存器分布在60H80H地址范围内。( )80HFFH14.MCS-51系统可以没有复位电路。( )不可以。复位是单片机的初始化操作15.要MCS-51系统中,一个机器周期等于1.5s。( )2-3选择1.要想测理INT0引脚上的一个正脉冲宽度,那么特殊功能寄存器TMOD的内容应为( A ).(A)09H (B)87 H (C)00H (D)80H2.PSW=18H时,则当前工作寄存器是( D )(A)0组(B)1组(C)2组(D)3组3.控制串行口工作方式的寄存器是(C)(A)TCON (B)PCON (C)SCON (D)TMOD4.口的每一位能驱动(B)()个低电平负载有()个低电平负载()个低电平负载有()个低电平负载5.MCS-51的中断允许触发器内容为83H,CPU可响应的中断请求是( D )(A) T1,T2 (B)T0,T1 (C)T1,串行接口 (D) INT0,T02-4问答题1 8051单片机内部包含哪些主要逻辑功能部件?答:8051单片机是个完整的单片微型计算机。芯片内部包括下列硬件资源:(1) 8位CPU;(2) 4KB的片内程序存储器ROM。可寻址64KB程序存储器和64KB外部数据存储器;(3) 128B内部RAM;(4) 21个SFR;(5) 4个8位并行I/O口(共32位I/O线);(6) 一个全双工的异步串行口;(7) 两个16位定时器/计数器;(8) 5个中断源,两个中断优先级;(9) 内部时钟发生器。2 EA/VPP引脚有何功用?8031的引脚应如何处理?为什么?答:EA/VPP是双功能引脚,功能如下:(1) EA接高电平时,在低4KB程序地址空间(0000H0FFFH),CPU执行片内程序存储器的指令,当程序地址超出低4KB空间(1000HFFFFH)时,CPU将自动执行片外程序存储器的指令。EA接低电平时,CPU只能执行外部程序存储器的指令。(2) 8031单片机内部无ROM,必须外接程序存储器。因此,8031的EA引脚必须接低电平。(3) 在对8751单片机内部的EPROM编程时,此引脚VPP外接+12V电压,用于固化EPROM程序。3 8051单片机存储器的组织结构是怎样的?答:8051存储器包括程序存储器和数据存储器,从逻辑结构上看,可以分为三个不同的空间:(1) 64KB的程序存储器地址空间:0000HFFFFH,其中0000H0FFFH为片内4KB的ROM地址空间,1000HFFFFH为外部ROM地址空间;(2) 256B的内部数据存储器地址空间,00HFFH,分为两大部分,其中00H7FH(共128B单元)为内部静态RAM的地址空间,80HFFH为特殊功能寄存器的地址空间,21个特殊功能寄存器离散地分布在这个区域;(3) 64KB的外部数据存储器地址空间:0000HFFFFH,包括扩展I/O地址空间。4.片内数据存储器分为哪几个性质和用途不同的区域?答:8051内部128B的数据RAM区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区。各区域的特性如下:(1) 00H1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0R7。当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。(2) 20H2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H7FH。当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。(3)30H7FH为堆栈、数据缓冲区。5.什么叫堆栈:答:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以后进先出的结构方式处理的。实质上,堆栈就是一个按照后进先出原则组织的一段内存区域。MSC-51单片机的堆栈指针为SP,复位后SP指向内部R 07H单元,使用时需手动设置SP并根据需要使其指向30H7FH之间的单元。MSC-51单片机堆栈操作分为出栈和入栈,相应的指令助记符为PUSH和POP,并且两条指令成对出现。6 单片机有哪几个特殊功能寄存器?各在单片机的哪些功能部件中?答:8051单片机内部有21个特殊功能寄存器,在物理上是分散在片内各功能部件中,在数学上把它们组织在内部数据存储器地址空间80HFFH中,以便能使用统一的直接寻址方式来访问。这些特殊功能寄存器颁在以下各个功能部件中:(1) CPU:ACC、B、PSW、SP、DPTR(由DPL和DPH两个8位寄存器组成);(2) 中断系统:IP、IE;(3) 定时器/计数器:TMOD、TCOM、TL0、TH0、TL1、TH1;(4) 并行I/O口:P0、P1、P2、P3;(5) 串行口:SCON、SBUF、PCON。7 PC是什么寄存器?是否属于特殊功能寄存器?它有什么作用?答:PC是16位程序计数器(Program Counter),它不属于特殊功能寄存器范畴,程序员不以像访问特殊功能寄存器那样来访问PC。PC是专门用于在CPU取指令期间寻址程序存储器。PC总是保存着下一条要执行的指令的16位地址。通常程序是顺序执行的,在一般情况下,当取出一个指令(更确切地说为一个指令字节)字节后,PC自动加1。如果在执行转移指令、子程序调用/返回指令或中断时,要把转向的地址赋给PC。8 DPTR是什么寄存器?它由哪些特殊功能寄存器组成?它的主要作用是什么?答:DPTR是16位数据指针寄存器,它由两个8位特殊功能寄存器DPL(数据指针低8位)和DPH(数据指针高8位)组成,DPTR用于保存16位地址,作间址寄存器用,可寻址外部数据存储器,也可寻址程序存储器。第三章3-1选择题1、MOVX A,DPTR指令中源操作数的寻址方式是(B)(A) 寄存器寻址 (B)寄存器间接寻址 (C)直接寻址 (D)立即寻址2 ORG 0003HLJMP 2000HORG 000BHLJMP 3000H 当CPU响应外部中断0后,PC的值是(B)(A) 0003H (B)2000H (C)000BH (D)3000H3 执行PUSH ACC指令,MCS-51完成的操作是(A)(A) SP+1 SP (ACC) (SP) (B)(ACC) (SP)SP-1 SP(B) SP-1 SP (ACC) (SP) (D)(ACC) (SP)SP+1 SP4 LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=(D)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区(B)(A)MOV PSW,#13H (B)MOV PSW,#18H(C)SETB PSW.4 CLR PSW.3 (D)SETB PSW.3 CLR PSW.4 7、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(A) /PSEN (B)ALE (C)/RD (D)/WR 8、MOV C,#00H的寻址方式是(A)(A) 位寻址 (B)直接寻址 (C)立即寻址 (D)寄存器寻址9、ORG 0000H AJMP 0040H ORG 0040H MOV SP,#00H当执行完左边的程序后,PC的值是(C)(A) 0040H (B)0041H (C)0042H (D)0043H 10、对程序存储器的读操作,只能使用(D)(A) MOV指令 (B)PUSH指令 (C)MOVX指令(D)MOVC指令3-2判断题。(1) MCS-51的相对转移指令最大负跳距是127B。(错)128B(2) 当MCS-51上电复位时,堆栈指针SP=00H。( 错 )(3) 调用子程序指令(如:CALL)及返回指令(如:RET)与堆栈有关但与PC无关。(错)子序的转返与PC也有关(PC入栈与出栈)(4) INC DPTR (对)(5) CLR R0 (错)指令系统中没有。(6) MOV R1,#80H (对)(7) ANL R1,#0FH (错)(8) ADDC A,C (错)(9) XRL P1,#31H (对)3-3简答题1 简述MCS-51汇编语言指令格式。答:MCS-51汇编语言格式如下:标号:操作码助记符操作数1 操作数2 操作数3注释标号是用户定义的符号,其值代表这条指令的地址。操作码助记符是指令系统规定的代表特定指令功能的英文缩写符。每条指令都有操作码记符。指令的操作数最多有3个,也有无操作数的指令。注释字段是用户对程序的说明,便于对程序的阅读和理解。2 MCS-51指令系统主要有哪几种寻址方式?试举例说明。答:MCS-51指令操作数主要有以下7种寻址方式:寻址方式 举例立即寻址 MOV A,#16直接寻址 MOV 20H,P1寄存器寻址 MOV A,R0寄存器间接寻址 MOVX A,DPTR变址寻址 MOVC A,A+DPRT相对寻址 SJMP LOOP位寻址 ANL C,70H3对访问内部RAM和外部RAM,各应采用哪些寻址方式?答:对内部RAM的寻址方式有直接寻址、寄存器间接寻址和可对位寻址的位寻址。对外部RAM的寻址方式只能用寄存器R0/R1(8位地址)或DPTR(16位地址)间接寻址。4设内部RAM(30H)=5AH,(5AH)=40H,(40H)=00H,端口P1=7FH,问执行下列指令后,各有关存储单元(即R0,R1,A,B,P1,30H,40H及5AH单元)的内容如何? MOV R0,#30H ;R0=30H MOV A,R0 ;A=5AH MOV R1,A ;R1=5AH MOV B,R1 ;B=5AH MOV R1,P1 ;(5AH)=7FH MOV A,P1 ;A=7FH MOV 40H,#20H ;(40H)=20H MOV 30H,40H ;(30H)=20H解:每一条指令执行后的结果如注释字段所标。最后结果为:R0=30H,R1=5AH,A=7FH,B=5AH,P1=7FH,(30H)=20H,(40H)=20H,(5AH)=7FH。5 SJMP(短转移)指令和AJMP(绝对转移)指令的主要区别。前者提供了以SJMP的下一条指令的起始地址为中心的256字节范围的转移(-128+127),后者的转移目标地址必须在与AJMP的下一条指令的第一字节相同的2KB区的程序储存器中。短转移方便了可重定位编码。SJMP方便了PC可重定位编码,但转移范围小。而ASJMP转移范围大,但存在跳区的限制,AJMP指令只能位于2KB区的最后2个字节处时,才可跳到下一个区去。因此用AJMP指令来代替SJMP指令是有条件的,也就是目标地址必须与它下面的指令存放地址在同一个2KB区域内。3-4编程题1 编程将片内RAM30H单元开始的B的数据传送到片外RAM3000H开始的单元中去。解:STRAT:MOV R0,#30H MOV R7,#0FH MOV DPTR,#3000H LOOP: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R7,LOOP RET2 片内RAM30H开始的单元中有10B的二进制数,请编程求它们之和(和256 ).解ADDIO:MOV R0,30H MOV R7,#9 MOV A,R0 LOOP: INC R0 ADD A,R0 DJNZ R7,LOOP MOV 30H,A RET3 编一个程序,将累加器中的一个字符从串行接口发送出去.解 SOUT:MOV SCON,#40H ;设置串行接口为工作方式 MOV TMOD,#20H ;定时器T1工作于模式 MOV TL1,#0E8H; ;设置波特率为1200b/s MOV TH1,#0E8H SETB TR1 MOV SBUF,A JNB T1,$ CLB T1 RET4 用查表法编一子程序,将R3中的BCD码转换成ASCII码. 解MAIN: MOV A,R3 ;待转换的数送A MOV DPTR,#TAR ;表首地址送DPTR MOVC A,A+DPTR ;查ASCII码表 MOV R3,A ;查表结果送R3 RET TAR DB 30H,31H,32H,33H,34H DB 35H,36H,37H,38H,39H5 片内RAM40H开始的单元内有10B二进制数,编程找出其中最大值并存于50H单元中. 解 START: MOV R0,#40H ;数据块首地址送R0 MOV R7,#09H ;比较次数送 MOV A,R0 ;取数送 LOOP: INC R0 MOV 30H,R0 ;取数送H CJNE A,30H,NEHT ;(A)与(30H)相比 NEXT: JNC BIE1 (A)(30H)转BIR1 MOV A,30H ;(A)(30H),大数送ABIE1: DJNZ R7,LOOP ;比较次数减1,不为0,继续比较 MOV 50H,A ;比较结束,大数送50H RET 6 编一子程序,从串行接口接受一个字符.解: START: MOV TMOD,#20H ;定时器T1工作于模式2 MOV TH1,#0E8H ;设置波特率为1 200b/s MOV TL1,#0E8H SETB TR1 ;启动T1 MOV SCON,#50H ;串行接口工作于方式1,充许接收 L1: JNB RI,L1 ;等待接收数据,末接收到数据,继续等待 CLR RI ;接收到数据,清RI MOV A,SBUF ;接收到数据送A RET7 利用调子程序的方法,进行两个无符号数相加。请编主程序及子程序。解 用R0和R1作数据指针,R0指向第一个加数,并兼作“和”的指针,指向另一个加数,字节存放到中作计数初值。主程序:JAFA: MOV R0,#20H ;指向加数最低字节MOV R1,#29H ;指向另一加数最低字节MOV R2,#04H ;字节数作计数值ACALL JASUB ;调用加法子程序AJMP $ RTE 多字节加法子程序:JASUB: CLR CJASUB1: MOV A,R0 ;取出加数的一个字节(无符号数加数)ADDC A,R1 ;加上另一数的一个字节MOV R0,A ;保存和数INC R0 ;指向加数的高位INC R1 ;指向另一加数的高位DJNZ R2,JASUB1 ;全部加完了吗?RET8 若图数据块是有符号数,求正数个数,编程并注释。解 ORG 0030H START: MOV 20H,#00H ;计正数个数计数器 MOV DPTR,#0000H ; MOVX A,DPTR ;数据块长度10H MOV 10H,A INC DPTR ;DPTR指向第一个数的地址 TWO: MOVX A,DPTR ;取数A JB ACC.7,ONE ;是负数转ONE,准备取下一个数 INC 20H ;是正数,正数计数器加ONE: INC DPTR ;地址指针加 DJNZ 10H,TW ;数据块长度减不等于,继续寻找 RET9 编制一个循环闪烁灯的程序。有8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。画出电路图。解 P1.0 8013 P1.7 D0 Q074LS240D7 Q7 5V 本程序的硬件连接如图所示。当P1.0输出高电平时,LED灯亮,否则不亮。 其程序如下: MOV A,#01H ;灯亮初值 SHIFT: LCAIL FLASH ;调闪亮10次子程序 RR A ;右移一位 SJMP SHIFT ;循环 FLASH: MOV R2,#0AH 闪烁10次计数 FLASH1: MOV P1,A ;点亮 LCALL DELAY ;延时 MOV P1,#00H ;熄灭 LCALL DELAY ;延时 DJNZ R2,FLASH1 ;循环RET 第四章4-1填空1.MCS-51的Po口作为输出端口时,每位能驱动 8 个SL型TTL负载.2.MCS-51有 4个并行IO口,其中P0P3是准双向口,所以由输出转输入时必须先写入1 3.设计8031系统时,_P0、P2 口不能用作一般IO口.4.MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器_SCON _加以选择.5.当使用慢速外设时,最佳的传输方式是 中 断 .6.当定时器To工作在方式3 时,要占定时器T1的TR1和TF1_两个控制位.7.MCS-51有 5 个中断源,有2 个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择.8.用串口扩并口时,串行接口工作方式应选为方式 0 .9.在串行通信中,有数据传送方向单工、半双工、全双工三种方式.10.外部中断 入口地址为_ 0013H 4-2判断1.MCS-51的5个中断源优先级相同。 ( ) 2.要进行多机通信,MCS-51串行接口的工作方式应为方式1。 ( )3.MCS-51上电复位时,SBUF=00H。 ( )。 4.MCS-51有3个中断源,优先级由软件填写特殊功能寄存器IP加以选择. ( )5.用串口扩并口时,串行接口工作方式应选为方式1. ( )6.外部中断INTO 入口地址为_0013H( )7.MCS-51外部中断0的入口地址是0003H。 ( ).8.TMOD中的GATE=1时,表示由两个信号控制定时器的启停。 ( )。9.使用8751且 =1时,仍可外扩64KB的程序存储器。( )10.PC存放的是当前执行的指令。( )11.MCS-51的特殊功能寄存器分布在60H80H地址范围内。( )12.MCS-51有4个并行IO口,其中P0P3是准双向口,所以由输出转输入时必须先写入0( )4-3选择1.在中断服务程序中,至少应有一条( D )()传送指令()转移指令()加法指法()中断返回指令2.要使MCS-51能够响应定时器中断、串行接口中断,它的中断允许寄存器的内容应是( B ) ()98H ()84H ()42 ()22H 3.D MCS-51在响应中断时,下列哪种操作不会发生( D ).(A)保护现场 (B)保护PC (C)找到中断入口 (D)保护PC转入中断入口4.用MCS-51串行接口扩展并行IO口时,串行接口工作方式应选择( C )(A)方式0 (B)方式1 (C)方式2 (D)方式35.MCS51有中断源(A)(A)5个(B)2个(C)3个(D)6个6.MCS-51响应中断时,下面哪一个条件不是必须的( D )(A)当前指令执行完毕 (B)中断是开放的 (C)没有同级或高级中断服务须执行 (D)必须有RETI指令7.使用定时器T1时,有几种工作模式(D)()种()种()种()种8.计算机在使用中断方式与外界交换信息时,保护现场的工作方式应该是 ( B )(A)由CPU自动完成 (B)在中断响应中完成 (C)应由中断服务程序完成 (D)在主程序中完成 9.下面哪一种传送方式适用于处理外部事件( C )(A)DMA (B)无条件传递进 (C)中断 (D)条件传递1、2、4章的编程1. 8225A控制字地址为300FH,请按:A口方式0输入,B口方式1输出,C口高位输出,C口低位输入,确定8225A控制字并编初始化程序.解:控制字为 10010101=95H初始化程序:MOV DPTR ,#300FH MOV A,#95H MOVX DPTR ,A2. 编定一个软件延时1S和1mi的子程序.设osc=6Hz,则一个机器周期1。解:(1)1S=2US*5*1000005*100000=250*200*10(2) ORG 1000H TIME:MOV R7,#10 T3: MOV R6,#200 T2: MOV R6,#250 T1: DJNZ R5,T1DJNZ R6,T2DJNZ R7,T3RET (2)1min=60,调用上面1s子程序60次 ORG 0030H MOV R0,#60LOOP:LCALL TIME DJNZ R0,LOOP RET3. 请编制串行通信的数据发送程序,发送片内RAM50H5FH的16B数据,串行接口设定为方式2,采用偶校验方式。设晶振频率为6MHz。解:查询方式发送程序如下 MOV SCON,#8OH M OV PCON,#80H MOV R0,#50H MOV R7,#16HLOOP: MOV A,R0 MOV C,P MOV TB8,C MOV SBUF,A JNB T1,$ CLR T1 INC R0 DJNZ R7,LOOP RET4.应用单片机内部定时器T0工作在方式1下,从P1.0输出周期为2ms的方波脉冲信号,已知单片机的晶振频率为6MHZ。请(1)计算时间常数X,应用公式X=2t(f)(2)写出程序清单解:X=216-t(F/12)=216-1*10-3*6*106/12=OFEOCHORG 3000HSTART:MOV TMOD,#01HMOV TL0,#OCHMOV THO,#OFEHSETB TR0LOOP: JBC TFO,DONESJMP LOOPDONE: MOV TL0,#OCHMOV THO,#OFEHCPL P1.0SJMP LOOP5.应用单片机内部定时器T0工作在方式1下,从P1.0输出周期为1ms的方波脉冲信号,已知单片机的晶振频率为6MHZ。请(1)计算时间常数,应用公式X=2t(f)(2)写出程序清单解:解:X=216-t(F/12)=216-0.5*10-3*6*106/12=FF06HORG 3000HSTART:MOV TMOD,#01HMOV TL0,#06HMOV THO,#FFHSETB TR0LOOP: JBC TFO,DONESJMP LOOPDONE: MOV TL0,#06HMOV THO,#FFHCPL P1.0SJMP LOOP6、 用89C51的P1口,监测某一按键开关,使每按键一次,输出一个正脉冲(脉宽随意)。编出汇编语言程序。(DAY为延时子程序)解: ORG 0100H ABC:SETB P1.0SETB P1.7JB PI.7,$JNB P1.7,$CLR P1.0MOV R2,#0 DAY: NOPNOPDJNZ R2,DAYSJMP ABC7、设计一个4位数码显示电路,并用汇编语言编程使8从右到左显示一遍。(DAY为延时子程序)解: ORG 0100HMOV A,#08HMOV R2,#01HMOV DPTR,#TABMOVC A,A+DPTRMOV P1,ANEXT:MOV A,R2MOV P3,AACALL DAYJB ACC.4,LPDRL AMOV R2,AAJMP NEXTLPD: RETTAB: DB 0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H,80H,90H;(此处为数码管显示段码) END8、编制一个循环闪烁的程序。有8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。画出电路图。(DAYLY为延时子程序)解: MOV A,#01H SHIFT: LCALL FLASHRRSJMP SHIFT FLAH: MOV R2,#0AH FLAH1: MOV P1,A LCALL DELAY MOV P,#00H LCALL DELAY DJNZ R2,FLASH1RET 9.在8051单片机的INTO引脚外接脉冲信号,要求每送来一个脉冲,把30H单元值加1,若30H单元记满则进位31H单元。试利用中断结构,编制一个脉冲计数程序。解: ORG 0000H AJMP MAIN ORG 0003H AJMP SUBG MAIN:MOV A,#OOH MOV 30H,A MOV 31H,A MOV SP,#70HSETB INT0SETB EASETB EX0AJMP $ORG 0200H SUBG:PUSH ACCINC 30HMOV A,30HJNZ BACKINC 31H BACK:POP RET1 10.利用89C51的P1口控制8个发光俄二极管LED。相邻的4个LED为一组,使2组每隔0。5S 交替发亮一次,周尔复始。试编写程序。(DAY为延时子程序)解: ORG 0100H MOV A,#0FHABC: MOV P1,A ACALL D05 SWAP A SJMP ABCD05:MOV R6,250DY: MOV R7,250DAY:NOP NOP DJNZ R6,DAY DJNZ R7,DAY RET END 11.设计89C51和ADC0809的接口,采集2通道10个数据,存入内部RAM的50H59H单元,画出电路图,编出:(1)延时方式;(2)查询方式;(3)中断方式中的一种程序。解:IN2的地址为7FFAH,P1.0查询转换结束信号,查询程序如下: ORG 0100H MOV R7,#0AH MOV R0,#50H MOV DPTR,#7FFAH NEXT: MOVX DPTR,A JB P1.0,$ MOVX A,DPTR MOV R0,A INC R0 DJNZ NEXT SJMP $第五章5-1选择题 1、6264芯片是(B)(A) EEPROM (B)RAM(C)FLASH ROM (D)EPROM 2、用MCS-51用串行扩展并行I/O口时,串行接口工作方式选择(A)(A) 方式0 (B)方式1 (C)方式2 (D)方式3 3、使用8255可以扩展出的I/O口线是(B)(A) 16根 (B)24根 (C)22根 (D)32根 4、当8031外出扩程序存储器8KB时,需使用EPROM 2716(C)(A) 2片 (B)3片 (C)4片 (D)5片 5、某种存储器芯片是8KB*4/片,那么它的地址线根线是(C)(A) 11根 (B)12根 (C)13根 (D)14根 6、MCS-51外扩ROM,RAM和I/O口时,它的数据总线是(A)(A) P0 (B)P1 (C)P2 (D)P3 7、当使用快速外部设备时,最好使用的输入/输出方式是(C) (A)中断 (B)条件传送 (C)DMA (D)无条件传送 8、MCS-51的中断源全部编程为同级时,优先级最高的是(D)(A) INT1 (B)TI (C)串行接口 (D)INT0 9、MCS-51的并行I/O口信息有两种读取方法:一种是读引脚,还有一种是(A) (A)读锁存器具 (B)读数据库 (C)读A累加器具 (D)读CPU 10、MCS-51的并行I/O口读-改-写操作,是针对该口的(D) (A)引脚 (B)片选信号 (C)地址线 (D)内部锁存器5-2判断题1、MCS-51外扩I/O口与外RAM是统一编址的。(对)2、使用8751且EA=1时,仍可外扩64KB的程序存储器。(错)60KB3、8155的复位引脚可与89C51的复位引脚直接相连。(对)4、片内RAM与外部设备统一编址时,需要专门的输入/输出指令。(错)统一编址的特点正是无需专门的输入输出指令。5、8031片内有程序存储器和数据存储器。(错)无程序存储器6、EPROM的地址线为11条时,能访问的存储空间有4K。(错)2K.7、8255A内部有3个8位并行口,即A口,B口,C口。(对)8、8155芯片内具有256B的静态RAM,2个8位和1个6位的可编程并行I/O口,1个14位定时期等常用部件及地址锁存器。(对)9、在单片机应用系统中,外部设备与外部数据存储器传送数据时,使用MOV指令。(错)用MOVX指令。10、为了消除按键的抖动,常用的方法有硬件和软件两种方法。(对)5-3简答题1 8031的扩展储存器系统中,为什么P0口要接一个8位锁存器,而P2口却不接?答:这是因为P0口是扩展储存器系统的多路低8位地址和数据总线,在访问外部存储器时,P0口分时用作输出外部储存器低8位地址和传送数据,为了在整个访问外部存储器期间,对外部存储器存在着有效的低8位地址信号,所以P0口需要外接一个地址锁存器。ALE信号就是用来把P0口输出的地址字节锁存在这个外接的锁存器中,再从锁存器输出外部存储器的低8位地址。而P2口只用作扩展存储器系统的高8位地址线,并在整个访问外部存储器期间不变,所以不必外接地址锁存器。2 在8031扩展系统中,外部程序存储器和数据存储器共用16位地址线和8位数据线,为什么两个存储空间不会发生冲突?答:这是因为外部程序存储器和外部数据存储器所使用的控制信号不同。对外部程序存储器的选读通是用PSEN控制线,而对外部数据存储器的读/写控制是用RD和WR读、写控制线,所以不会发生地址冲突。3 8031单片机需要外接程序存储器,实际上它还有多少条I/O线可以用?当使用外部存储器时,还剩下多少条I/O线可用?答:8031系统必须外接程序促成器,原则上说,P0和P2口要用作数据和地址总线,所以只有P1和P3口可用作I/O口
展开阅读全文