51单片机复习题含答案_第1页
51单片机复习题含答案_第2页
51单片机复习题含答案_第3页
51单片机复习题含答案_第4页
51单片机复习题含答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、填空题1、AT89S51单片机为 8位单片机,共有40个引脚。2、 AT89S51访问片外存储器时,利用 ALE信号锁存来白P0 口发出的彳氐8位地址信号。3、AT89S51的P3 口为双功能口。4、 AT89S51内部提供 2个可编程的16位定时/计数器、定时器有4种工作方式。5、AT89S51有 2 级中断, 5 个中断源。6、AT89S51的 P2 口为高8位地址总线口。7、 设计一个以AT89C51单片机为核心的系统,如果不外扩程序存储器,使其内部4KB闪烁程序存储器有效,则其EA*引脚应该接+5V8、 单片机系统中使用的键盘分为独立式键盘 和行列式键盘,其中行列式键盘的按键 识别

2、方法有扫描法和线反转法。9、 AT89S51内部数据存储器的地址范围是00H7FH .位地址空间的字节地址范围是 20H2FH ,对应的位地址范围是 00H7FH ,外部数据存储器的最大可扩展容量 是 64K。10、如果(A)=34H , (R7)=0ABH,执行 XCH A, R7 ;结果(A)= 0ABH , (R7)= 34H 。11、 在R7初值为00H的情况下,DJNZ R7, rel指令将循环执行256 次。12、 欲使P1 口的低4位输出0,高4位不变,应执行一条ANL P1, #0F0H 命令。13、若CPU使用的是寄存器第1组,R0R7的地址范围是08H-0FH。14、 当M

3、CS-51执行MOVX A, R1指令时,伴随着 RD*控制信号有效。15、 若A中的内容为67H,那么,P标志位为 1 。16、 AT89S51唯一的一条16位数据传送指令为MOV DPTR. data16。17、 LJMP的跳转范围是 64K, AJMP的跳转范围是 2K B, SJMP的跳转范围是 士 128 B (或 256B)。18、如果(DPTR)=507BH , (SP)=32H, (30H)=50H, (31H)=5FH , (32H)=3CH ,则执行下 列指令后:POP DPHPOP DPLPOP SP贝U: (DPH)= 3CH ; (DPL) = 5FH ; (SP)

4、=4FH ;19、 AT89S51复位后,PC与SP的值为分别为0000H 和 07H。20、 当单片机复位时PSW= 00H,这时当前的工作寄存器区是 0区,R4所对应的存储单 元地址为04H。21、当AT89S51执行MOVC A , A+ DPTR指令时,伴随着 PSEN*控制信号有效。22、 当MCS-51执行MOVX R1, A指令时,伴随着 控制信号有效。23、MCS 51指令系统中,ADD与ADDC指令的区别是 进位位Cy是否参与加法运算 。24、如果(A)=45H , (R1)=20H , (20H)=12H,执行 XCHD A, R1;结果(A)= 42H , (20H)=

5、15H25、 关于定时器,若振荡频率为 12MHz,在方式2下最大定时时间为 _256us 26、 执行如下三条指令后,30H单元的内容是#0EHM O VR 1 , # 30HM O V40H , # 0 E HM O V R 1 , 40H27、ORG 0000HAJMP 0040HORG 0040HMOV SP, #00H当执行完左边的程序后,PC的值是0043H28、对程序存储器的读操作,只能使用 MOVC指令。29、MCS-51串行接口有4种工作方式,这可在初始化程序中用程序填写特殊功能寄存器_SCON _加以选择。二、判断题1、MOV55H, R5 ( X )2、INCDPTR (

