最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

《单片机原理与应用》期末复习题1

来源:动视网 责编:小OO 时间:2025-10-04 00:31:48
文档

《单片机原理与应用》期末复习题1

一、填空题1、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为____2/12us_____,机器周期为_______2us________。2、MCS-51单片机共有5个中断源,由IE寄存器设定中断的开放和禁止;每个中断源有两个优先级,由IP寄存器设定。3、单片机的内部RAM区中,可以位寻址的地址范围是_________20H~2FH_________,特殊功能寄存器中,可位寻址的地址是_______80H~FFH__________。4、MSC-51单片机引脚信号中,信号名称带
推荐度:
导读一、填空题1、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为____2/12us_____,机器周期为_______2us________。2、MCS-51单片机共有5个中断源,由IE寄存器设定中断的开放和禁止;每个中断源有两个优先级,由IP寄存器设定。3、单片机的内部RAM区中,可以位寻址的地址范围是_________20H~2FH_________,特殊功能寄存器中,可位寻址的地址是_______80H~FFH__________。4、MSC-51单片机引脚信号中,信号名称带
一、填空题

1、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为____2/12us_____,机器周期为_______2us________。

2、MCS-51单片机共有   5   个中断源,由     IE    寄存器设定中断的开放和禁止;

每个中断源有     两    个优先级,由     IP    寄存器设定。

3、单片机的内部RAM区中,可以位寻址的地址范围是_________20H~2FH_________,特殊功能寄存器中,可位寻址的地址是_______80H~FFH__________。

4、MSC-51单片机引脚信号中,信号名称带上划线的表示    可外接电路       或  低电平         时该信号有效;

5、         函数              是C语言的基本单位。

6、若由程序设定RS1、RS0=0、1,则工作寄存器R0~R7的直接地址为____08H~0FH_____。

7、串行口通信方式2接收到的第9位数据送      SCON         寄存器的    RB8         位中保存。

8、MCS-51内部提供     2    个可编程的   16      位定时/计数器,定时器有   4     种工作方式。

9、在C51中,变量的数据类型说明为bit,则其取值范围是        0或1             。

10、串行口方式3发送的第9位数据要事先写入      SCON        寄存器的        RB8      位。

11、MCS—51单片机外部中断请求信号有电平方式和脉冲方式,在电平方式下,当采集到 

                 P3.2或P3.3引脚                的有效信号为低电平时,激活外部中断。 

12、 CPU又称      MPU          ,一般由        运算器       和   控制器            两部分组成。

13、使用DPTR作间址指针进行寄存器间接寻址时,其寻址能力为      所有存储器        。

14、整型变量的占用的存储空间是       两个字节       ;字符型变量占用的存储空间是   一个字节            

15、ALU指的是         算术/逻辑单元                      。

16、MCS-51单片机的中断源分别是     外部中断0      、    定时/计数器0       、   外部中断1         、    定时/计数器1     、

     串行口接收/发送中断       。  

17、KeiL C51软件中,工程文件的扩展名是____ .Uv2 ______,编译连接后生成可烧写的文件扩展名是____  _.hex______

二、选择题

1、C语言中最简单的数据类型包括(  B/D   )。

A、整型、实型、逻辑型             B、整型、实型、字符型

C、整型、字符型、逻辑型           D、整型、实型、逻辑型、字符型

2、下列描述中正确的是(  D    )。

A、程序就是软件                   B、软件开发不受计算机系统的

C、软件既是逻辑实体,又是物理实体 D、软件是程序、数据与相关文档的集合

3、下列计算机语言中,CPU能直接识别的是(   D  )。

A、 自然语言     B、 高级语言      C、 汇编语言     D、机器语言

4、MCS-5l单片机的堆栈区是设置在(   C   )中。

A、片内ROM区 B、片外ROM区 C、片内RAM区 D、片外RAM区

5、以下叙述中正确的是(   C   )。

