单片机原理及应用

上传人:豆浆 文档编号:3907189 上传时间:2017-08-13 格式:DOC 页数:25 大小:295.27KB
返回 下载 相关 举报
单片机原理及应用_第1页
第1页 / 共25页
单片机原理及应用_第2页
第2页 / 共25页
单片机原理及应用_第3页
第3页 / 共25页
单片机原理及应用_第4页
第4页 / 共25页
单片机原理及应用_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《单片机原理及应用》由会员分享,可在线阅读,更多相关《单片机原理及应用(25页珍藏版)》请在金锄头文库上搜索。

1、第 2 章 MCS-51 单片机结构及原理习题1 MSC51 单片机内部由哪些功能部件组成,各有什么功能?答:以 80C51 单片机为例,其内部功能部件有:控制器:是对取自程序存储器中的指令进行译码,在规定的时刻发出各种操作所需的控制信号,完成指令所规定的功能;运算器:根据控制器发来的信号,执行算术逻辑运算操作;存储器:包括程序存储和数据存储器;定时器计数器:2 个 16 位定时器/计数器,可对机器周期计数,也可对外部输入脉冲计数;中断系统:可响应三个内部中断源和两个外部中断源的中断请求;输入输出接口:4 个 8 位并行口和一个全双工串行口;2MSC51 单片机外部引脚的名称是什么?各有什么功

2、能?答:(1) 电源及晶振引脚VCC(40 脚):+5V 电源引脚VSS(20 脚): 接地引脚XTAL1(19 脚);外接晶振引脚(内置放大器输入端)XTAL2(18 脚):外接晶振引脚(内置放大器输出端)(2) 控制引脚RST/VPD(9)为复位/ 备用电源引脚 ALE/PROG(30)为地址锁存使能输出/ 编程脉冲输入 PSEN(29):输出访问片外程序存储器读选通信号 EA/ VPP (31):外部 ROM 允许访问/ 编程电源输入 (3) 并行 I/O 口引脚P0.0P0.7(3932 脚)P0 口;P1.0P1.7(18 脚)P1 口;P2.0P2.7(2128 脚)P2 口;P3

3、.0P3.7(1017 脚)P3 口。351 系列单片机的封装有哪些类型?请说明每一种封装引脚之间的距离。答:51 系列单片机的封装有:40 引脚双列直插封装(DIPdual in-line package) ,引脚之间的距离是 100mil(2.54mm);44 引脚方形扁平封装(QFP quad flat package)方式,引脚之间的距离是 2.54mm;44 引脚带 引 线 的 塑 料 芯 片 载 体 PLCC(Plastic Leaded Chip Carrier)。4什么是复位?单片机复位电路有哪几种,工作原理分别是什么?答:复位使单片机恢复原始默认状态的操作。单片机复位电路有:

4、上电复位电路,由电阻和电容构成,通过上电时,电容相当于短路而使复位引脚在晶振有效的情况下保持 2 个机器周期的高电平;按钮开关复位电路,由两个电阻的分压构成,通过手工按下按钮,使复位引脚在晶振有效的情况下保持 2 个机器周期的高电平。5通常的微机系统存储器结构有哪几种?MCS-51 单片机存储器属于哪一类?CS-51 可寻址多大空间?答:通常的微机系统存储器结构有两种结构,即哈佛结构和冯诺依曼结构(也叫普林斯顿结构),MCS-51 单片机存储器属于,MCS-51 可寻址空间是两个 64KB,即 64KB 的程序存储空间和 64KB 的数据存储空间。6片内 RAM 中低 128 个单元划分为哪三

5、个主要部分?各部分的主要功能是什么?答:片内 RAM 中低 128 个单元划分为三个部分:工作寄存器区(00H-1FH) ,四组,每组 8 个,可作用工作寄存器切换使用;可位寻址区(20H-2FH) ,16B,位地址为 00H-7FH,用作为按位寻址的空间;用户 RAM 区(30H-7FH) ,80B,用作普通 RAM 单元或堆栈。7程序状态字寄存器 PSW 各位的定义是什么?答:程序状态字寄存器 PSW 各位的定义如下:CYACF0RS1RS0OVF1PCY AC F0 RS1 RS0 OV F1 PPSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.