6、 V )3、DECDPTR ( X )4、CLRR0 ( x )5、MOVT0, #3CF0H (X)6、 串行口工作方式1的波特率是固定的,为fosc/32。(X)7、8051单片机中的PC是不可寻址的。(/)8、MCS-51系统可以没有时钟电路。(X )9、 某特殊功能寄存器的字节地址为 80H,它即能字节寻址,也能位寻址。(/)10、PC存放的是即将执行的下一条指令。(/)11、 TMOD中的GATE=1时,表示由两个信号控制定时器的启停。(V )12、特殊功能寄存器SCON与定时器/计数器的控制无关。(/)13、 各中断源发出的中断请求信号,都会标记在AT89S51的TCON寄存器中。

7、(X)14、MCS-51 上电复位时,SBUF=00H。( X )。15、MCS-51的串行接口是全双工的。(316、MCS-51的特殊功能寄存器分布在 60H80H地址范围内。(X)17、MOV C , #00H的寻址方式是立即寻址。(7)三、简答题1、AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲 突,为什么?答:AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据 冲突。这是因为它们的控制信号不同:(1)外扩程序存储器是PSEN*信号为其控制信号,外扩数据存储器是 RD*与WR*信号为 其控制信号(2)指令不同,程序存储器用 M

8、OVC读取,数据存储器用MOVX存取。2、写出AT89S51的所有中断源,并说明说明哪些中断源在响应中断时, 由硬件白动清除, 哪些中断源必须用软件清除,为什么?答:外部中断INT0*,定时器/计数器中断T0,夕卜部中断INT1*,定时器/计数器中断T1, 串行口中断。其中串行口中断 TI与RI必须用软件清“ 0”,因为串口中断的输出中断为 TI,输入中断为RI,故用软件清“ 0”。3、MCS-51指令系统主要有哪几种中断源?并写出每个中断入口地址?答:中断源入口地址外部中断00003H定时器0溢出000BH外部中断10013H定时器1溢出0001BH串行口中断0023H4什么叫堆栈?答:堆栈

9、是在片内RAM中专门开辟出来的一个区域,数据的存取是以"后进先出"的结构 方式处理的。实质上,堆栈就是一个按照"后进先出"原则组织的一段内存区域。5 PC是什么寄存器?是否属于特殊功能寄存器?它有什么作用?答:PC是16位程序计数器(Program Counted,它不属于特殊功能寄存器范畴,程序员 不以像访问特殊功能寄存器那样来访问 PC。PC是专门用于在CPU取指令期间寻址程序 存储器。PC总是保存着下一条要执行的指令的 16位地址。通常程序是顺序执行的,在 一般情况下,当取出一个指令(更确切地说为一个指令字节)字节后, PC白动加1。如 果在执行转

10、移指令、子程序调用/返回指令或中断时,要把转向的地址赋给 PC。5、DPTR是什么寄存器?它由哪些特殊功能寄存器组成?它的主要作用是什么?答:DPTR是16位数据指针寄存器,它由两个 8位特殊功能寄存器DPL (数据指针低8 位)和DPH (数据指针高8位)组成,DPTR用于保存16位地址,作间址寄存器用,可 寻址外部数据存储器,也可寻址程序存储器。6、8031的扩展储存器系统中,为什么 P0 口要接一个8位锁存器,而P2 口却不接? 答:这是因为P0 口是扩展储存器系统的多路低 8位地址和数据总线,在访问外部存储器 时,P0 口分时用作输出外部储存器低 8位地址和传送数据,为了在整个访问外部

11、存储器 期间,对外部存储器存在着有效的低 8位地址信号,所以P0 口需要外接一个地址锁存器。 ALE信号就是用来把P0 口输出的地址字节锁存在这个外接的锁存器中,再从锁存器输出 外部存储器的低8位地址。而P2 口只用作扩展存储器系统的高 8位地址线,并在整个访 问外部存储器期间不变,所以不必外接地址锁存器。四、编程题1、编程将片内RAM30H解:STRAT: MOVMOVMOV7、单片机有哪些软件和硬件的抗干扰技术?单元开始的15B的数据传送到片外RAM3000H开始的单元中去。R0,#30HR7,#0FHDPTR,#3000HLOOP: MOV A,R0 MOVXDPTR,AINCR0INC

12、DPTRDJNZR7,LOOPRET2、编一个程序,将累加器中的一个字符从串行接口发送出去.解:SOUT: MOVSCON,#40H;设置串行接口为工作方式3、MOVTMOD,#20H;定时器T1工作于模式2MOVTL1,#0E8H;设置波特率为1200b/sMOVTH1,#0E8HSETBTR1MOVSBUF,AJNBT1,$CLBT1RET片内RAM40H开始的单元内有10B二进制数,编程找出其中最大值并存于50H单元中.解:START:MOVR0,#40H;数据块首地址送R0MOVMOVLOOP:INCMOVCJNE SJMP NEXT:JNCR7,#10 A,R0 R030H,R0 A

13、,30H,NEXT BIE1 BIE1;比较次数送R 7;取数送A;取数送3 0 H;(A)与(30H)相比(A) >(30H)转 BIR1MOVBIE1:DJNZA,30HR7,LOOP;(A) v (30H),大数送 A业较次数濂1,不为0,继续比较4、MOV RET 编定一个软件延时1S和50H,A1mi n的子程序。;比较结束,大数送50H设f osc=6Hz,则一个机器周期1 1 s。解:(1) 1S=2US*5*1000005*100000=250*200*10(2) ORG 1000HTIME:MOVR7,#10T3:MOVR6,#200T2:MOVR6,#250T1:DJ

14、NZR5,T1DJNZR6,T2DJNZR7,T3RET(2)1min=60,调用上面1s子程序60次ORG 0030HMOV R0,#60LOOP: LCALL TIMEDJNZ R0,LOOP RET5、请编制串行通信的数据发送程序,发送片内RAM50H5FH的16B数据,串行接口设定为方式2,采用偶校验方式。设晶振频率为 6MHz。解:查询方式发送程序如下MOV M OV MOV MOV LOOP: MOV MOV MOV MOV JNB CLR INC DJNZ RETSCON,#80H PCON,#80H R0,#50H R7,#16H A,R0 C,P TB8,C SBUF,A T

15、1,$ T1 R0 R7,LOOP6、编制一个循环闪烁的程序。有 8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。画出电路图。解:MOV A,#01HSHIFT: LCALL FLASH RR SJMP SHIFT FLAH:MOV R2,#0AHFLAH1:MOV P1,ALCALL DELAY MOV P#00H LCALL DELAY DJNZ R2,FLASH1 RET7、请回答:(1) 下图中外部扩展的数据存储器容量是多少?(2) 三片6264的地址范围分别是多少?(地址线未用到的位填1)(3) 若外部程序存储器已扩展(未画出),请编写程序,要求: 将

16、30H3FH中的内容送入 6264 1#的前16个单元中; 将6264 2#的前32个单元的内容送入 40H5FH中;解:(1)夕卜部扩展的数据存储器为3片8K的RAM,外扩容量为24 K(2) A15 A!4A13地址范围0116000H7FFFH101A000HBFFFH110C000HDFFFH(3: ORG 0000HMAINMOVDPL,#00H ;初始化 DPTRMOVDPH,#60HMOVR0,#30H;初始化 R0LOOP:MOVA, R0MOVXDPTR,AINCR0INCDPTRCJNER0,#40H,LOOPNOPRET程序如下:ORG0000HRESET:AJMPMAIN;转主程序ORG0100HMAIN :MOVDPL#00H;初始化DPTRMOVDPH,#0A0HMOVR0,#40H;初始化R0LOOP2:MOVXA,DPTRMOVR0,ARESET: AJMP MAINORG 0100H;复位,转主程序INCDPTRINCR0CJNE R0,#60H,LOOP2NOPRET8、利用单片机定时器/计时器模块编制一个周期性计数的程序,每次计12个数单片机p1.0 引脚输出控制继电器的动作信号(低电平)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论