A、用C语言实现的算法必须要有输入和输出操作

B、用C语言实现的算法可以没有输出但必须要有输入

C、用C程序实现的算法可以没有输入但必须要有输出

D、用C程序实现的算法可以既没有输入也没有输出

6、定时器/计数器工作方式1是(   D    )。

A、8位计数器结构                 B、2个8位计数器结构

C、13位计数结构                  D、16位计数结构

8、C语言提供的合法的数据类型关键字是(   D    )。

A、Double       B、short          C、integer        D、Char

9、片内RAM的20H~2FH为位寻址区,所包含的位地址是(  B   )。

A、00H~20H    B、00H~7FH     C、20H~2FH     D、00H~FFH

10、以下能正确定义一维数组的选项是(   B   )。

A、int a[2,5]={0,1,2,3,4,5};            B、char a[ ]={0,1,2,3,4,5};

C、char a={'A','B','C'};               D、int a[5]="0123";

11、MCS-51单片机的复位信号是(   A    )有效。

  A、高电平       B、低电平       C、脉冲           D、下降沿

12、8051的单片机的堆栈指针(  D )

A、 只能位于内部RAM低128字节范围内 

B、  可位于 内部RAM低256字节范围内

C、  可位于 内部ERRAM内。               

D、可位于内部RAM或外部RAM内  

13、在串行口工作于异步通信方式时,其接收由(  C   )来启动。 

A、REN        B、RI          C、REN和RI     D、TR 

14、存储16×16点阵的一个汉字信息,需要的字节数为(  A    )

A、 32           B、            C、 128           D、 256 

15、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为(   B    )

     A、2MHz        B、1MHz        C、500kHz        D、250kHz

16、利用下列(    D    )关键字可以改变工作寄存器组

A、interrupt       B、sfr

C、while           D、using

17、C51中一般指针变量占用(   c     )字节存储。

A、一个       B、两个       C、三个       D、四个

18、使用宏来访问绝对地址时,一般需包含的库文件是( b  )

A、reg51.h     B、absacc.h   C、intrins.h    D、startup.h

19、单片机的定时器/计数器工作方式1是(  D    )。

    A、8位计数器结构                 B、2个8位计数器结构

C、13位计数结构                  D、16位计数结构

20、串行口每一次传送(   C    )字符。

A、1个          B、1串          C、1帧          D、1波特

21、数据的存储结构是指(  D  )。

A、存储在外存中的数据            B、数据所占的存储空间量

C、数据在计算机中的顺序存储方式 D、数据的逻辑结构在计算机中的表示

22、下列关于栈的描述中错误的是(  C   )。

A、栈是先进后出的线性表 B、栈只能顺序存储

C、栈具有记忆作用        D、对栈的插入和删除操作中,不需要改变栈底指针

23、在寄存器间接寻址方式中,间址寄存器中存放的数据是(  B    )。

A、参与操作的数据                B、操作数的地址值

C、程序的转换地址                D、指令的操作码

24、MCS-51单片机的复位信号是(  A   )有效。

A、高电平       B、低电平       C、脉冲           D、下降沿

25、为了使模块尽可能,要求(  A  )。

A、模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强

B、模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱

C、模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱

D、模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强

26、若MCS-51单片机使用晶振频率为6MHz时,其复位持续时间应该超过(   4   )。

A、2μs          B、4μs           C、8μs           D、1ms

27、以下选项中可作为C语言合法常量的是( A  )

A、-80         B、-080         C、-8e1.0       D、-80.0e

28、能够用紫外光擦除ROM中程序的只读存储器称为(  C   )。

A、掩膜ROM    B、PROM        C、EPROM       D、EEPROM

29、以下不能定义为用户标识符是( D   )。

A、Main         B、_0            C、_int          D、sizeof

30、下选项中,不能作为合法常量的是( B  )。 

A、1.234e04      B、1.234e0.4      C、1.234e+4      D、1.234e0

