单片机习题内容答案.doc

上传人:一*** 文档编号:588907 上传时间:2018-11-06 格式:DOC 页数:35 大小:742KB
返回 下载 相关 举报
单片机习题内容答案.doc_第1页
第1页 / 共35页
单片机习题内容答案.doc_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《单片机习题内容答案.doc》由会员分享,可在线阅读,更多相关《单片机习题内容答案.doc(35页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、.单片机应用技术习题答案第一章 概述1. 什么是总线?总线主要有哪几部分组成?各部分的作用是什么?总线是连接计算机各部件之间的一组公共的信号线。一般情况下,可分为系统总线和外总线。系统总线应包括:地址总线(AB) 控制总线(CB) 数据总线( DB)地址总线(AB) : CPU 根据指令的功能需要访问某一存储器单元或外部设备时,其地址信息由地址总线输出,然后经地址译码单元处理。地址总线为 16 位时,可寻址范围为 216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的范围。在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。控制总线(CB):由 CPU 产生的控制信号是

2、通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。CPU 还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。数据总线(DB) : CPU 是通过数据总线与存储单元或外部设备交换数据信息的,故数据总线应为双向总线。在 CPU 进行读操作时,存储单元或外设的数据信息通过数据总线传送给CPU;在 CPU 进行写操作时, CPU 把数据通过数据总线传送给存储单元或外设2什么是接口电路? CPU 与接口电路连接一般应具有哪些信号线?外部设备与接口电路连接一般应具有哪些信号线?CPU 通过接口电路与外部输入、输出设备交换信息,一般情况下,外

3、部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。CPU 为了实现选取目标外部设备并与其交换信息,必须借助接口电路。一般情况下,接口电路通过地址总线、控制总线和数据总线与 CPU 连接;通过数据线(D) 、控制线(C)和状态线(S)与外部设备连接。3. 存储器的作用是什么?只读存储器和随机存储器有什么不同?存 储 器 具 有 记 忆 功 能 , 用 来 存 放 数 据 和 程 序 。 计 算 机 中 的 存 储 器 主 要 有 随 机 存 储 器( RAM) 和 只 读 存 储 器 ( ROM) 两 种 。 随 机 存 储 器 一 般 用 来 存 放 程 序 运 行

4、 过 程 中 的 中 间 数据 , 计 算 机 掉 电 时 数 据 不 再 保 存 。 只 读 存 储 器 一 般 用 来 存 放 程 序 , 计 算 机 掉 电 时 信 息 不 会丢 失 。4 什么是单片机?单片机与微机相比有何特点?单片机(Single-Chip-Microcomputer)又称单片微控制器,其基本结构是将微型计算机的基本功能部件:中央处理机(CPU) 、存储器、输入接口、输出接口、定时器/计数器、中断系统等全部集成在一个半导体芯片上,因此,单片机其体积小、功耗低、价格低廉,且具有逻辑判断、定时计数、程序控制等多种功能。单片机结构上的设计,在硬件、指令系统及 I/O 能力等

5、方面都有独到之处,具有较强而有效的控制功能。虽然单片机只是一个芯片,但无论从组成还是从其逻辑功能上来看,都具有微机系统的含义。另一方面,单片机毕竟是一个芯片,只有外加所需的输入、输出设备,才可以构成实用的单片机应用系统。5. 单片机主要应用于哪些领域?(1) 智能仪器。智能仪器是含有微处理器的测量仪器。单片机广泛应用于各种仪器仪表,.使仪器仪表智能化取得了令人瞩目的进展。(2) 工业控制。单片机广泛应用于各种工业控制系统中,如数控机床、温度控制、可编程顺序控制等。(3) 家用电器。目前各种家用电器普遍采用单片机取代传统的控制电路,如洗衣机、电冰箱、空调、彩电、微波炉、电风扇及高级电子玩具等。由

6、于配上了单片机,使其功能增强而身价倍增,深受用户的欢迎。(4) 机电一体化。机电一体化是机械工业发展的方向,机电一体化产品是指集机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品。单片机除以上各方面应用之外,还广泛应用于办公自动化领域(如复印机) 、汽车电路、通信系统(如手机) 、计算机外围设备等,成为计算机发展和应用的一个重要方向。第二章 硬件1. 举例说明 MCS-51 有哪些典型产品,它们有何区别?MCS-51 系列单片机可分为两大系列:51 子系列和 52 子系列。51 子系列单片机的典型产品有 8051、8751、8031、80C51、80C31 等。它们的结构基本相同

7、,其主要差别反映在片内存储器的配置上有所不同2. 8051 单片机内部包含哪些主要功能部件?各功能部件的主要作用是什么?8051 单片机内部由 CPU、4KB 的 ROM、128B 的 RAM、4 个 8 位的 I/O 并行端口、一个串行口、两个 16 位定时/计数器及中断系统等组成。3. 程序状态字寄存器 PSW 各位的定义是什么?PSW 是一个 8 位寄存器,用于寄存当前指令执行后的某些状态,即反映指令执行结果的一些特征信息。Cy(PSW.7 ):即 PSW 的 D7 位,进位/ 借位标志。AC(PSW.6 ):即 PSW 的 D6 位,辅助进位标志。F0(PSW.5)及 F1(PSE.1

8、):即 PSW 的 D5 位、D1 位,用户标志位。RS1 及 RS0(PSW.4 及 PSW.3):即 PSW 的 D4 位、D3 位,寄存器组选择控制位。OV(PSW.2):即 PSW 的 D2 位,溢出标志。4. MCS-51 存储器结构的主要特点是什么?程序存储器和数据存储器各有何不同?MCS-51 单片机的存储器结构与一般微机存储器的配置方法不同,一般微机把程序和数据共存同一存储空间,各存储单元对应惟一的地址。而 MCS-51 的存储器把程序和数据的存储空间严格区分开。数据存储器用于存放程序运算的中间结果、状态标志位等。程序存储器用于存放已编制好的程序及程序中用到的常数。5. MCS

9、-51 单片机内部 RAM 可分为几个区?各区的主要作用是什么?内部数据存储器分为高、低 128B 两大部分。低 128B 为 RAM 区,地址空间为 00H7FH,可分为:寄存器区、位寻址区、堆栈及数据存储区。存放程序运算的中间结果、状态标志位等。高 128B 为特殊功能寄存器( SFR)区,地址空间为 80HFFH,其中仅有 21 个字节单元是有定义的。6. MCS-51 单 片 机 的 P0 P3 四 个 I/O 端 口 在 结 构 上 有 何 异 同 ? 使 用 时 应 注 意 哪 些 事 项 ?.P0 口是一个 8 位漏极开路型双向 I/O 端口。P1 口是一个内部带上拉电阻的 8

10、位准双向 I/O 端口。P2 口也是一个内部带上拉电阻的 8 位准双向 I/O 端口P3 口是一个内部带上拉电阻的 8 位多功能双向 I/O 端口。在使用时应注意以下方面: P0P3 都是准双向 I/O 口,即 CPU 在读取数据时,必须先向相应端口的锁存器写入“1” 。各端口名称与锁存器名称在编程时相同,均可用 P0P3 表示。当系统复位时,P0P3 端口锁存器全为“1” ,故可直接对其进行读取数据。 P0 口 每 一 输 出 位 可 驱 动 8 个 LS 型 TTL 负 载 , P0 口 可 作 通 用 输 入 、 输 出 端 口 使 用 , 此 时 ,若 要 驱 动 NMOS 或 其 他

11、 拉 电 流 负 载 时 , 需 外 接 上 拉 电 阻 , 才 能 使 该 位 高 电 平 输 出 有 效 。在单片机进行外部存储器扩展时,P0 口必须作为地址/数据复用线使用,此时,不必外接上拉电阻,P0 也不能作通用 I/O 口使用。 P1、P2、P3 口输出均接有内部上拉电阻,输入端无需外接上拉电阻,每一位输出可以驱动 4 个 LS 型 TTL 电路。 P0、P2 口除可以作通用 I/O 端口、以实现与外部进行数据交换外,更主要的是,当CPU 访问外部存储器时,CPU 将自动地把外部存储器的地址线信号(16 位)送 P0、P2 口,作为地址总线(P0 口输出低 8 位地址,P2 口输出

12、高 8 位地址) ,向外部存储器输出 16 位存储单元地址。在控制信号作用下,该地址低 8 位被锁存后,P0 口自动切换为数据总线,这时经 P0 口可向外部存储器进行读、写数据操作。此时,P2 口不再作通用 I/O 端口,P0 口为地址/ 数据复用口。7. 在什么情况下,P3 口作为第二功能使用?P3 口的第二功能是作为控制端口使用的。由于单片机没有专设的控制信号引脚,单片机在进行外部存储器和 I/O 端口扩展时所需要的控制信号必须由 P3 口提供,P3 口第二功能相当于 PC 机中 CPU 的控制线引脚。8. 为什么说单片机具有较强的位处理能力?对于许多控制系统,开关量控制是控制系统的主要对

13、象之一。作为传统的 CPU,对于简单的个别开关量进行控制却显得不那么方便,而让 MCS-51 值得骄傲的正是它有效地解决了单一位的控制。MCS-51 片内 CPU 还是一个性能优异的位处理器,也就是说 MCS-51 实际上又是一个完整而独立的 1 位单片机(也称布尔处理机) 。该布尔处理机除了有自己的 CPU、位寄存器、位累加器(即进位标志 Cy) 、I/O 口和位寻址空间外,还有专供位操作的指令系统,可以直接寻址对位存储单元和 SFR 的某一位进行操作。MCS-51 单片机对于位操作(布尔处理)有置位、复位、取反、测试转移、传送、逻辑与和逻辑或运算等功能。所以,单片机具有较强的位处理能力。9

14、. 指出 8051 可进行位寻址的存储空间。007FH(即 20H.02FH.7)及 SFR 地址能被 8 整除的寄存器中的各位。10. 位地址 90H 和字节地址 90H 及 P1.0 有何异同?如何区别?位地址 90H 表示 P1.0 位字节地址 90H 表示 P1 口.11. 在访问外部 ROM 或 RAM 时,P0 和 P2 口各用来传送什么信号?P0 口为什么要采用片外地址锁存器?P0 口传送地址低八位后可复用数据线,所以,P0 口要采用片外地址锁存器。P2 口传送地址高八位。12. 什么是时钟周期?什么是机器周期?什么是指令周期?当振荡频率为 12MHz 时,一个机器周期为多少微秒

15、?时钟周期:也称振荡周期,即振荡器的振荡频率 fosc 的倒数,是时序中最小的时间单位。机器周期:执行一条指令的过程可分为若干个阶段,每一阶段完成一规定的操作,完成一个规定操作所需要的时间称为一个机器周期,一个机器周期包含 12 个时钟周期。当振荡频率为 12MHz 时,一个机器周期为 12/(121000000)秒=1 微秒指令周期:定义为执行一条指令所用的时间。13. MCS-51 单片机有几种复位方法?复位后,CPU 从程序存储器的哪一个单元开始执行程序?MCS-51 的复位电路包括上电复位电路和按键(外部)复位电路0000H14. 8051 系统掉电时如何保存内部 RAM 中的数据?单

16、片机在运行过程中,如果发生掉电,片内 RAM 和 SFR 中的信息将会丢失。为防止信息丢失,可以把一组备用电源加到 RST/VPD 端,当 VCC 上的电压低于 VPD 上的电压时,备用电源通过 VPD 端,以低功耗保持内部 RAM 和 SFR 中的数据。15. 8051 单片机引脚 ALE 的作用是什么?当 8051 不外接 RAM 和 ROM 时,ALE 上输出的脉冲频率是多少?其作用是什么?地址锁存使能输出 ALE:当单片机访问外部存储器时,外部存储器的 16 位地址信号由 P0口输出低 8 位,P2 口输出高 8 位,ALE 可用作低 8 位地址锁存控制信号;当不用作外部存储器地址锁存

17、控制信号时,该引脚仍以时钟振荡频率的 1/6 固定地输出正脉冲,可以驱动 8个 LS 型 TTL 负载。第三章 单片机指令寻址方式就是处理器根据指令中给出的地址信息来寻找物理地址的方式。1MCS-51 有哪几种寻址方式?举例说明它们是怎样寻址的?MCS-51 指令系统的寻址方式有以下 7 种:立即寻址方式:操作数直接出现在指令中。直接寻址方式中:操作数的单元地址直接出现在指令中。寄存器寻址方式中:寄存器中的内容就是操作数。寄存器间接寻址方式中,指定寄存器中的内容是操作数的地址,该地址对应存储单元的内容才是操作数。变址寻址方式是以程序指针 PC 或数据指针 DPTR 为基址寄存器,以累加器 A

18、作为变址寄存器,两者内容相加(即基地址+偏移量)形成 16 位的操作数地址,.相对寻址是以程序计数器 PC 的当前值作为基地址,与指令中的第二字节给出的相对偏移量rel 进行相加,所得和为程序的转移地址。位地址:内部 RAM 地址空间的可进行位寻址的 128 位和 SFR 地址空间的可位寻址的11 个 8 位寄存器的 88 位。位寻址给出的是直接地址。2位寻址和字节寻址如何区分?在使用时有何不同?由寻址方式可以看出,不同的寻址方式所寻址的存储空间是不同的。正确地使用寻址方式不仅取决于寻址方式的形式,而且取决于寻址方式所对应的存储空间。字节寻址必须是对 8 位存储单元,位寻址的存储空间只能是片内

19、 RAM 的 20H2FH 字节地址中的所有位(位地址为 00H7FH)和部分 SFR 的位,决不能是该范围之外的任何单元的任何位。3要访问专用寄存器和片外数据寄存器,应采用什么寻址方式?举例说明。访问专用寄存器:可采用直接寻址或寄存器寻址。访问片外数据寄存器:寄存器间接寻址4什么是堆栈?其主要作用是什么?堆栈是后进先出的数据存储区一般用于中断处理过程中,若需要保护现场数据(如内部 RAM 单元的内容) ,可使用入栈指令,将数据压入堆栈,中断处理过程执行完后,再使用出栈指令恢复现场数据。5编程将内部 RAM 的 20H 单元的内容传送给外部 RAM 的 2000H 单元。MOV A,20HMO

20、V DPTR,#2000HMOVX DPTR,A6编程将内部数据存储器 20H30H 单元内容清零。MOV R0,#20HMOV A,#0MOV R3,#17LOP :MOV R0,AINC R0DJNZ R3,LOP7编程查找内部 RAM 的 32H41H 单元中是否有 0AAH 这个数据,若有这一数据,则将50H 单元置为 0FFH,否则清 50H 单元为 0。MOV R3, #10HMOV A,#0AAH MOV R0,#31HLOP :INC R0SUBB A,R0 JZ LOP1DJNZ R3,LOP.MOV 50H,#0HAJMP LOP3LOP1:MOV 50H,#0FFHLOP

21、3: AJMP 1OP3 8查找 20H4FH 单元中出现 00H 的次数,并将查找结果存入 50H 单元。MOV R3,#30HMOV R0,#20HMOV A,#0LOP: MOV A,R0JZ LOP1LOP3: INC R0DJNZ R3,LOPAJMP LOP2LOP1: INC 50HAJMP LOP3 LOP2:AJMP LOP29已知 A=83H,R0=17H,(17H)=34H,写出下列程序段执行完后的 A 中的内容。ANL A, #17HORL 17H, AXRL A, R0CPL A(A)=11001011B=0CBH10已知单片机的 fosc=12MHz,分别设计延时

22、0.1s、1s 、1min 的子程序。设晶振频率为 12MHz,一个机器周期为 1s,延时 1ms 的子程序: 执行时间(机器周期)DELAY: MOV R7, #0FFH 1LOOP: NOP 1NOP 1DJNZ R7, LOOP 2RET 2该程序段的总的执行时间为:(1+4255+2)s=1023s1ms延时时间为 100ms 的子程序:DELAY: MOV R5,#64H 对延时 1ms 的子程序循环 100 次。LOP1: MOV R7, #0FFH LOOP: NOP .NOP DJNZ R7, LOOPDJNZ R5,LOP1 RET 延时时间为 1s 的子程序:DELAY1:

23、 MOV R3, #0AH 对延时 100ms 的子程序循环 10 次DELAY: MOV R5,#64H 。LOP1: MOV R7, #0FFH LOOP: NOP NOP DJNZ R7, LOOPDJNZ R5,LOP1 DJNZ R3, DELAYRET延时时间为 60s 的子程序: 对延时 1s 的子程序循环 60 次11MCS-51 汇编语言中有哪些常用的伪指令?各起什么作用?BIT(地址符号命令)END(结束汇编)EQU(等值)DB(定义字节)DW(定义字)DS(定义存储单元)ORG(汇编起始地址)12比较下列各题中的两条指令有什么异同? MOV A, R1; MOV 0E0H

24、, R1 指令功能相同,寻址方式表示不同 MOV A, P0; MOV A, 80H 指令功能相同,寻址方式表示不同 LOOP:SJMP LOOP; SJMP $ 指令功能相同13下列程序段汇编后,从 3000H 开始各有关存储单元的内容是什么?ORG 3000HTAB1: EQU 1234HTAB2: EQU 5678HDB 65,13,“abcABC“DW TAB1,TAB2,9ABCH3000H: 653001H: 133002H: a.3003H: b3004H: c3005H: A3006H:B3007H: C3008H: 34H3009H: 12H300AH: 78H300BH:

25、56H300CH: 0BCH300DH: 9AH14为了提高汇编语言程序的效率,在编写时应注意哪些问题?(1) 把要解决的问题化成一个个具有一定独立性的功能模块,各模块尽量采用子程序完成其功能。(2) 力求少用无条件转移指令,尽量采用循环结构。(3) 对主要的程序段要下功夫精心设计,这样会收到事半功倍的效果。(4) 能用 8 位数据解决问题的就不要使用 16 位数据。(5) 累加器是信息传递的枢纽,在调用子程序时应通过累加器传送子程序的参数,通过累加器向主程序传送返回参数。所以,在子程序中一般不把累加器推入堆栈。若需保护累加器的内容时,应先把累加器的内容存入其他寄存器单元,然后再调用子程序。(

26、6)为了保证程序运行的安全可靠,应考虑使用软件抗干扰技术,如数字滤波技术、指令冗余技术、软件陷井技术,用汇编语言程序实现这些技术,不需要增加硬件成本,可靠性高,稳定性好,方便灵活。15试编写 8 字节外部数据存储器到内部数据存储器的数据块传送程序,外部数据存储器地址范围为 40H47H,内部数据存储器地址范围为 30H37H。MOV R3,#8MOV R0,#40HMOV R1,#30HLOP1:MOVX A,R0MOV R1,AINC R0INC R1 DJNZ R3,LOP116试编写 8 字节外部程序存储器到内部数据 RAM 的传送程序,外部程序存储器地址为2040H2047H,内部 R

27、AM 地址为 30H37H。参看 15 题答案(提示:外部程序存储器地址为 16 位地址:2040H2047H ,间接寻址采用DPTR).17试编程使内部 RAM 的 20H4FH 单元的数据块按降序排列。参看 23 题答案(提示:本题对 20H4FH 单元(48 个)数据降序排列) 。18内 部 RAM 的 20H 单 元 开 始 有 一 个 数 据 块 , 以 0DH 为 结 束 标 志 , 试 统 计 该 数 据 块 长度 , 将 该 数 据 块 传 送 到 外 部 数 据 存 储 器 7E01H 开 始 的 单 元 , 并 将 长 度 存 入 7E00H 单 元 。MOV R0, #2

28、0HMOV DPTR, #7E01HLOP: MOV A, R0MOV 60H,ASUBB A, #0DHJZ LOP1MOV A,60HMOVX DPTR, AINC R3INC R0INC DPTRAJMP LOPLOP1: MOV DPTR, #7E00HMOV A,R3MOVX DPTR, AEND19试编写一个用查表法查 09 字形 7 段码(假设表的首地址为 TABLE)的子程序,调用子程序前,待查表的数据存放在累加器 A 中,子程序返回后,查表的结果也存放在累加器A 中。SQR1: MOV DPTR,#TABLEMOVC A, A+DPTRRETTABLE: DB 0C0H,0F

29、9H,0A4H,0B0H,99H ; 09 的字形显示段码(LED 共阳极。DB 92H,82H,F8H,80H,90H 20内部 RAM 的 DATA 开始的区域中存放着 10 个单字节十进制数,求其累加和,并将结果存入 SUM 和 SUM+1 单元。MOV R0,#DATAMOV R3,#0AHMOV A,#0LOP: ADD A,R0MOV R4,AADDC A, #0MOV R5,A.INC R0DJNZ R3, LOPMOV SUM,R4MOV SUM+1,R5END21内部 RAM 的 DATA1 和 DATA2 单元开始存放着两个等长的数据块,数据块的长度在LEN 单元中。请编程

30、检查这两个数据块是否相等,若相等,将 0FFH 写入 RESULT 单元,否则将 0 写入 RESULT 单元。MOV R0,#DATA1MOV R3, LENLOP: MOV A, R0CJNZ A,DATA2, LOP1INC R0INC DATA2DJNZ R3,LOPMOV A,#0FFHMOV RESULT,AAJMP LOP2LOP1:MOV A,#0MOV RESULT, ALOP2: AJMP LOP2END22有一输入设备,其端口地址为 20H,要求在 1 秒钟时间内连续采样 10 次读取该端口数据,求其算术平均值,结果存放在内部 RAM 区 20H 单元。 MOV R0,#20HMOV R2,#0MOV A,#0MOV R4,#0LOP : MOV R3,#0AHIN : ACALL DELAYMOVX A, R0MOV R2 , AMOV A, R4ADD A, R2MOV R4, ADJNZ R3, INMOV B,#0AHDIV ABMOV 20H,A

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com