《单片机考试题库及答案.pdf》由会员分享,可在线阅读,更多相关《单片机考试题库及答案.pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章1-1 选择1.计算机中最常用的字符信息编码是(A )A A S C I I B B C D 码 C 余 3 码 D 循环码4.以下不是构成的控制器部件(D ):A程序计数器、B 指令寄存器、C指令译码器、D 存储器6 .下列不是单片机总线是(D )A地址总线 B控制总线 C数据总线 D输出总线7 .-4 9 D 的二进制补码为(B )A 1 1 1 0 1 1 1 1 B 1 1 1 0 1 1 0 1 C 0 0 0 1 0 0 0 D 1 1 1 0 1 1 0 08 .十进制2 9 的二进制表示为原码(C )A 1 1 1 0 0 0 1 0 B 1 0 1 0 1 1 1 1
2、C 0 0 0 1 1 1 0 1 D 0 0 0 0 1 1 1 19 .十进制0.6 2 5 转换成二进制数是(A )A 0.1 0 1 B 0.1 1 1 C 0.1 1 0 D 0.1 0 01-2 填空1 .计算机中常作的码制有原码、反码和补码2 .十进制2 9 的二进制表示为0 0 0 1 1 1 0 13 .十进制数-2 9 的 8位补码表示为1 1 1 0 0 0 1 14 .单片微型机由C P U、存储器和I/O 接口三部分组成.5 .若不使用M C S-5 1 片内存器引脚EA 必须接地.7 .十进制数-4 7 用 8 位二进制补码表示为1 1 0 1 0 0 0 18 .
3、-4 9 D 的二进制补码为1 1 1 0 1 1 0 11-3 判断1 .我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。(V )2 .M C S-5 1 上电复位时,S B U F=0 0 H (X )。3 .使用可编程接口必须处始化。(V )。5.M C S-5 1 是微处理器。(X )不是。6.M C S-5 1 系统可以没有复位电路。(X )不可以。复位是单片机的初始化操作。8 .计算机中常作的码制有原码、反码和补码(V )9 .若不使用M C S-5 1 片内存器引脚EA 必 须 接 地.(V )1 0 .十进制数-2 9 的 8 位补码表示为.1 1 1 0 0 0 1
4、 0 (X )1-4 简答1.何谓单片机?答:单片机是在一块集成电路上把C P U、存储器、定时器/计数器及多种形式的I/O 接口集成在一起而构成的微型计算机。2单片机主要应用在哪些领域?答:单片机的应用范围很广泛,诸如智能化家用电器、仪器仪表、工业控制、计算机外部设备、智能机器人、电信及导航等方面。4.控制器的组成和作用答:控制器:由程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成。用来协调指挥计算机系统的操作。6 .什么叫寻址方式答:寻址方式:寻址方式就是寻找指令中操作数或操作数所在地址的方式。也就是如何找到存放操作数的地址,把操作数提取出来的方法。7 .什么叫堆栈:答:堆
5、栈是在片内RA M 中专门开辟出来的一个区域,数据的存取是以 后进先出 的结构方式处理的。实质上,堆栈就是一个按照“后进先出”原则组织的一段内存区域。第一早2-1 填空1.微处器由寄存器、控制器和运算器三部分组成2.当 M C S-5 1 引脚A LE信号有效时,表示从P 0 口稳定地送出了低 8位地址3.M C S-5 1 的堆栈是软件填写堆栈指针临时在片内数据存储器内开辟的区域.4.M C S-5 1 中凡字节地址能被至整除的特殊功能寄存器均能寻址5.M C S-5 1 有 4组工作寄存器,它们的地址范围是0 0 Q 1 F H6.M C S-5 1 片内20 I 2F H 范围内的数据存
6、储器,既可以字节寻址又可以位寻址7.计算机的系统总线有地址总线、控制总线和数据总线9.8 0 C 5 1 在物理有4个独立的存储空间。2-2判断1 .我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。(V )2.M C S-5 1 的相对转移指令最大负跳距是1 27 B。(X )3.M C S-5 1 的程序存储器只是用来存放程序的。(X )存放程序和表格常数。5 .使用可编程接口必须处始化。(V )。6 .当 M C S-5 1 上电复位时,堆栈指针S P=O O H。(X )0 S P=0 7 H7 .M C S-5 1 外 扩 I/O 口与外R A M 是统一编址的。(V )1
7、0.M C S-5 1 是微处理器。(X )不是。1 1.M C S-5 1 的串行接口是全双工的。(V )1 2.P C 存放的是当前执行的指令。(X )是将要执行的下一条指令的地址。1 3.M C S-5 1 的特殊功能寄存器分布在6 0 H 8 0 H 地址范围内。(X )8 0 I F F n。1 4.M C S-5 1 系统可以没有复位电路。(X )不可以。复位是单片机的初始化操作。2-3 选择1 .要想I N T O 引脚上的一个正脉冲宽度,那么特殊功能寄存器T M O D 的内容应为(B ).(A)0 9 H (B)8 7 H (C)O O H (D)8 0 H2.P S W=1
8、 8 H 时,则当前工作寄存器是(D )(A)0 组(B)l 组(C)2 组(D)3 组3 .控制串行口工作方式的寄存器是(C )(A)T C O N (B)P C O N (C)S C O N (D)T M O D5.M C S-5 1 的中断允许触发器内容为8 3 H,C P U 将响应的中断请求是(B )(A)T l,(B)T O,T 1 (C)T 1,串行接口(D)T 02-4 问答题1 8 0 5 1 单片机内部包含哪些主要逻辑功能部件?答:8 0 5 1 单片机是个完整的单片微型计算机。芯片内部包括下列硬件资源:(1)8 位 C P U;(2)4 K B 的片内程序存储器R O M
9、。可寻址6 4 K B 程序存储器和6 4 K B 外部数据存储器;(3)1 28 B 内部 R A M;(4)21 个 S F R;(5)4 个 8 位并行I/O 口(共 3 2位 I/O 线);(6)一个全双工的异步串行口;(7)两 个 1 6 位定时器/计数器;(8)5个中断源,两个中断优先级;(9)内部时钟发生器。2 E A 引脚有何功用?8 0 3 1 的引脚应如何处理?为什么?答:E A 是双功能引脚,功能如下:(1)E A 接高电平时,在低4 K B 程序地址空间(O O O O H O F F F H),C P U 执行片内程序存储器的指令,当程序地址超出低4 K B 空 间(
10、1 0 0 0 H F F F F H)时,C P U 将自动执行片外程序存储器的指令。(2)E A 接低电平时,C P U 只能执行外部程序存储器的指令。8 0 3 1 单片机内部无R O M,必须外接程序存储器。因此,8 0 3 1 的 E A 引脚必须接低电平。3 8 0 5 1 单片机存储器的组织结构是怎样的?答:8 0 5 1 存储器包括程序存储器和数据存储器,从逻辑结构上看,可以分为三个不同的空间:(1)6 4 K B 的程序存储器地址空间:O O O O H F F F F H,其中O O O O H O F F F H 为片内4 K B 的 R O M 地址空间,1 0 0 0
11、 H F F F F H 为外部R O M 地址空间;(2)25 6 B 的内部数据存储器地址空间,O O H F F H,分为两大部分,其 中 0 0 H 7 F H (共 1 28 B单元)为内部静态R A M 的地址空间,80 H“F F H为特殊功能寄存器的地址空间,21个特殊功能寄存器离散地分布在这个区域;(3)6 4 K B 的外部数据存储器地址空间:O O O O H F F F F H,包括扩展1/0 地址空间。4.片内数据存储器分为哪几个性质和用途不同的区域?答:80 5 1内部128B 的数据R A M 区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区。各区域的特性如下
12、:(1)O O HI F H为工作寄存器组区,共 分 4组,每组占用8 个 R A M 字节单元,每个单元作为一个工作寄存器,每组的8 个单元分别定义为8 个工作寄存器R 0 R 7。当前工作寄存器组的选择是由程序状态字P S W 的 R S I、R S O 两位来确定。如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用R i 的寄存器间接寻址来访问。(2)20 H 2F H为可位寻址区域,这 16 个字节的每一位都有一个地址,编址为0 0 H 7 F H。当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。
13、(3)30 H 7 F H为堆栈、数据缓冲区。5 单片机有哪儿个特殊功能寄存器?各在单片机的哪些功能部件中?答:80 5 1单片机内部有2 1 个特殊功能寄存器,在物理上是分散在片内各功能部件中,在数学上把它们组织在内部数据存储器地址空间80HFFH中,以便能使用统一的直接寻址方式来访问。这些特殊功能寄存器颁在以下各个功能部件中:(1)CPU:ACCs B、PSW、SP、DPTR(由 DPL 和 DPH 两个 8 位寄存器组成);(2)中断系统:IP、IE;(3)定时器/计数器:TMOD、TCOM、TLO、THO、TL1、TH1;(4)并行 I/O 口:PO、Pl、P2、P3;(5)串行口:S
14、CON、SBUF、PCON6 PC是什么寄存器?是否属于特殊功能寄存器?它有什么作用?答:P C 是 16位程序计数器(Program Counter),它不属于特殊功能寄存器范畴,程序员不以像访问特殊功能寄存器那样来访问PC。PC是专门用于在CPU取指令期间寻址程序存储器。P C 总是保存着下一条要执行的指令的16位地址。通常程序是顺序执行的,在一般情况下,当取出一个指令(更确切地说为一个指令字节)字节后,P C 自动加lo 如果在执行转移指令、子程序调用/返回指令或中断时,要把转向的地址赋给PC。7 DPTR是什么寄存器?它由哪些特殊功能寄存器组成?它的主要作用是什么?答:DPTR是 16
15、位数据指针寄存器,它由两个8 位特殊功能寄存器DPL(数据指针低8 位)和DPH(数据指针高8 位)组 成,DPTR用于保存16位地址,作间址寄存器用,可寻址外部数据存储器,也可寻址程序存储器。第三章3-1选择题1、MOVX A,DPTR指令中源操作数的寻址方式是(B)(A)寄 存 器 寻 址(B)寄存器间接寻址(C)直 接 寻 址(D)立即寻址2 ORG OOOBHLJMP 3000HORG 0003HLJMP 2000H当 CPU响应外部中断0 后,PC的 值 是(B)(A)0003H(B)2000H(C)OOOBH(D)3000H4、LCALL指令操作码地址是2000H,执行完相子程序返
16、回指令后,PC=(D)(C)2000H(B)2001H(C)2002H(D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C(B)FO(C)OV(D)P6、下面条指令将MCS-51的工作寄存器置成3 区(B)(A)MOV PSW,#13H(B)MOV PSW,S18H(C)SETB PSW.4 CLR PSW.3(D)SETB PSW.3 CLR PSW.47、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(A)/PSEN(B)ALE(C)/RD(D)/WR8、M O V C,O O H的寻址方式是(A)(A)位 寻 址(B)直 接
17、寻 址(C)立 即 寻 址(D)寄存器寻址9、O R G 0 0 0 0 HA J M P 0 0 4 0 HO R G 0 0 4 0 HM O V S P,#0 0 11当执行完上面的程序后,P C 的 值 是(C)(A)0 0 4 0 11(B)0 0 4 1H(C)0 0 4 2H(D)0 0 4 3H10、对程序存储器的读操作,只能使用(D)(A)M O V 指令(B)P U S H 指令(C)M O V X 指 令(D)M O V C 指令3-2判断题。1.M C S-5 1的相对转移指令最大负跳距是127 B。(错)128 B2.当 M C S-5 1上电复位时,堆栈指针S P=
18、O O H。(S P=07 H)(错)3.调用子程序指令(如:C A L L)及返回指令(如:R E T)与堆栈有关但与P C 无关。(错)子序的转返与P C 也 有 关(P C 入栈与出栈)3-3 简答题1 简述M C S-5 1汇编语言指令格式。答:M C S-5 1汇编语言格式如下:标号:操作码助记符 操作数1 操作数2 操作数3 注释 标号是用户定义的符号,其值代表这条指令的地址。操作码助记符是指令系统规定的代表特定指令功能的英文缩写符。每条指令都有操作码记符。指令的操作数最多有3个,也有无操作数的指令。注释字段是用户对程序的说明,便于对程序的阅读和理解。2 M C S-5 1指令系统
19、主要有哪几种寻址方式?试举例说明。答:M C S-5 1指令操作数主要有以下7种寻址方式:寻址方式举例立即寻址M O VA,#16直接寻址M O V20H,P l寄存器寻址M O VA,R 0寄存器间接寻址M O V XA,D P T R变址寻址M O V CA,A+D P R T相对寻址S J M PL O O P位寻址A N LC,7 0H3 对访问内部R A M 和外部R A M,各应采用哪些寻址方式?答:对内部R A M 的寻址方式有直接寻址、寄存器间接寻址和可对位寻址的位寻址。对外部R A M的寻址方式只能用寄存器R 0/R 1(8位地址)或 D P T R (16 位地址)间接寻址
20、。4 设内部 R A M (3 0H)=5 A H,(5 A H)=4 0H,(4 0H)=00H,端口 P 1=7 F H,问执行下列指令后,各有关存储单元(即 R 0,R I,A,B,P l,3 0H,4 0H 及 5 A H 单元)的内容如何?解:每一条指令执行后的结果如注释字段所标。最后结果为:R 0=3 01I,R 1=5 A I I,A=7 F 1I,B=5 A I 1,P 1=7 F H,(3 0H)=20H,(4 0H)=20H,(5 A H)=7 F H。M O V R O,#3 011M O V A,R 0M O V R I,AM O V B,R IM O V R 1,P
21、1M O V A,P lM O V 4 0H,#20HM O V 3 0H,4 0H;R 0=3 0H;A=5 A H;R I=5 A H;B=5 A H;(5 A H)=7 F H;A=7 F H;(4 0H)=20H;(3 0H)=20H3-4 编程题2 片内R A M 3 0H 开始的单元中有10B 的二进制数,请编程求它们之和(和V 25 6 ).解 A D D I O:M O VM O VM O VL O O P:I N CA D DD J N ZM O VR 0,3 0HR 7,#9A,R 0R 0A,R 0R 7,L O O P3 0H,AR E T4用查表法编一子程序,将 R
22、3 中的B C D 码转换成A S C I I 码.M O V C A,A+D P T R ;查 A S C H 码表解 M A I N:M O VM O VA,R 3 ;待转换的数送AD P T R,#T A R ;表首地址送D P T R5片内R A M 4 0H 开始的单元内有10B 二进制数,编程找出其中最大值并存于5 0H 单元中.解 S T A R T:M O V R O,#4 0H ;数据块首地址送R OM O VR E TT A R D BD BR 3,A ;查表结果送R 33 0H,3 1H,3 2H,3 3 H,3 4 H3 5 H,3 6 H,3 7 H,3 8 H,3
23、9 HR E TM O VM O VL O O P:I N CM O VC J N EN E X T:J N CM O VB I E I:D J N ZM O VR 7,#09 H ;比较次数送R 7A,R 0;取数送AR 03 0H,R 0;取数送 3 O HA,3 0H,N E H T ;(A)与(3 0H)相比B I E I 。)(3 011)转引口A,3 0H ;(A)(3 0H),大数送 AR 7,L O O P ;比较次数减1,不为0,继续比较5 0H,A ;比较结束,大数送5 0H第四章4-1填空3 .设计8 03 1系统时,P O、P 2 口不能用作一般I/O 口.4 .M C
24、 S-5 1串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器_ S C O N一加以选择.5 .当使用慢速外设时,最佳的传输方式是中 断.6 .当定时器T 0工作在方式3时,要占定时器T 1 的 T R 1 和 T F 1 _ 两个控制位.7 .M C S-5 1 有 5 个中断源,有 2个中断优先级,优先级由软件填写特殊功能寄存器IP加以选择.8 .用串口扩并口时,串行接口工作方式应选为方式 09 .在串行通信中,有数据传送方向单工、半双工、全双工三种方式.1 0.外部中断0 入口地址为 0003 H4-2 判断1 .M C S-5 1 的 5 个中断源优先级相同。(X )
25、2 .要进行多机通信,M C S-5 1 串行接口的工作方式应为方式1。(X )3 .M C S-5 1 上电复位时,S B U F=OOH o (X )。4 .M C S-5 1 有 3个中断源,优先级由软件填写特殊功能寄存器I P 加以选择.(X )5 .用串口扩并口时,串行接口工作方式应选为方式1.(X )6 .外部中断I N T O入口地址为一001 3 H (X )7 .M C S-5 1 外部中断0 的入口地址是0003 1 1。(V ).8 .T M 0D 中的G A T E=1 时,表示由两个信号控制定时器的启停。(V )。9 .使用8 7 5 1 且=1 时,仍可外扩6 4
26、K B 的程序存储器。(X )1 0.P C 存放的是当前执行的指令。(X )1 1 .M C S-5 1 的特殊功能寄存器分布在6 0H 8 0H 地址范围内。(X )1 2 .M C S-5 1 有 4个并行1 0 口,其 中 P 0 P 3 是准双向口,所以由输出转输入时必须先写入 0(X )4-3 选择1 .在中断服务程序中,至少应有一条(D )(A)传送指令(B)转移指令(C)加法指法(D)中断返回指令2 .要使M C S-5 1 能够响应定时器T 1中断、串行接口中断,它的中断允许寄存器I E 的内容应是(A )(A)9 8 H (B)8 4 H (C)4 2 (D)2 2 H3
27、.M C S-5 1 在响应中断时,下列哪种操作不会发生(A ).(A)保护现场(B)保存P C (C)找到中断入口(D)保存P C 转入中断入口4 .用 M C S-5 1 串行接口扩展并行1 0 口时,串行接口工作方式应选择(A)(A)方式0(B)方 式 1 (C)方式2 (D)方式35 .M C S 5 1 有中断源(A )(A)5 个(B)2 个(C)3 个(D)6 个6 .M C S-5 1 响应中断时,下面哪一个条件不是必须的(D )(A)当前指令执行完毕(B)中断是开放的(C)没有同级或高级中断服务(D)必须有R ET I 指令7 .使用定时器T 0时,有几种工作模式(D )(A
28、)l 种(B)2 种(C)3 种(D)4 种8 .计算机在使用中断方式与外界交换信息时,保护现场的工作方式应该是(C )(A)由C P U 自动完成(B)在中断响应中完成(C)应由中断服务程序完成(D)在主程序中完成9 .下面哪一种传送方式适用于处理外部事件(C )(A)D M A (B)无条件传递进(C)中断(D)条件传递编程题:1、利用单片机的P l 口接8个发光二极管,P 0 口接8个开关,编程实现,当开关动作时,对应的发光二极管亮或灭。只须把P 0 口的内容读出后,通过P 1 口输出即可。汇编程序:OR G 01 00HM OV P O,#OF F HL OOP:M OV A,P OM
29、 OV P l,AS J M P L OOPC 5 1 语言程序:#i n c l ud e v oid ma in(v oid)(uns ig ne d c h a r i;P 0=0 x f f;f or(;)i=P O;P l=i;2 设系统时钟频率为12MHZ,用定时/计数器TO编程实现从P1.0 输出周期为500 u s 的方波。分析:从 P L 0 输出周期为5 0 0 u s的方波,只须P1.0每 250 u s 取反一次则可。当系统时钟为 12MHZ,定时/计数器T0工作于方式2 时,最大的定时时间为256 u s,满足250 u s 的定时要求,方式控制字应设定为000000
30、10B(02H)o系统时钟为12MHZ,定 时 250 n s,计数值N为 2 5 0,初值 X=256-250=6,则 TH0=TL0=06H采用中断处理方式的程序:C语言程序:#include 包含特殊功能寄存器库sb it Pl_0=Pr0;void main()(TM0D=0 x02;TH0=0 x06;TL0=0 x06;EA=1;ETO=1;TRO=1;while(1);)void time0_int(void)interrupt 1 中断服务程序(P1_O=!P1_O;)3、设系统时钟频率为1 2 M I 1 Z,编程实现从P 1.1 输出周期为1 s 的方波。这时应产生5 0
31、0 ms 的周期性的定时,定时到则对P L 1 取反就可实现。由于定时时间较长,一个定时/计数器不能直接实现,可用定时/计数器T 0 产生周期性为1 0 ms 的定时,然后用一个寄存器R 2 对 1 0 ms 计数5 0 次或用定时/计数器T 1 对 1 0 ms 计数5 0 次实现。系统时钟为1 2 M H Z,定时/计数器T 0 定 时 1 0 ms,计数值N为 1 0 0 0 0,只能选方式1,方式控制字为O O O O O O O I B(O I H),初值X:X=6 5 5 3 6-1 0 0 0 0=5 5 5 3 6=l1 0 1 1 0 0 0 1 1 1 1 0 0 0 0
32、B则 T H O=1 1 0 1 1 0 0 0 B=D 8 H,T L O=1 1 1 1 O O O O B=F O H。(1)用寄存器R 2 作计数器软件计数,中断处理方式。C语言程序:#inc lud e 包含特殊功能寄存器库s b it P l_ 1=P 1 1;c h a r i;v oid ma inO(T M 0 D=0 x 0 1;T H 0=0 x l)8;T L 0=0 x f 0;E A=1;E T O=1;i=0;T R O=1;w h ile(1);)v oid t ime 0 _ int(v oid)int e r r upt 1 中断服务程序(T H 0=0 x
33、 D 8;T L 0=0 x f 0;i+;if (i=5 0)P l_ l=!P l_ l;i=0;(2)用定时/计数器T 1 计数实现,定时/计数器T 1 工作于计数方式时,计数脉冲通过T 1(P 3.5)输入,设定时/计数器T 0 定时时间到对T 1 (P 3.5)取反一次,则 T 1 (P 3.5)每 2 0 nls产生一个计数脉冲,那么定时5 0 0 ms 只须计数2 5 次,设定时/计数器T 1 工作于方式2,初值X=2 5 6-2 5=2 3 1=1 1 1 0 0 1 1 1 B=E 7 H,T H l=T L l=E 7 H o 因为定时/计数器 T O 工作于方式 1,定时
34、,则这时方式控制字为0 1 1 0 0 0 0 1 B (6 1 H)。定时/计数器T 0 和 T 1 都采用中断方式工作。C语言程序如下:#inc lud e 包含特殊功能寄存器库s b it P l _ i=pr i;s b it P 3 _ 5=P 3 5;v oid ma in 0(T M O D=O x 6 1;T H 0=0 x D 8;T L 0=0 x f 0;T H l=0 x E 7;T L l=0 x E 7;E A=1;E T O=1;E T 1=1;T R O=1;T R 1=1;w h ile(l);)v oid t ime O _ int (v oid)int e
35、 r r upt 1 T 0 中断服务程序(T H 0=0 x D 8;T L 0=0 x f 0;P 3 _ 5=!P 3 _ 5;)v oid t ime l_ int(v oid)int e r r upt 3 /T l 中断服务程序(P l_ l=!P l_ l;)4、设单片机的f O S C=1 2 M I lz,要求在P l.0脚上输出周期为2 m s 的方波。解 周 期 为 2 ms 的方波要求定时间间隔为1 ms,每次时间到时,P 1.0 取反.(1)计算波特率初值(2 1 6-x)1NS=1 0 0 0 U SX=2 1 6-1 0 0 0T H O=(6 5 5 3 6-1
36、 0 0 0)/2 5 6T L 0=(6 5 5 3 6-1 0 0 0)%2 5 6(2)用定时器0的方式1 编程,采用中断方式。#inc lud e s b it pi_ o=pr o;v oid t ime r O(v oid)int e r r upt 1 us ing 1|P 1 _ O=!P 1 _ O;T H O=(6 5 5 3 6-1 0 0 0)/2 5 6;T L O=(6 5 5 3 6-1 0 0 0)%2 5 6;)v oid ma in(v oid)(T M 0 D=0 x 0 1;P l_ 0=0;T H 0=(6 5 5 3 6-1 0 0 0)/2 5 6
37、;T L O=(6 5 5 3 6-1 0 0 0)%2 5 6;E A=1;E T O=1;T R O=1;d o w h ile (1);5.在 P L 7 端接有一个发光二极管,要求利用T/C 控 制.使 L E D 亮一秒、灭一秒,周而复始。解 题目要求定时I s,T/C的三种工作方式都不能满足。对于较长时间的定时,应采用复合定时的方法。这里使T/C O 工作在定时器方式1,定 时 1 0 0 m s,定时时间到后P l.0反相,即 P L 0 端输出周期2 0 0 ms 的方波脉冲。另设T/C 1 工作在计数器方式2,对 T 1 输入的脉冲计数,当计数满5次时,定 时 1 s 时间到
38、将P 1.7 端反相,改变灯的状态。采用6 M I I z 晶振,方 式 1 的最大定时才能达到一百多ms。对 于 1 0 0 m s,机器周期2 us 需要的计数次数=1 0 0 X 1 0 3/2 =5 0 0 0 0,即初值为6 5 5 3 5 5 0 0 0 0。方式2 满 5次溢出中断,初值2 5 6-5。#inc lud e s b it P 1 _ O=P 1 O;s b it P l 7=P 1*7;t ime r O()int e r r upt 1 us ing 1(P 1 _ O=!P 1 _ O;T H O=(6 5 5 3 6-5 0 0 0 0)/2 5 6;T L
39、 O=(6 5 5 3 6-5 0 0 0 0)%2 5 6;)t ime r l()int e r r upt 3 us ing 2(P 1 _ 7=!P 1 _ 7;)ma inOP l_ 7=0;P l_ 0=l;T M 0 D=0 x 6 1;T I 1 0=(6 5 5 3 6-5 0 0 0 0)/2 5 6;T L O=(6 5 5 3 6-5 0 0 0 0)%2 5 6;T H 1=2 5 6-5;T L l=2 5 6-5;I P=0 x 0 8;E A=1;E T O=1;E T 1=1;T R O=1;T R 1=1;f or (;)6 采用 1 0 M H z 晶振,
40、在 P l.0脚上输出周期为2.5 s,占空比2 0%的脉冲信号。解1 0 M H z 晶振,使用定时器最大定时几十ms。取 1 0 ms 定时,周期2.5 s 需 2 5 0 次中断,占空比2 0%,高电乎应为5 0 次中断。1 0 ms 定时,晶振 f=1 0 M H z。需定时器计数次数=1 0 X 1 0 3 X 1 0 /1 2=8 3 3 3#inc lud e#d e f ine uc h a r uns ig ne d c h a ruc h a r i,t ime;uc h a r pe r iod=2 5 0;uc h a r h ig h=5 0;t ime r 0()i
41、nt e r r upt 1 us ing 1(T H 0=(6 5 5 3 6-8 3 3 3)/2 5 6;T L 0=(6 5 5 3 6-8 3 3 3)%2 5 6;if (+t ime=h ig h)P l=0;e ls e if (t ime=pe r iod)(t ime=0;P l=l;)ma in()(T M 0 D=0 x 0 1;T H 0=(6 5 5 3 6-8 3 3 3)/2 5 6;T L 0=(6 5 5 3 6-8 3 3 3)%2 5 6;E A=1;E T 0=l;T R 0=l;d o w h ile (1);7、串行口发送一串字符“M C S-5
42、1”#inc lud e#d e f ine uc h a r uns ig ne d c h a r#d e f ine uint uns ig ne d intuc h a r id a t a t r d a t a 1 0 =M ,C ,S ,5 ,1 ,O x O d,0 x 0 a,0 x 0 0);ma in()uc h a r i;uint j;T M 0 D=0 x 2 0;T L l=O x f d;T H l=O x f d;S C 0 N=0 x d 8;P C 0 N=0 x 0 0;T R 1=1;w h ile(1)(i=0;w h ile (t r d a t
43、a i!=0 x 0 0)(S B U F=t r d a t a i;w h ile(T I=0);T I=0;i+;)f or (j=0;j 1 2 5 0 0 0;j+);)I第五章5-1选择题1、6 2 6 4 芯 片 是(B)(A)E E P R OM (B)R AM (C)F L AS H R OM (D)E P R OM2、用 M C S-5 1用串行扩展并行I/O 口时,串行接口工作方式选择(A)(A)方式0 (B)方 式 1 (C)方式2 (D)方式33、使用8 2 5 5 可以扩展出的I/O 口线是(B)(A)16 根(B)2 4 根(C)2 2 根(D)3 2 根4、当
44、8 0 3 1外出扩程序存储器8 K B 时,需使用E P R OM 2 7 16 (C)(A)2 片(B)3 片(C)4 片(D)5 片5、某种存储器芯片是8 K B*4/片,那么它的地址线根线是(C)(A)11 根(B)12 根(C)13 根(D)14 根6、M C S-5 1外扩R OM,R AM 和 I/O 口时,它的数据总线是(A)(A)P 0 (B)P l (C)P 2 (D)P 37、当使用快速外部设备时,最好使用的输入/输出方式是(C)(A)中 断(B)条 件 传 送(C)DM A(D)无条件传送8、M C S-5 1的中断源全部编程为同级时,优先级最高的是(D)(A)I N
45、T I (B)T I (C)串行接口(D)I N T O9、M C S-5 1的并行I/O 口信息有两种读取方法:一种是读引脚,还有一种是(A)(A)读 锁 存 器 具(B)读 数 据 库(C)读 A 累 加 器 具(D)读 C P U10、M C S-5 1的并行行0 口读一改-写操作,是针对该口的(D)(A)引脚(B)片 选 信 号(C)地 址 线(D)内部锁存器5-2 判断题1、M C S-5 1外 扩 I/O 口与外R AM 是统一编址的。(对)2、使用8 7 5 1且 E A=1时,仍可外扩6 4 K B 的程序存储器。(错)6 0 K B3、8 15 5 的复位引脚可与8 9 c
46、5 1的复位引脚直接相连。(对)4、片内R AM 与外部设备统一编址时,需要专门的输入/输出指令。(错)统一编址的特点正是无需专门的输入输出指令。5、8 0 3 1片内有程序存储器和数据存储器。(错)无程序存储器6、E P R OM 的地址线为11条时,能访问的存储空间有4 K。(错)2 K.7、8 2 5 5 A内部有3个 8 位并行口,即 A 口,B 口,CD。(对)8、8 15 5 芯片内具有2 5 6 B 的静态R AM,2个 8 位 和 1个 6位的可编程并行I/O ,1 个 14 位定时期等常用部件及地址锁存器。(对)9、在单片机应用系统中,外部设备与外部数据存储器传送数据时,使用
47、M OV 指令。(错)用M OV X 指令。10、为了消除按键的抖动,常用的方法有硬件和软件两种方法。(对)5-3 简答题1 8 0 3 1的扩展储存器系统中,为什么P 0 口要接一个8 位锁存器,而 P 2 口却不接?答:这是因为P 0 口是扩展储存器系统的多路低8位地址和数据总线,在访问外部存储器时,P 0 口分时用作输出外部储存器低8 位地址和传送数据,为了在整个访问外部存储器期间,对外部存储器存在着有效的低8位地址信号,所以P 0 口需要外接一个地址锁存器。AL E 信号就是用来把P0 口输出的地址字节锁存在这个外接的锁存器中,再从锁存器输出外部存储器的低8 位地址。而 P2 口只用作
48、扩展存储器系统的高8 位地址线,并在整个访问外部存储器期间不变,所以不必外接地址锁存器。2在 8031扩展系统中,外部程序存储器和数据存储器共用16位地址线和8 位数据线,为什么两个存储空间不会发生冲突?答:这是因为外部程序存储器和外部数据存储器所使用的控制信号不同。对外部程序存储器的选读通是用PSEN控制线,而对外部数据存储器的读/写控制是用RD和 WR读、写控制线,所以不会发生地址冲突。3 8031单片机需要外接程序存储器,实际上它还有多少条I/O 线可以用?当使用外部存储器时,还剩下多少条I/O 线可用?答:8031系统必须外接程序促成器,原则上说,P0和 P2 口要用作数据和地址总线,
49、所以只有 P1和 P3 口可用作I/O 口,共 16条 I/O 线。在使用外部存储器时,除了占用P0和 P2 口外,还需要用P3 口 RD(P 3.7)和 W R (P 3.6)两条控制线,所以这种情况下就只剩下14条 I/O线可用了。下图是通过线选法实现的两片2764扩展成16KB程序存储器。两片2764的地址线A0A12与地址总线的A0A12对应相连,2764的数据线D0、D7与数据总线A0A7对应相连,两片2764的输出允许控制线连在一起与8031的 PSEN相连。第一片2764的片选线CS 与 8031地址总线的P2.7 直接相连,第二片2764的片选线CS与 8031地址总线的P2.
50、7 取反后相连。其两片的地址空间分别为:第一片:000000000000000000001111111111111,即 00片 1rlFFFH;001000000000000000011111111111111,即 2000H3FFFH;010000000000000000101111111111111,即 4000H5FFFH;011000000000000000111111111111111,即 6000H7FFFH;第二片:100000000000000001001111111111111,即 80片H9FFFH;101000000000000001011111111111111,即 A