31、存储16×16点阵的一个汉字信息,需要的字节数为( D )

A、 32           B、            C、 128           D、 256

32、以下选项中合法的字符常量是(   D  )

A、 "B"          B、 ’\010’         C、 68            D、 D

33、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为(  B   )

A、2MHz        B、1MHz        C、500kHz        D、250kHz

34、下列数据字定义的数表中,(    D   )是错误的。

A、DW “AA”     B、DW “A”       C、DW “OABC”   D、DW OABCH 

三、判断题

(  √╳ )1、在对某一函数进行多次调用时,系统会对相应的自动变量重新分配存储单元。

( √  )2、自动变量属于局部变量。

(  √ )3、Continue 和break都可用来实现循环体的中止。

( ╳  )4、在MCS-51系统中,一个机器周期等于1.5μs。

(  √ )5、若一个函数的返回类型为void,则表示其没有返回值。

( √  )6、所有定义在主函数之前的函数无需进行声明。

( √  )7、定时器与计数器的工作原理均是对输入脉冲进行计数。

(  √ )8、END表示指令执行到此结束。

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

( ╳ )10、MCS-51的程序存储器只是用来存放程序的。

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

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

(  √ )13、片内RAM与外部设备统一编址时,需要专门的输入/输出指令。

( √  )14.寄存器间接寻址可以访问数据存储器,也可以访问程序存储器。   

(  √ )15.在C51中,将数据的存储类型说明为data,则该数据映射的存储空间为片内位寻址空间。                                                    

(  ╳ )16.MCS—51属于16位的单片机。                             

(  ╳ )17.基址加变址寻址只能访问程序存储器。                        

(  √ )18.位地址和字节地址在形式上没有区别。                        

( √  )19.如果x=0xEA,则执行x<<2后,x的值为0xA8。

(  √ )20.在MCS—51的指令系统中,地址分为字节地址和位地址。       

( ╳  )21.汇编语言指令就是指能被CPU直接执行的指令。                

( √  )22.在MCS—51的指令系统中,伪指令、指令都是在程序执行的时候起作用。

(  ╳ )23、(R7)表示工作寄存器R7中的内容。                          

(  √ )24、若一个函数的返回类型为void,则表示其没有返回值。

(  √ )25、定时器与计数器的工作原理均是对输入脉冲进行计数。

( √  )26、SFR中凡是能被8整除的地址,都具有位寻址能力。

(  √ )27、不能用“sfr16” 直接访问定时器/计数器0和1。 

(  ╳ )28、MCS-51单片机的程序存储器只能用来存放程序的。

( ╳   )29、串口中断标志由硬件清0。

(  √ )30、特殊功能寄存器的名字,在C51程序中,全部大写。

(  √ )31、“sfr”后面的地址可以用带有运算的表达式来表示。

(  √ )32、#include  与#include  “reg51.h”是等价的。

(  ╳ )33、sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。

四、简答题

1、在使用8051的定时器/计数器前,应对它进行初始化,其步骤是什么?

解:1、配置定时器/计数器的工作方式。

     2、给THi和TLi赋初值。

     3、启动定时/计数器。

     4、打开定时/计数器中断标志。

     5、打开总中断。

2、在有串行通信时,定时器/计数器1的作用是什么,怎样确定串行口的波特率?

解:如果有串行通信时,定时器/计数器1的作用是控制波特率。

     串行口的波特率是有定时器1的溢出率决定的。

3.51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义? 

解:51系列单片机具有5个中断源。

    外部中断0、1是由EXi外部中断标志位,ITi中断触发方式和EA总中断决定。

    定时器/计数器0、1是由TMOD工作方式控制器,THi和TLi初始值控制器,TRi定时/计数器开关,ETi定时/计数器中断标志位和EA总中断决定。

    串行口接收/发送中断是由SCON串行口控制寄存器,定时/计数器的波特率设置决定。

    51系列单片机的5个中断源都可以被定义为高优先级。只要在IP中断优先级控制寄存器的相应位控制就可以!如:串行口优先级:PS置1,串口通信就是高优先级,反之为低优先级。

