2020年 05月 03日 星期日
您的位置: 威廉希尔主页 > 单片机技术 >

单片机原理及应用复习提纲

来源:未知     作者:威廉希尔     发布时间:2020-05-03 11:02         

  单片机原理及应用复习提纲_信息与通信_工程科技_专业资料。《单片机原理及应用》复习提纲 单片机原理及应用》 一、内容提要 第一章 基础知识 1. 有符号数、无符号数、字符在计算机内部的存储方式。 有符号数、无符号数、字符在计算机内部的存储方式。 2. 数制间

  《单片机原理及应用》复习提纲 单片机原理及应用》 一、内容提要 第一章 基础知识 1. 有符号数、无符号数、字符在计算机内部的存储方式。 有符号数、无符号数、字符在计算机内部的存储方式。 2. 数制间转换(16 进制、10 进制、2 进制)及表示方式。 数制间转换( 进制、 进制、 进制)及表示方式。 3. 有符号数的原码、反码及补码。 有符号数的原码、反码及补码。 4. 单片机的概念及特点(理解,不需要死记硬背书本上的词句) 5.8 位单片机的种类、型号、性能及应用场合(了解) 第二章 基本原理 1. 51/52 系列单片机的片内资源; 2. 51 内部结构 3. CPU 部件理解:程序状态字 PSW 的作用、内容 4. 存储器结构 内部 RAM(地址范围:00H~FFH) 四个区域(工作寄存器区、位寻址区、通用区、SFR 区[SFR 区包括哪些系统寄存器]) 的特点及用途、访问方式; 注意:堆栈区存在于 RAM 内不是一个固定的区域,其栈顶地址由 SP 的内容指定,上电复位后指向 07H(即第 0 组工作寄 存器 R7 所在地址) ;程序内可将其指向 RAM 内任意地址。 AVR 的堆栈是向下增长的(内容增加一个单元,地址减 1) ,而 MCS51 的堆栈是向上增长的(内容增加,地址加 1) 。 内部 ROM(地址范围:31 系列:无;51 系列:0000H~0FFFH;52 系列:0000H~1FFFH) 5.程序计数器:PC 的作用,PC 是于内部 RAM 的一个 16 位存储单元。 数器: .程序计数器 6. 并行口的内部结构图 2.6~2.9, 注意该电内部总线与并口内部寄存单元连接(位于内部 RAM 的 SFR 区) ,外部与引脚 相连。 7.外部引脚:ALE, PSEN, RST, EA 等引脚的功能、作用 重点) 第三章 汇编程序设计 (重点) 1. 熟悉全部指令、功能及对相关寄存器的影响,汇编语言编程将作为主要考核编程语言。 2. 寻址方式——寻址方式即运算时,从什么地方、怎样找到数据所在内存单元(比如通过寄存器名称找到,称为寄存器寻 址;直接立即数赋值,称为立即寻址……) 3. 常用伪指令:什么叫做汇编伪指令?伪指令与 51 指令集有什么区别? 注意:C 语言内没有伪指令这种说法,因为 C 是编译器自动为用户声明的变量分配内存空间的;而汇编语言编程时,我们 必须指定程序、数据所位于内存中的,因此需要伪指令辅助编程。 可以这样看;伪指令是仅仅供汇编器将汇编代码翻译成二进制代码时确定二进制代码存放而使用的语句, 而这些代码不 被传送至单片机 ROM,也不被单片机所执行 4. 程序设计 三种基本结构的编程:顺序、循环、分支。灵活使用三种结构实现实际所需的目标。 第 4 章、第 5 章 公平起见,与 3 班一样,此章不做考核要求,但编程题使用 C 语言作答,只要程序正确,同样给分。 第 6 章 内部资源 1. 并行口的输入输出 2. 定时/计数器的编程:相关控制寄存器、初始化,定时/计数初值的计算。 3. 中断系统:理解中断系统的工作过程;理解中断源、中断向量、中断优先级的含义;掌握中断服务子程序的基本编写方 法。 4. 串行口:相关控制寄存器内容、作用;串行口的几种工作方式;串行波特率的计算。 5. 综合应用:例如定时中断程序,需要初始化定时器及中断寄存器等。 第 7 章 常用外部接口 常用外部接 1. 最小系统的概念:能让单片机正常工作的最小规模的电 2. 外部存储器的扩展 外部存储器的扩展 存储器的扩展:尽管存储器的扩展在实际应用中并不常用到,但是理解存储器的扩展对于理解单片机的外部三总线 结构相当有好处。 存储器扩展(也是其他芯片扩展)的两种常见方案:线选法、译码器法(各自优缺点) 控制总线:用于选通外部芯片或为外部芯片提供时钟信号、控制信号 数据总线 位,用于在单片机和外部芯片间传递并行数据 地址总线 位,用于选中需要访问的存储器单元;在其他芯片的扩展中,常常将地址总线上的高位与芯片选通引脚相 连,这样,我们可以给外部芯片拟定硬件地址,例如 P2.7 与外部芯片的 CE 端相连,则只要最高地址位为 0 就可以选通该 芯片。 3. 8255A 的接口设计 第 8 章 A/D,D/A 转换器接口(必考) , 转换器接口(必考) 本章内容在自动化控制领域使用很广泛,因此还是纳入考核范围,我们一共了两个型号的芯片: 1. ADC0809 的功能、性能参数、引脚、与单片机间的连接及编程等。 2. DAC0832 的功能、性能参数、引脚、与单片机间的连接及编程等。如何确定 DAC0832 的硬件地址?如何使用 DAC0832 编制任意波形输出程序? 第 9 章~第 12 章 随着今后大家不断的与单片机打交道,慢慢会意识到这些章节的内容其实很重要,本次考试不做要求。这些内容大家在未 来与单片机相关的课程设计、毕业设计中会频繁使用。 二、试卷题型 1. 2. 3. 4. 5. 6. 简答题:32% 问答题:12% 简单编程题:16% 依图示电编程题:10% 硬件扩展题:14% 综合应用设计题:16% : 三、参考习题(注意:习题期末考试内容,仅提供题型的示例) 参考习题(注意:习题期末考试内容,仅提供题型的示例) 一.填空题 1. 单片机与普通计算机的不同之处在于其将 , 和 三部分集成于一块芯片上。 答:CPU、存储器、I/O 口 2. 在 MCS-51 单片机中,如果采用 6MHz 晶振,1 个机器周期为 . 答:2us。 3. 有符号数-70 的二进制原码为 11000110 B ,反码: 10111001 B , 补码 10111010 B 4. 如果(TOMD)=2FH,则 T1 为 定时 器,其工作在工作方式 2 下。 5. 当 P1 口做输入口输入数据时,引脚一般处于高阻态,因此必须先向该端口的锁存器送数据 1 ,使内部元件 VT1 截 止 ,否则读取输入数据可能出错。 二、判断题 1. 8031 与 8051 的区别之处在于内部 RAM 的容量不一样。 ( × ) 解析:8031 与 8051 的区别在于 8031 无片内 ROM,而 8051 有 4KB 的内部 ROM,而 RAM 的容量并无区别,因此错误。 2. 程序计数器 PC 不能为用户编程时直接使用,因为它没有地址 ( √ ) 解析:16 位寄存器 PC 于单片机的 RAM 区而单独存在,因此我们无法直接使用诸如 MOV PC,#H 之类的寻址 指令对其访问。 改变 PC 值的指令只有跳转指令和堆栈指令、另外在中断发生时 PC 的内容会被置为相应的中断向量地址。 3.内部 RAM 的位寻址区,只能供位寻址使用,而不能供字节寻址使用。 × ) ( 解析:内部 RAM 的位寻址区位于 20H~2FH 单元(每个单元有 8 位,共 16 单元*8 位=128bits) ,各位又分配了一个于 单元地址的位地址 位寻址范围为 00H~FFH (注意每个地址对应的是 1 位二进制数) 当使用位寻址指令时, MOV C, 。 如 09H 时,09H 表示的是一个位地址,该位为 21H 单元中的次低位,如下图所示。 单元地址 20H 20H 07H 0FH 06H 0EH 05H 0DH 04H 0CH 位地址 03H 0BH 02H 0AH 01H 09H 00H 08H …… …… 该区即可以当做通用 Ram 单元用直接地址访问(MOV 21H,A)也可以用位寻址访问。因此题中所述内容错误 4. 8031 共有 21 个特殊功能寄存器,它们的位都是可以用软件设置的,因此,是可以进行位寻址的。 × ) ( 解析: 自行查阅课本 P19 页的 SFR 区, 表 2.4 (位于内部 RAM 80H~FFH 范围内) 注意有部分特殊寄存器 , (例如 TH0, TL0) 是不提供位寻址的,凡是“位地址与位名称”下内容为空白的寄存器均不提供位寻址地址,因此该题错误。 5. 判断下列指令的正误 ORG 0000H AJMP MAIN ( × ) ORG 0900H MAIN: MOV R7, 23H ( √ ) MOVX A,@R7 ( × ) …… …… RET 解析: (1)相对跳转指令 AJMP 可跳转的范围为:取出当前指令后 PC 内容(即指令所在单元地址+2)所在的 2KB 地址范 围内。显然,本题 AJMP 指令位于 0000H,取指后 PC 内容为 0002H,其寻址范围为 ROM 内的:0000H~07FFH 单元。 而 MAIN 标号对应地址为 0900H 大于该范围,因此该语句错误; (2)该语句的意思是将片内 RAM 23H 单元的内容(注意,尽管 23H 里面存的数据是多少读这一句时我们不知道, 但不影响该语句的正确性)送至 R7,因此该指令是正确的。 (3)寄存器间址寻址只能使用 R0 和 R1,这里使用 R7 来间址寻址,显然是错误的。 三、程序阅读题 已知程序执行前有 A=02H,SP=52H, (51H)=FFH,(52H)=FFH。下述程序执行后: DPH ; 52H 单元存放的内容 FFH 放入 DPH, (SP)-1=51H DPL ; 51H 单元存放的内容 FFH 放入 DPH, (SP)-1=50H DPTR,#4000H ; (DPH)=40H; (DPL)=00H A ; (ACC)=04H (左移相当于乘 2) B,A ; (B)=04H A,@A+DPTR ; 变址寻址单元为(04H+4000H=4004H)内容放入 A ;查程序末尾的数据表可知 (ACC)= 30H PUSH A ; (SP)+1=51H,将#30H 推入堆栈 51H 单元 ; (B) (ACC) = 04H MOV A,B ; (ACC) = 05H INC A MOVC A,@A+DPTR ; 同上查表,得到 4005H 单元内容 PUSH A ; (SP)+1=52H,将 #50H 推入堆栈区 RET ; 返回指令执行时,将堆栈顶部的 2 字节内容恢复至 PC ; 先弹栈顶数 50H 到 PCH,再弹 30H 到 PCL 因此此时 PC= ;(5030) ORG 4000H DB 10H,80H,30H,50H,30H,50H 请问:A=( ) ,SP=( )(51H)=( )(52H)=( ) , , ,PC=( ) 。 此类题目不要着急作答,先对程序进行阅读理解,每句话写上注释,注释内容包括指令操作影响的寄存器内容,本例 注释参见程序中蓝色部分。 根据上述分析,不难得出结果: 答:A=50H , SP=50H , (51H)=30H , (52H)=50H , PC=5030H POP POP MOV RL MOV MOVC 四、简答题 1. 片内 RAM 低 128 个单元 个单元划分为哪 3 个主要部分?各部分的主要功能是什么? 答:片内 RAM 低 128 个单元主要包括工作寄存器区、位寻址区、通用区三个部分。 (主要功能自行查阅书本相关章节 作答) (简答题仅举此一例,主要注重对相关内容的理解,不需要长篇书本中定义,按自己的理解答题最佳。此外,注意理 解题目意思,如本题只问道低 128 单元,即 00H~7FH),不包括 SFR 区(80H~FFH) ,因此列举出 3 个区的类型,及相应 作用即可。 五、编程题 1. 设晶振为 12MHz 请利用定时标志查询法编制一段 20 分钟的定时程序,20 分钟定时时间到后 P1 口外接的 8 盏共阳极 LED 小灯开始闪烁。 答案:略 解题思:注意题目要求用查询方法,即对 TF0(1)进行位查询的方法编程。 注意定时中断法是如何实现同样的功能,与查询有何不同。请自行编制程序,并用 Keil 调试 2. 8255A 外接 12 盏小灯,请编写流水灯程序。 解题思:1、 注意 8255A 的口地址编制及小灯具体接在 A,B,C 哪个口上; 例如:设 A0,A1 接在地址总线的最低两位,译码器接在 P0.7,P0.6,P0.7 过锁存器后的地址线A 的选通信号,则我们可定义如下硬件地址: 8255A 的 PA 口地址为 FF70H,则 PB 口:FF71H; PC 口 FF72H, 控制口地址为:FF73H 假如 12 盏小灯接在 PA 口、和 PB 口的低 4 位,则编制对应地址的流水灯程序即可。 具体程序这里不提供,8255 控制 12 盏交通灯的程序及 Proteus 电原理图,大家可到课程网页上的 Proteus 目录下查看, 作为参考。

      威廉希尔