51单片机笔记经典2Word文档格式.docx

上传人:b****6 文档编号:20972636 上传时间:2023-01-26 格式:DOCX 页数:13 大小:75.87KB
下载 相关 举报
51单片机笔记经典2Word文档格式.docx_第1页
第1页 / 共13页
51单片机笔记经典2Word文档格式.docx_第2页
第2页 / 共13页
51单片机笔记经典2Word文档格式.docx_第3页
第3页 / 共13页
51单片机笔记经典2Word文档格式.docx_第4页
第4页 / 共13页
51单片机笔记经典2Word文档格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

51单片机笔记经典2Word文档格式.docx

《51单片机笔记经典2Word文档格式.docx》由会员分享,可在线阅读,更多相关《51单片机笔记经典2Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。

51单片机笔记经典2Word文档格式.docx

27、如果(A)=45H,(R1)=20H,(20H)=12H,执行XCHDA,@R1;

结果(A)=42H,(20H)=15H。

28、在内部RAM中可位寻址区中,位地址为40H的位,该位所在字节的字节地址为28H。

29、关于定时器,若振荡频率为12MHz,在方式2下最大定时时间为256us

30、AT89S51单片机的通讯接口有串行和并行两种形式。

在串行通讯中,发送时要把并行数据转换成串行数据。

接收时又需把串行数据转换成并行数据。

31、若AT89S51外扩32KB数据存储器的首地址若为4000H,则末地址为BFFFH。

32、执行如下三条指令后,30H单元的内容是#0EH

 

1,#30H 

40H,#0 

﹫R 

1,40H 

33、MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以位寻址。

34、一个机器周期等于6个状态周期,振荡脉冲2分频后产生的时序信号的周期定义为状态 周期。

35、执行MOVXA,DPTR指令时,MCS-51产生的控制信号是RD*。

36、ORG0000H

AJMP0040H

ORG0040H

MOVSP,#00H当执行完左边的程序后,PC的值是0042H

37、对程序存储器的读操作,只能使用MOVC指令。

38、当使用慢速外设时,最佳的传输方式是中断。

39、MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器__SCON_加以选择。

二、判断题

1、MOV55H,@R5(×

)R只能是0,1

2、INCDPTR(√)

3、DECDPTR(×

)没有数据指针寄存器减指令

4、CLRR0(×

5、MOVT0,#3CF0H(×

)T0是8位寄存器

6、8031与8051的区别在于内部是否有程序存储器。

(√)

7、内部RAM的位寻址区,既能位寻址,又可字节寻址。

(√)

8、串行口工作方式1的波特率是固定的,为fosc/32。