4.在C51语言中,定义MSC-51单片机的中断服务函数时需要使用关键字interrupt m 进行定义。参数m可以取那些值?分别表示何种意义?

解:m可以去0~4,相应对应各个中断,0为外部中断0,1为定时器/计数器0,2外部中断1,3为定时器/计数器1,4为串行口接收/发送中断。

5. 什么是指令周期、机器周期和震荡周期?

解:指令周期为单片机执行一条指令的时间,机器周期为单片机执行一条最简单的指令需要的时间,震荡周期为石英震荡器震荡一次的时间。

6.在C51中,存储器类型有几种,它们分别表示的存储器区域是什么?

解:片内数据存储器,片外程序存储器,片外数据存储器。

    片内数据存储器由00H~FFH;

    片外程序存储器由0000H~FFFFH;

    片外数据存储器由0000H~FFFFH; 

7.简述动态局部变量和静态局部变量的区别。

解:静态局部变量具有局部作用域,它只被初始化一次,自从第一次被初始化直到程序运行结束都一直存在,且静态局部变量只对定义自己的函数体始终可见。

  动态局部变量也只有局部作用域,它是自动对象(auto),它在程序运行期间不是一直存在,而是只在函数执行期间存在,函数的一次调用执行结束后,变量被撤销,其所占用的内存也被收回。

8. MSC—51单片机指令系统中有哪几种寻址方式?

解:1、立即寻址,2、直接寻址,3、寄存器寻址,4、寄存器间接寻址,5、变址寻址,6、相对寻址,7、位寻址。

五、计算题

1已知一单片机系统的外接晶体振荡器的振荡频率为12MHz,请计算该单片机系统的拍节P、状态S、机器周期所对应的时间是多少?指令周期中的单字节双周期指令的执行时间是多少? 

解:时钟周期=1/12MHZ=0.0833us;

    因为一个机器周期可分为12个时钟周期,一个状态周期可分为2个时钟周期,两个时钟周期可分为2个节拍。

    所以1个节拍P的时间=时钟周期=0.0833us,1个状态S的时间=2*时钟周期=0.167us;

1个机器周期=12*时钟周期=1us;

指令周期中得单字节指令的执行时间是一个机器周期=1us;1个双字节指令的执行时间是两个时钟周期=2us;

2、51单片机,当fosc=6MHz和fosc=12MHz时,最大定时各为多少?

解:当fosc=6MHz时;一个机器周期为2us;定时器的最大定时数为65536;

时间T=65536*2us=131072us=0.131072s;

    当fosc=12MHz时;一个机器周期为1us;定时器的最大定时数为65536;

时间T=65536*1us=65536us=0.065536s;

3、若fOSC=6MHZ,要求T1定时10ms,选择方式0,装入时间初值后T1计数器自启动。计算时间初值X=?并填入TMOD、TCON和TH1、TL1的值?

解:fOSC=6MHZ,一个机器周期为2us;方式0的最大定时是8192*2=16384us;

    10ms=(8192-X)*12/fosc;X=3192;

    TMOD=0x00;TCON=0x40;IE=0x88;

    TH1=0x0c;TL1=0x78;

   一、填空题 

1.相对寻址是以   PC   的当前值为基准,加上指令中给出的相对    偏移量   形成目标地址的方式。

2.ATS51单片机的1个机器周期含有  12  个晶振周期或   6  状态周期。

3.ATS51单片机进行扩展时,用    P0  口作为地址/数据总线,用  P2  口作为地址总线高8位。

4.假定累加器A的内容30H,执行指令:1000H:MOVC  A,@A+PC后,把

程序存储器1031H单元的内容送累加器A中

5. 指令格式是由 操作码     和 操作数 部分组成。