6、0PSW.7:进/借位标志 CY,加法有进位时置 1,减法有借位时置 1;PSW.6:辅助进位标志 AC,加法运算低四位向高上四位有进位时置 1;PSW.5、PSW.1:用户标志位 F0 和用户标志位 F1,保存用户的位数据;PSW.4、PSW.3:工作寄存器选择控制位 RS1 和 RS0,00 至 11 分别选择四组工作之一作为当前工作寄存器PSW.2 :溢出标志位 OV,有符号数加、减运算结果有溢出或乘除上结果异常(乘法运算结果大于 255 即乘积在 BA 中,或除法运算除数为 0)时置 1PSW.0:奇偶标志位 P,累加器 A 中 1 的个数为奇数时置 1。8什么是时钟周期?什么是机器周

7、期?什么是指令周期?当振荡频率为 12MHz时,一个机器周期为多少微秒?答:时钟周期又叫振荡周期或拍,用 P 表示,是 MCS-51 单片机中最小的时间单位,在一个时钟周期内,CPU 完成一个最基本的动作。机器周期:由 12 个时钟周期构成,完成一个基本操作指令周期:是执行一条指令所需的时间,根据指令的复杂性,可由 14 个机器周期构成。当振荡频率为 12MHz 时,一个机器周期为 1 微秒。9P0、P1、P2 和 P3 口的结构和功能分别是什么?答:P0 口的每一位由 1 个锁存器 、2 个三态缓冲器 、1 个输出控制电路(非门 X、与门、电子开关 MUX、输出驱动电路构成,其功能既可以作为

8、通用 I/O口实现输入/输出功能,也可作为单片机地址线的低 8 位和数据线实现外部扩展功能。在用作输入输出口时,需外接上拉电阻。P1 口的每一位由 1 个锁存器 、1 个场效应管驱动器 V 和 2 个三态门缓冲器构成,其作用是用作输入输出口P2 口的每一位由 1 个锁存器、2 个三态缓冲器、1 个输出控制单元、1 个输出驱动单元构成,其功能是用作输入输出口,或地址总线的高 8 位。P3 口的每一位由 1 个锁存器、2 个三态缓冲器、1 个第二功能控制单元 、1 个输出驱动单元构成,其作用是用作输入输出口或第二功能。1080C51 单片机引脚 ALE 的作用是什么?当 80C51 不外接存储器时

9、,ALE 上的输出的脉冲频率是多少?答:80C51 单片机引脚 ALE 的作用是对外部存储寻址时锁存 P0 口输出的低 8 位地址,当 80C51 不外接存储器时,ALE 上的输出的脉冲频率是 fosc/6。第 3 章 单片机的汇编语言与程序设计习题1MCS-51 单片机有哪几种寻址方式?适用于什么地址空间?答:MCS-51 单片机有 7 种寻址方式:直接寻址、寄存器寻址、寄存器间接寻址、立即寻址、变址寻址、位寻址、相对寻址。直接寻址方式:操作数的地址由指令直接给出,适用于片内 RAM 的所有地址空间;如 MOV A,68HMOV A,PSW寄存器寻址方式:指令给出的是寄存器的编码,操作数在编

10、码指定的寄存器中,适用于片内 00H 至 1FH 的 32 个字节,用 R0,R7 表示,通过 PSW 的RS1 和 RS0 选择组号确定对应 32 个字节中的其中 8 个,还有累加器 A,以及乘除法指令中的 A 和 B 寄存器,位寻址方式中的布尔累加器 C;MOV A,R1MUL ABINC DPTR寄存器间接寻址方式:指令给出的是寄存器的编码,操作数地址在编码指定的寄存器中,适用于片内 RAM 的全部空间,其中 52 系列中的 80H 至 FFH 只能用寄存器间接寻址;如 MOV A,R0MOV A,R1MOVX A,DPTR立即寻址方式:操作数本身在指令中直接,给出适用于用 8 位立即数

11、对片内 RAM 所有地址单元赋值,也可用 16 位立即数对 DPTR 赋值; 如MOV A,#0E2HMOV DPTR,#2000H变址寻址方式:以 DPTR 或 PC 作为基地址寄存器,以累加器 A 作为变址寄存器,将基址寄存器与变址寄存器的内容相加形成操作数的实际地址的一种寻址方式,变址寻址方式适用于程序存储器 ROM,仅有三条指令如下:MOVC A,A+DPTRMOVC A,A+PCJMP A+DPTR位寻址方式:指令中直接给出操作数所在单元的位地址,适用于片内 RAM中地址 20H 至 2FH 中的 16 个字节中的 128 个位地址空间和 80H 至 FFH 中地址中可以被 8 整除

12、的所有 SFR 中的每个位地址空间;如MOV C,7FHMOV F0,CMOV C,ACC.7相对寻址方式:为相对转移指令而设,指令中直接给出转移的相对偏移量,其转移目标在当前指令-128 至127 字节范围内的地址空间。如SJMP STARTHERE: SJMP HERE ;等效于: SJMP $2MCS-51 单片机的 PSW 程序状态字中无 ZERO(零)标志位,怎样判断某内部数据单元的内容是否为零?答:MCS-51 单片机的 PSW 程序状态字中无 ZERO(零)标志位,判断某内部数据单元的内容是否为零是能通过取数到 A 累加器,再判断 A 中的每一位是否为零来确定其值是否为零。3编程

13、将内部 RAM 的 20H-30H 单元内容清零。解:设一个片内 RAM 指针 R0,先指向首地址 20H,通过累加器 A 清零,然后采用间接寻址方式依次将 A 中的零值传送到指针所指的片内 RAM 单元,每传送一个字节,地址指针加 1,直到达到地址为 30H 或达到计数器规定的 17 个字节为止。程序 1:MOV R0,#20H ;设地址指针初值CLR A ;累加器清 0CONT: MOV R0,A ;置 0 指针所指单元INC R0 ;地址指针加 1CJNE R0,#31H,CONT ;指针未超过终点则继续SJMP $ ;暂停程序 2:MOV R0,#20H ;设地址指针初值CLR A ;

14、累加器清 0MOV R7,#17 ;计数器赋初值,从 20H 到 30H 共 17 个字节CONT: MOV R0,A ;置 0 指针所指单元INC R0 ;地址指针加 1DJNZ R7, CONT ;计数器减 1,非 0,则继续SJMP $ ;暂停4编程查找内部 RAM 的 32H41H 单元中是否有 0AAH 这个数据,若有这一数据,则将 50H 单元置为 0FFH,否则将 50H 单元清零。解:设一个片内 RAM 指针 R0,先指向首地址 32H,比较R0 与#0AAH,若相等,则退出循环,给 50H 单元赋 0FFH,若不相等,则 R0 加 1 为继续比较下一个字节做准备,直到达到地址

15、为 41H 或达到计数器规定的 16 个字节为止还没找到,则给 50H 单元赋 00H程序 1:MOV R0,#32H ;设地址指针初值CONT: CJNE R0,#0AAH,NEXT;比较查找值与指针所指单元的值,不相等转移MOV A,#0FFH ;相等,则准备好要赋的标志值 0FFHSJMP DOWN ;转存到保存结果处NEXT: INC R0 ;修改地址指针CJNE R0,#42H,CONT ;若指针未越过终点,则继续MOV A,#00H ;查找失败,则将 00H 存入结果标志单元DOWN: MOV 50H,A ;将比较结果标志存入 50H 单元SJMP $ ;暂停END程序 2:MOV

16、 R7,#16 ;计数器赋初值,从 20H 到 30H 共 16 个字节MOV R0,#32H ;设地址指针初值CONT: CJNE R0,#0AAH,NEXT ;比较查找值与指针所指单元的值,不相等转移MOV A,#0FFH ;相等,则准备好要赋的标志值 0FFHSJMP DOWN ;转存到保存结果处NEXT: INC R0 ;修改地址指针DJNZ R7,CONT ;计数器减 1,非 0,则继续MOV A,#00H ;查找失败,则将 00H 存入结果标志单元DOWN: MOV 50H,A ;将比较结果标志存入 50H 单元SJMP $ ;暂停END5查找 20H4FH 单元中出现 00H 的次数,并将查找结果存入 50H 单元。解:从 20H 到 4FH 共 48 个字节MOV R7,#48 ;字节计数器赋初值MOV R0,#20H ;设地址指针初值CONT: CJNE R0,#00H,NEXT ;比较查找值与指针所指单

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号