(×

9、8051单片机中的PC是不可寻址的。

10、MCS-51系统可以没有复位电路。

(×

11、某特殊功能寄存器的字节地址为80H,它即能字节寻址,也能位寻址。

12、PC存放的是即将执行的下一条指令。

13、TMOD中的GATE=1时,表示由两个信号控制定时器的启停。

14、特殊功能寄存器SCON与定时器/计数器的控制无关。

15、各中断源发出的中断请求信号,都会标记在AT89S51的TCON寄存器中。

16、MCS-51上电复位时,SBUF=00H。

)。

17、MCS-51的相对转移指令最大负跳距是127B。

18、MCS-51的程序存储器只是用来存放程序的。

(×

19、MCS-51的串行接口是全双工的。

20、MCS-51的特殊功能寄存器分布在60H~80H地址范围内。

21、MOVC,#00H的寻址方式是立即寻址。

22、MCS-51的5个中断源优先级相同。

三、简答题

1、请写出共阴数码管显示数字0~9对应的段码值。

答:

共阴3FH06H5BH4FH66H6DH7DH07H7FH6FH

2、请写出共阳数码管显示数字0~9对应的段码值。

共阳C0HF9HA4HB0H99H92H82HF8H80H90H

3、AT89S51单片机指令系统的寻址方式有哪些?

寄存器寻址、直接寻址、寄存器间接寻址、立即寻址,基址寄存器和变址寄存器间接寻址,相对寻址。

4、请说明MCS-51单片机的外部引脚EA*的作用?

答:

当EA*为高电平时,访问内部程序存储器,但当地址大于0FFF时,自动转到外部程序存储器;

当EA*为低电平时,只读取外部程序存储器。

5、举例说明指令PUSH和POP的工作原理。

PUSH进栈指令;

首先将栈指针SP加1然后把direct中的内容送到栈指针SP指示的RAM单元中

当(SP)=60H,(A)=30H,(B)=70H时

PUSHA;

(SP)+1=60H->

SP(A)->

61H

PUSHB;

(SP)+1=62H->

SP(B)->

62H

(SP)=62H(61H)=30H(62H)=70H

POP出栈指令;

当栈指针SP指示的栈顶(内部RAM单元)内部送入direct字节单元中,栈指针SP减1

当(SP)=62H,(62H)=70H,(61H)=30H时

POPDPH;

((SP))->

DPH,(SP)-1->

SP

POPDPL;

DPL,(SP)-1->

(POTR)=7030H(SP)=60H

特殊功能寄存器中,哪些单元是可以位寻址的?

B寄存器F7H-F0H

累加器AE7H-E0H

程序状态字PSWD7H-DOH

中断优先级控制IPBFH-B8H

P3口B7H-BOH

中断允许控制IEAFH-A8H

P2口A7H-AOH

串行控制SCON9FH-98H

P1口97H-90H

定时器计数器控制TCON8FH-88H

P0口87H-80H

7、AJMP指令和LJMP指令的区别?

AJMP这是2kb范围的无条件跳转指令,为了和MCS-48的JMP指令兼容而设

SJMP相对转移指令LJMP长跳转指令

8、中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?

RETI除了将压栈的内容出栈外(即现场恢复),还清除在中断响应时被置1的AT89S51内部中断优先级寄存器的优先级状态。

9、AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?

AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突。

这是因为它们的控制信号不同,操作命令不同:

(1)外扩程序存储器是PSEN*信号为其控制信号,外扩数据存储器是RD*与WR*信号为其控制信号

(2)指令不同,程序存储器用MOVC读取,数据存储器用MOVX存取。

10、MCS-51单片机片内256B的数据存储器可分为几个区?

分别作什么用?

(1)通用工作寄存器区,00H–1FH,共4组,R0-R7,在程序中直接使用

(2)可位寻址区,20H-2FH,可进行位操作,也可字节寻址

(3)用户RAM区,30H-7FH,只可字节寻址,用于数据缓冲及堆栈区

(4)特殊功能寄存器区,80H-FFH,21个特殊功能寄存器离散地分布在该区内,用于实现各种控制功能

11、AT89S51采用6MHz的晶振,定时1ms,如用定时器方式1时的初值(16进制数)应为多少?

(写出计算过程)

(216-X)*2*10-6=10-3X=655036X=FEOCH

12、写出AT89S51的所有中断源,并说明说明哪些中断源在响应中断时,由硬件自动清除,哪些中断源必须用软件清除,为什么?

外部中断INT0*,

定时器/计数器中断T0,

外部中断INT1*,

定时器/计数器中断T1,

串行口中断。

其中串行口中断TI与RI必须用软件清“0”(52系列还有定时器2),因为串口中断的输出中断为TI,输入中断为RI,故用软件清“0”。

13、MCS-51指令系统主要有哪几种中断源?

并写出每个中断入口地址?

中断源入口地址

外部中断00003H

定时器0溢出000BH

外部中断10013H

定时器1溢出0001BH

串行口中断0023H

14、LED的静态显示方式与动态显示方式有何区别?

各有什么优缺点?

静态:

显示期间,锁存器输出的段码不变,亮度大,各位LED的段选分别控制,位数多硬件电路复杂;

动态:

所有位段码线并连一起,各位的亮灭靠片选控制端控制,亮度较低,多位控制电路简单。

15、请画出单片机最小系统。

(含有数据,地址,控制总线,有程序存储和数据存储的系统结构)

16、简述行列式扫描键盘的工作原理。

答:

扫描键盘工作原理

首先X0~X3,始终接高电平,Y0~Y3给低电平,扫描P1.0~P1.3若全为高电平,则没有键按下,若有低电平,则有键按下。

接着Y0输出低电平,Y1~Y3输出高平,扫描P1.0~P1.3,若全为高电平,则没有键按下,若有低电平,则找出相位,得到所按的键。

再Y1输出低电平,Y0,Y2,Y3输出高电平,重复第2步骤作.

再Y2输出低电平,Y0,Y1,Y3输出高电平扫描

再Y3输出低电平,Y0,Y1,Y2输出高电平扫描

根据据以上扫描,确定以上各键是否按下。

17、什么叫堆栈?

堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以"

后进先出"

的结构方式处理的。

实质上,堆栈就是一个按照"

原则组织的一段内存区域。

18、PC是什么寄存器?

是否属于特殊功能寄存器?

它有什么作用?

PC是16位程序计数器(ProgramCounter),它不属于特殊功能寄存器范畴,程序员不以像访问特殊功能寄存器那样来访问PC。

PC是专门用于在CPU取指令期间寻址程序存储器。

PC总是保存着下一条要执行的指令的16位地址。

通常程序是顺序执行的,在一般情况下,当取出一个指令(更确切地说为一个指令字节)字节后,PC自动加1。

如果在执行转移指令、子程序调用/返回指令或中断时,要把转向的地址赋给PC。

19、DPTR是什么寄存器?

它由哪些特殊功能寄存器组成?

它的主要作用是什么?

DPTR是16位数据指针寄存器,它由两个8位特殊功能寄存器DPL(数据指针低8位)和DPH(数据指针高8位)组成,DPTR用于保存16位地址,作间址寄存器用,可寻址外部数据存储器,也可寻址程序存储器。

20、8031的扩展储存器系统中,为什么P0口要接一个8位锁存器,而P2口却不接?

这是因为P0口是扩展储存器系统的多路低8位地址和数据总线,在访问外部存储器时,P0口分时用作输出外部储存器低8位地址和传送数据,为了在整个访问外部存储器期间,对外部存储器存在着有效的低8位地址信号,所以P0口需要外接一个地址锁存器。

ALE信号就是用来把P0口输出的地址字节锁存在这个外接的锁存器中,再从锁存器输出外部存储器的低8位地址。

而P2口只用作扩展存储器系统的高8位地址线,并在整个访问外部存储器期间不变,所以不必外接地址锁存器。

四、大题

1、编写课本P125~P130的例6-1、6-2、6-3。

2、编程将片内RAM30H单元开始的15B的数据传送到片外RAM3000H开始的单元中去。

 解:

STRAT:

MOVR0,#30H

MOVR7,#0FH

MOVDPTR,#3000H

LOOP:

MOVA,@R0

MOVX@DPTR,A

INCR0

INCDPTR

DJNZR7,LOOP

RET

3、编一个程序,将累加器中的一个字符从串行接口发送出去.

解:

SOUT:

MOVSCON,#40H;

设置串行接口为工作方式

      MOVTMOD,#20H;

定时器T1工作于模式2

MOVTL1,#0E8H;

;

设置波特率为1200b/s

MOVTH1,#0E8H

SETBTR1

MOVSBUF,A

JNBT1,$

CLBT1

4、片内RAM40H开始的单元内有10B二进制数,编程找出其中最大值并存于50H单元中.

解:

START:

MOVR0,#40H;

数据块首地址送R0

MOVR7,#09H;

比较次数送R7

        MOVA,@R0;

取数送A

  LOOP:

INCR0

MOV30H,@R0;

取数送30H

CJNEA,30H,NEHT;

(A)与(30H)相比

NEXT:

JNCBIE1(A)≥(30H)转BIR1

MOVA,30H;

(A)<(30H),大数送A

   BIE1:

DJNZR7,LOOP;

比较次数减1,不为0,继续比较

        MOV50H,A;

比较结束,大数送50H

        RET

5、编定一个软件延时1S和1min的子程序。

设fosc=6Hz,则一个机器周期1μs。

(1)1S=2US*5*100000

5*100000=250*200*10

(2)ORG1000H

TIME:

MOVR7,#10

T3:

MOVR6,#200

T2:

MOVR6,#250

T1:

DJNZR5,T1

DJNZR6,T2

DJNZR7,T3

RET

(2)1min=60,调用上面1s子程序60次

ORG0030H

MOVR0,#60

LOOP:

LCALLTIME

DJNZR0,LOOP

6、请编制串行通信的数据发送程序,发送片内RAM50H~5FH的16B数据,串行接口设定为方式2,采用偶校验方式。

设晶振频率为6MHz。

查询方式发送程序如下

MOVSCON,#8OH

MOVPCON,#80H

MOVR0,#50H

MOVR7,#16H

MOVC,P

MOVTB8,C

CLRT1

7、编制一个循环闪烁的程序。

有8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。

画出电路图。

解:

MOVA,#01H

SHIFT:

LCALLFLASH

RR

SJMPSHIFT

FLAH:

MOVR2,#0AH

FLAH1:

MOVP1,A

LCALLDELAY

MOVP,#00H

DJNZR2,FLASH1

RET

8、请回答:

(1)下图中外部扩展的数据存储器容量是多少?

(2)三片6264的地址范围分别是多少?

(地址线未用到的位填1)

(3)若外部程序存储器已扩展(未画出),请编写程序,要求:

将30H~3FH中的内容送入62641#的前16个单元中;

将62642#的前32个单元的内容送入40H~5FH中;

解:

(1)外部扩展的数据存储器为3片8K的RAM,外扩容量为24K

(2)A15A!

4A13地址范围

0116000H~7FFFH

101A000H~BFFFH

110C000H~DFFFH

(3:

ORG0000H

RESET:

AJMPMAIN;

复位,转主程序

ORG0100H

MAIN:

MOVDPL,#00H;

初始化DPTR

MOVDPH,#60H

MOVR0,#30H;

初始化R0

MOVA,@R0

MOVX@DPTR,A

INCR0

INCDPTR

CJNER0,#40H,LOOP

NOP

RET

程序如下:

ORG0000H

RESET:

AJMPMAIN;

转主程序

ORG0100H

MAIN:

MOVDPL#00H;

MOVDPH,#0A0H

MOVR0,#40H;

LOOP2:

MOVXA,@DPTR

MOV@R0,A

INCDPTR

INCR0

CJNER0,#60H,LOOP2

RET

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 预防医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1