6. ATS51单片机的串行口控制寄存器中有2个中断标志位,它们是    TI    和   RI    

7. JNC  rel指令执行时,当CY位为    0    时程序发生跳转。

8. 单片机位寻址区的单元地址是从20H单元到2FH单元,若某位地址是10H,它所在单元的地址应该是   22H        。

9.外部中断0的中断入口地址为 0003H   ,定时/记数器T1的中断入口地址为  001BH   。

10.串行口工作方式2为 9位异步通信,若SMOD=0,f OSC = 6 MHZ ,则其相应波特率为   6×106/             b/s

11.堆栈应遵循 先进后出      规律,堆栈指针的符号为  SP   

12、程序计数器PC存放的是        下一条要执行指令的地址        ;

13、指令MOVX A, @DPTR的寻址方式是   寄存器间接寻址          :

14、MCS-51访问ROM、片内RAM、片外RAM的指令助记符分别为   MOVC      、                                MOV和    MOVX          。

15、机器字长为8位,则[—10]原 =    8AH         ,[-10]反 =     F5H      ,[-10]补 =    F6H           。

16、已经累加器A = 97H,则执行指令ADD     A, #7DH后,A =   14H           ,C =         1      ,OV =         0      ,AC =     1          。

二、单项选择题

1.ATS51单片机的(   d   )口的引脚,还具有外中断、串行通信等第二功能。

a)P0          b)P1        c)P2        d)P3

2.单片机应用程序一般存放在(  b   )   

  a)RAM      b)ROM    c)寄存器   d)CPU  

3.已知某数的BCD码为0111010101000010 则其表示的十进制数值为(   b )

a) 7542H     b) 7542     c) 75.42H    d) 75.42

4.下列指令中不影响标志位CY的指令有(  d   )。   

   a)ADD A,20H     b)CLR       c)RRC A     d)INC A

5.CPU主要的组成部部分为( a  )  

   a)运算器、控制器     b)加法器、寄存器 

c)运算器、寄存器     d)运算器、指令译码器 

6.ATS51 的CPU是(   c  )位的单片机   

   a) 16              b)4           

   c)8                d)准16 

7.当需要从ATS51单片机程序存储器取数据时,采用的指令为( b )。  

   a)MOV  A, @R1           b)MOVC  A,  @A + DPTR        

c)MOVX  A, @ R0        d)MOVX  A,  @ DPTR 

8.ATS51单片机中既可位寻址又可字节寻址的单元是(   a  )   

a)20H            b)30H            c)00H          d)70H  

9.下列哪条指令是正确的( d      )

a)  PUSH    R2               b)  ADD R0, A

c)  MOVX    A  @DPTR         d)  MOV @R0, A

11.要使累加器A的高4位置为0000,低4位不变,以下指令正确的是      B       。

(A)ANL A, #0F0H    (B)ANL A, #0FH        (C)ORL A, #0F0H    (D)ORL A, #0FH

12. 利用串行口工作方式1进行异步串行通信,当其波特率为4800bps,每秒最多能传送

      A       个字符。

(A)480            (B)960            (C)4800            (D)9600

13. C51中,要编写一个中断函数,则必须在函数名后加     B          修饰符。

(A)void            (B)interrupt        (C)using            (D)unsigned

14. 51系列单片机系统中需扩展32KByte的片外RAM,则需要     C    片62(8K×8bit)。

(A)1                (B)2                (C)4                (D)8

15. 若单片机当前正在执行高优先级的中断服务,则以下能响应的中断是     D        。

(A)高优先级中断    (B)同优先级中断    (C)低优先级中断    (D)以上都不能响应

16.  键盘的软件消除键抖动是通过     C        来实现的。

(A)加滤波器        (B)中断            (C)延时            (D)加RS触发器

三、写出实现下列各要求的指令或程序段

1、将80H单元中的内容与数据4FH相比较,相等返回,不相等将80H单元置FFH返回。

                 MOV  A,80H

                 CJNE  A,# 4FH,BD

                 SJMP L1

            BD:MOV  80H,#0FFH

            L1: RET

2、外部RAM单元2000H的内容传送到内部RAM单元70H; 

MOV DPTR,#2000H

MOVX A,@DPTR

MOV 70H, A 

3、将32H单元中内容的第7位取反后送给50H。

                MOV   A,32H

                CPL    ACC.7

                MOV   C,ACC.7

                MOV   50H,C

4、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?(5分)

MOV   A,50H              ;(A)=40H

MOV    R0,A              ;(R0)=40H

MOV   A,#00H             ;(A)=0

MOV  @R0,A              ;(40H)=0

MOV   A, #3BH             ;(A)=3BH

MOV   41H,A              ;(41H)=3BH

MOV   42H,41H            ;(42H)=3BH

(A)=  3BH ; (R0)=    40H;

 (40H)=  0;  (41H)=    3BH;(42H)=    3BH

5、将外部数据存储器3000H开始100个存储单元的内容存入3070开始的存储单

元(9分)

           MOV DPTR #3000H

MOV P2,#30H

MOV R1,#70H

           MOV R5,#100

L1: MOVX A, @DPTR

     MOVX@R1,A

INC R1

INC DPTR

DJNZ R5, L1

RET

四、读程序填空

1.          CLR   C

             MOV   A, 4DH

             SUBB   A,, 4EH

             MOV   30H, A

             MOV   A, 7FH

             SUBB   A, 2BH

             MOV   31H,  A

             SJMP  $

(1)该程序的功能是: 两个16位数的减法:(7F4DH)-(2B4EH),结果存入内部RAM的30H和31H单元,31H单元存差的高8位,30H单元存差的低8位 

(2)若(4DH)=06H,(4EH)=05H,(7FH)=0AH,(2BH)=01H

则执行上述程序后(30H)=  01   H。(31H)=  09   H。

    

2.    START:  MOV  R0 ,  #40H

                MOV  R7,  #04H

                MOV  A,  @R0

        LOOP:  INC  R0

                MOV 50H , @R0

                CJNE  A, 50H , NEXT

        NEXT:  JNC   BIE1

                MOV  A, 50H

         BIE1: DJNZ  R7, LOOP

                MOV  30H,  A

                RET  

(1) 该程序的功能是:    求出40H—44H中最大的无符号数,并将最大数存入30H中                          

                                        

  (2) 设(40H)=12H,  (41H)=22H , (42H)= 6EH, (43H)=5AH , (44H)= 8AH, 

填写程序执行后的结果,(30H)=    8A     H。

3.已知(30H)=49H,(31H)=2BH,(32H)=0A3H,执行以下程序:

           MOV  R7,# 4

     RR0: MOV  R6,# 3

           CLR   C

           MOV  R0,# 30H

RR1: MOV  A,@R0

           RRC   A

           MOV  @R0,A

           INC   R0

           DJNZ  R6,RR1

           DJNZ  R7,RR0

           RET

从该程序可看出这段程序的功能是: 将内RAM中30H~32H的内容  

 右移4位                    

执行后结果:(30H)=  04H   ,(31H)=  92H  ,(32H)= 0BAH  。

(3分)

4、已知(A)=58H,(30H)=7FH,(P1)=EAH,执行下列程序:

           MOV  SP,#40H

           PUSH  A

           PUSH  30H

           MOV  A,P1

           MOV  30H,A

           POP   30H

           POP   A

执行后结果:(SP)=  40H  ,(A)=   58H  ,(30H)=  7FH    ,(41H)=  58H  。

五、根据题意,按要求答题。

1.  AT98S51单片机P1口上接8只发光二极管(高电平亮,低电平灭),若晶振频率是12MHz,用定时/计数器T0以工作方式1工作,使8只发光二极管每1S单循环点亮。

(1)计算定时初值,写出过程

(2)根据相关注释,填写程序 

(3)

         

答:(1)定时初值:

         (216-X)×1μS = 50mS

X=216-50000

 =15536

(2)     MOV  TMOD,#01H     ;设T0工作方式

MOV  DPTR,#15536    ;置定时初值50mS

MOV  TH0,DPH

MOV  TL0,DPL

MOV  A,#01H         ;置A初值

SETB  TR0             ;允许定时

LOOP:MOV  R7,#20         ;设定时次数

       MOV  P1,A           ;从P1口输出

LOOP1: JNB   TF0,$          ;判断定时50mS到没

         CLR   TF0             ;定时时间到,TF0清0

         MOV   TH0,DPH      ;重新置定时初值50mS

         MOV   TL0,DPL

       DJNZ  R7,LOOP1      ;判断定时次数到没

       RL   A                 ;输出左移

       SJMP  LOOP            ;继续循环输出

       END

2、根据给定存储类型和数据类型,声明下列变量: 

(1)在片内RAM低128字节定义一个有符号整型变量val,初值为100;

(signed)  int  data  val = 100;

(2)在ROM定义一个3元素的无符号字节数组num,数组内容分别为:12H,34H,56;

unsigned  char  code  num[3] = {0x12, 0x34, 56};

(3)在片外RAM定义一个指向无符号字节类型的指针变量p;

unsigned  char  xdata  *p;

6、简述矩阵式8行2列键盘的工作过程,其中P1口连接8根行线,P3.0和P3.1连接2根列线。

判断是否有键按下:先给列线P3.0和P3.1送低电平,然后读行线P1的值,判断P1是否为0xff;若P1为0xff则表示没有键按下,则返回重新判断是否有键按下;若P1不为0xff则表示有键按下,则延时10ms去抖动,再重新读行线P1口,再次判断是否有键按下。

若确实有键按下,则判断哪一个键按下:先给第一根列线P3.0送低电平,而P3.1送高电平,然后读行线P1,判断P1是否为0xff;若是则表示按下的键在这第一列;否则给第二列P3.1送低电平,而P3.0送高电平,然后读行线P1,判断P1是否为0xff,若是则表示按下的键在这第二列;找到按键所在列后,再根据读到的行线值中0的位置从而判断按键所在行线。

确定按键后,执行按键所对应的服务程序;然后等待键释放;按键释放通过给所有的列线P3.0和P3.1送低电平,然后读行线P1的值来进行判断;按键释放后再次延时去抖动,然后返回重新判断是否有键按下。

7、简述51单片机串行双机通信的过程,写明发送和接收时软硬件分别执行的操作。

数据发送时,在TI=0时,CPU将待发送数据送入SBUF,启动发送;数据由TXD引脚按位送出,发送时钟由T1控制,最先送出起始位(0),然后依次是8位数据位(低位在前),最后是停止位(1);一帧数据发送完毕后,硬件自动将TI置1,向CPU请求中断;CPU接收到请求信号后,需将TI清0,然后才能启动下一次发送。

数据接收时,允许接收位REN必须置1,接收器开始工作;当接收到起始位(0),启动接收;在波特率的控制下,把接收到的数据依次移入移位寄存器;当接收完一帧数据,将移位寄存器中的数据送入SBUF,同时硬件自动将RI置1,向CPU请求中断。CPU接收到请求信号后,需将RI清0,然后才能正常接收下一帧数据。

文档

《单片机原理与应用》期末复习题1

一、填空题1、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为____2/12us_____,机器周期为_______2us________。2、MCS-51单片机共有5个中断源,由IE寄存器设定中断的开放和禁止;每个中断源有两个优先级,由IP寄存器设定。3、单片机的内部RAM区中,可以位寻址的地址范围是_________20H~2FH_________,特殊功能寄存器中,可位寻址的地址是_______80H~FFH__________。4、MSC-51单片机引脚信号中,信号名称带
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top