湘南学院单片机总复习

合集下载

单片机期末总复习PPT课件

单片机期末总复习PPT课件
单片机期末总复习PPT课件
目录 Contents
• 单片机基础知识 • 单片机硬件结构 • 单片机指令系统 • 单片机程序设计 • 单片机中断系统 • 单片机定时器/计数器 • 单片机串行通信
01
单片机基础知识
单片机的定义与特点
01
总结词:核心概念
02
单片机是一种集成电路芯片,它集成了中央处理器、存储器、输入输 出接口等必要组件,形成一个完整的微型计算机系统。
中断的概念与作用
总结词 中断的概念 中断的作用 中断的特点
中断的概念、作用和特点
中断是指在单片机执行程序过程中,由于某种原因,系统强制 停止当前程序的执行,转而去执行相应的中断服务程序。
中断主要用于实时处理、异常处理和多任务调度等场合,可以 提高单片机系统的实时响应能力和处理效率。
中断具有优先级、自动处理和嵌套等特点,能够满足不同任务 对实时性的要求。
间测量、事件计数等应用。
定时器/计数器的模式与操作方式
01
定时器/计数器的模式
02 定时器/计数器有多种工作模式,如自动重 载模式、定时模式、计数模式等。
03
定时器/计数器的操作方式
04
操作方式包括启动、停止、重载、中断等, 可以通过编程进行控制。
定时器/计数器的应用实例
01
02
03
定时器/计数器的应用实 例
在智能家居方面,单片机可以用于实 现智能化家庭设备的控制和管理,提 高生活品质。
在医疗电子方面,单片机可以用于实 现医疗设备的智能化控制和监测,提 高医疗保健水平。
02
单片机硬件结构
中央处理器
中央处理器(CPU)是单片机的核心部件,负责执行指令和控制各部件的工作。

单片机考试复习

单片机考试复习

单片机考试复习单片机是嵌入式系统中的关键组成部分,掌握单片机的原理和编程技巧对于学习和应用嵌入式系统有着重要的意义。

为了备考单片机考试,以下是一些复习的重点内容,帮助大家系统地进行复习。

1. 单片机基础知识1.1 单片机的概念和发展历程单片机是一种集成度很高的微型计算机系统,具有片上集成的特点。

从早期的8位单片机到现在的32位单片机,单片机的发展经历了几个重要的阶段。

1.2 单片机的工作原理单片机通过执行存储在其内部存储器中的指令,在控制下完成特定功能。

了解单片机的架构和工作原理是学习和理解单片机编程的基础。

2. 单片机编程基础2.1 汇编语言单片机的底层程序一般使用汇编语言进行编写。

掌握汇编语言的语法和指令集是了解单片机底层运行机制的关键。

2.2 C语言C语言虽然是高级语言,但是在单片机编程中也得到了广泛的应用。

掌握C语言在单片机编程中的基本语法和特点,能够更加高效地进行程序开发。

2.3 嵌入式编程技巧在单片机编程中,还需要掌握一些嵌入式编程技巧,如中断处理、时钟配置、IO口控制等。

这些技巧能够提高单片机程序的可靠性和性能。

3. 单片机外部设备接口3.1 数字输入输出口单片机常用的数字输入输出口是与外部设备进行信息交互的重要接口。

了解数字输入输出口的特点和编程方法,能够灵活地控制和读取外部设备的状态。

3.2 模拟输入输出口模拟输入输出口常用于与模拟信号进行交互。

掌握模拟输入输出口的工作原理和编程方法,能够实现对模拟信号的采集和处理。

3.3 串口通信串口通信是单片机与外部设备进行通信的一种常见方式。

了解串口通信的原理和常用协议,能够实现单片机与其他设备的数据交换。

4. 单片机应用案例4.1 LED显示控制LED显示控制是单片机最基础的应用之一,通过控制LED的亮灭状态可以实现各种显示效果。

了解LED显示控制的原理和编程方法,能够实现对LED的动态控制。

4.2 按键输入和响应按键输入和响应是单片机与外部设备交互的一种常见方式。

单片机总复习PPT课件

单片机总复习PPT课件
入式分析器等。
IAR Embedded Workbench支持多种 IAR Embedded Workbench还支持多 单片机型号和开发语言,如C和汇编语 种单片机的开发板和仿真器,方便开发 言,具有友好的用户界面和丰富的库函 者进行硬件和软件的协同开发和调试。 数,方便开发者进行单片机程序的编写、
物联网
单片机在物联网领域的应 用将更加深入,如智能交 通、智能物流等。
THANKS
[ 感谢观看 ]
01
02
03
硬件选型
根据需求分析,选择合适 的单片机型号和相关硬件 组件。
电路原理图设计
根据单片机和相关硬件的 特性,设计合理的电路原 理图。
PCB板设计
基于电路原理图,设计满 足要求的PCB板。
软件设计
软件需求分析
明确软件需要实现的功能和性能要求。
编程语言选择
根据项目需求和开发人员技能,选择合适 的编程语言(如C、汇编等)。
A/D转换接口的转换精度和转换速度是 关键参数,转换精度越高,转换结果越 准确;转换速度越快,实时性越好。
•·
A/D转换接口可以将模拟信号转换为数 字信号,使得单片机可以对模拟信号进 行处理和控制。
PWM接口
•·
PWM接口的频率和占空比是关键 参数,频率决定了输出的稳定性 ,占空比决定了输出的幅度。
数字钟项目
数字钟概述
数字钟是一种以数字方式显 示时间的设备,可以用于家 庭、办公室等场所的时间显 示和计时。
硬件组成
数字钟的硬件组成包括单片 机、数码管或液晶显示屏、 晶体振荡器等部分,其中单 片机是核心控制单元。
软件编程
软件编程需要实现时间的计 数、显示和控制等功能,常 用的编程语言包括C语言和 汇编语言。

单片机期末总复习资料

单片机期末总复习资料

第三章 指令系统
• 寻址方式
立即数寻址,MOV A,#33H
寄存器寻址,MOV A,R0
直接寻址,MOV A,30H
寄存器间接寻址,MOV A,@R0
变址寻址,MOVC A,@A+DPTR
相对寻址,SJMP $
JZ L1
位寻址,MOV C ,07H
• 1、下列数据传送指令是否有问题?如果有问题该如 何改正?
分析: ➢P1.1引脚的输出应每隔500ms取反一次,即定时时间为500ms, 长时间定时。 ➢定时/计数器方式1最大定时65.5ms。可用定时/计数器T1进行 10ms的定时,然后用寄存器R7对10ms定时中断次数计数50次来 实现。
➢定时初值:(216 C) *1us 10000us C D8F0H;TH1 D8H, TL1 F0H
3、中断请求寄存器 (TCON)
TCON 8FH 8EH 8DH 8CH
(88H) TF1
TF0
8BH 8AH 89H 88H
IE1 IT1 IE0 IT0
外部中断举例
要求:每次按键,使外接发光二极管LED改变一次亮灭状态。
解:INT0输入按键信号,P1.0输出改变LED状态。
ORG 0000H
AJMP MAIN
22
【例7-4】用T0作为计数器计数一生产流水线上的工件,每生产 100个工件,发出一包装命令,包装成一箱,并记录其箱数,
100个
包装命令
23
第8章 串行口通信
串行同步通信、异步通信各自的特点。 串行口1的工作方式有哪些?每种工作方式下的波特 率和帧格式是什么样的? 可以做为波特率发生器的是()、()
要注意:读外部引脚状态前,要先输出高电平,读回来的状态才 是正确的。 强推挽输出方式:输入输出都可达到20mA电流,适合需要较大 输出电流的情况。 仅为输入:所有输出均截止,对外是高阻状态,对输入没有影响。 开漏输出:内部上拉电阻断开。做输入输出时需要外加上拉电阻。

单片机原理与应用总复习P44

单片机原理与应用总复习P44

2006H
36
2007H
49
2008H
64
2009H
81
16
堆栈操作指令
• 先进后出、后进先出 • PUSH direct ;SP←SP+1,(SP) ← (direct) • POP direct ;(SP) → (direct), SP←SP-1
17
算术运算指令
移位指令
• ADD、ADDC、SUBB
eg: MOV C,7FH
14
数据传送指令
内部数据传送指令 MOV 注意不能在Rn之间传送 外部RAM 与内部数据传送指令 MOVX
MOVX A , DPTR MOVX A , Ri MOVX DPTR , A MOVX Ri , A ROM与内部数据传送指令 MOVC MOVC A , A+DPTR MOVC A , A+PC
– 特点:都是以A作为第一操作数。
RR、RL、RRC、RLC、 SWAP
– 影响PSW标志位。
– 只能是8位二进制数据的运算。 特点:
• INC、DEC
1. 只有循环移位。
• MUL AB ;A*B=BA 形成标 2. 目的操作数都在A中。

• DIV
AB ;A÷B=A…B
逻辑运算指令
3. 单操作数指令
8051的内部ROM 4K B;
8031没有内部ROM。
1. 如果使用8051,/EA引脚如 何连接?如果片内ROM用 完了怎么办?也就是说当 PC值为多少的时候,会转 到片外ROM执行?
2. 内部ROM和外部ROM的 最大寻址空间多大?决定 于哪个寄存器?
4
存储器部分—片内RAM
8051片内RAM 128字节(地址00-7FH),片外 RAM 可扩展64KB(地址0000H-FFFFH)。共同占 用部分访问时用MOV和MOVX指令区别。 片内RAM分为:(1)工作寄存器区(00H-1FH)4组 R0-R7

单片机原理及应用》期末复习资料

单片机原理及应用》期末复习资料

单片机原理及应用》期末复习资料一、概述单片机作为一种集成电路芯片,在嵌入式系统中扮演着重要角色。

它具备微处理器、存储器和各种外设接口等功能,可以实现各种控制和计算任务。

本文将对单片机的原理和应用进行详细介绍,帮助读者复习单片机相关知识。

二、单片机的基本原理1. 单片机的组成结构单片机由中央处理器(CPU)、存储器、输入输出接口(I/O)、定时器/计数器和串行通信接口等组成。

这些组成部分通过总线相互连接,形成一个完整的单片机系统。

2. 单片机的工作原理单片机的工作原理是将程序和数据存储在存储器中,CPU按照程序指令的顺序依次执行,同时与输入输出设备进行数据交互。

通过定时器/计数器和串行通信接口等外设,单片机可以进行各种计算和控制任务。

3. 单片机的指令系统单片机的指令系统包括数据传输指令、算术运算指令、逻辑运算指令、跳转指令和输入输出指令等。

不同的指令通过操作码进行区分,每条指令执行时会产生相应的操作结果。

4. 单片机的存储器结构单片机的存储器结构包括程序存储器、数据存储器和特殊功能寄存器。

程序存储器用于存放程序指令,数据存储器用于存放变量和数据,特殊功能寄存器用于存放控制和状态信息。

三、单片机的应用场景1. 家电控制单片机可以用于控制家电设备的开关和调节,比如空调、电视和洗衣机等。

通过连接传感器和执行器,单片机可以实现温度调节、时间控制和电机驱动等功能。

2. 工业自动化单片机在工业控制领域有广泛应用,可以实现生产线的自动控制和监测。

通过与传感器和执行器的连接,单片机可以获取并处理各种信号,实现工艺过程的控制和优化。

3. 智能交通单片机可以用于交通信号灯的控制和智能交通系统的构建。

通过与摄像头、车辆检测器等设备的连接,单片机可以实时监测交通情况,并根据需要进行信号灯的调控。

4. 医疗设备单片机在医疗设备中起到核心控制和数据处理的作用。

如心电图机、血糖仪和医用透析机等,都可以通过单片机实现信号采集和处理,提供准确的医疗诊断结果。

单片机期末复习重点总结

单片机期末复习重点总结

一、单片机:就是在一片半导体硅片上集成了中央处理单元、存储器、并行接口I/O、串行I/O口、定时器/计数器、终端系统、系统时钟电路及系统总线的微型计算机。

二、单片机的硬件结构:8位微处理器、数据存储器(128B)、程序存储器、4个8位可编程并行I/O口、1个串行口、2个16位定时/计数器、1个看门狗、5个中断源和中断向量、特殊功能寄存器26个、低功耗节电模式、3个程序加密锁定位。

其图如下:三、单片机引脚:单片机共有40个引脚;按其功能可分为3类:●电源及时钟引脚●控制引脚●I/O口引脚四、单片机存储器结构●程序存储器16位●数据存储器8位●特殊功能寄存器●位地址空间五、四组并行I/O端口1、P0口1)P0口是一个双功能的8位并行口,字节地址在80H,位地址为80H—87H。

2)P0口特点:地址/数据复用口和通用I/O口●当P0口用作地址/数据复用口时,是一个真正的双向口,用作与外部存储器的连接,片外必须要接上拉电阻。

●当P0口作为通用I/O口时,由于有高阻抗,所以在端口外要接上上拉电阻,它是一个准双向口。

2、P1口1)P1口是单功能的I/O口,字节地址为90H,位地址为90H---97H.2)P1口特点:●由于P1口内部有上拉电阻,没有高阻抗输入状态,所以不需要在片外接上拉电阻。

●P1口“读引脚”输入时,必须先向锁存器写入。

3、P2口1)P2口是一个双功能口,字节地址为A0H,位地址为A0H---A7H.2)P2口特点:与P1口的一样。

4、P3口略六、时钟电路与时序1、时钟电路设计图在书上35页图2-13.2、时钟周期:若时钟晶体的振荡频率为f osc,则时钟周期T=1/f osc。

3、机器周期:一个机器周期包括12个时钟周期。

即:T cy=12/f osc。

4、指令周期:单字节和双字节指令周期一般为单机器周期和双机器周期。

三字节指令周期都是双机器周期;乘、除指令周期4个机器周期。

七、复位操作和复位电路1、复位电路设计在书上37页图2-18或图2-19或图2-20.八、单片机最小系统设计如图九、keilC的使用方法:步骤:1、点击桌面快捷键Uv4,打开软件2、单击project出现下拉菜单,单击New uVison Project新建一个文件,在弹出的窗口下方文件名随便写(自定义),并保存好。

单片机原理复习资料

单片机原理复习资料

单片机原理复习资料单片机是一种集成电路,它集成了中央处理器、存储器、输入输出接口和时钟电路等功能模块。

它被广泛应用于各种电子设备中,如家电、汽车电子、通信设备等。

单片机的学习对于电子工程师和计算机科学家来说是非常重要的。

本文将对单片机的原理进行复习,帮助读者加深对单片机工作原理的理解。

单片机的基本结构可以分为四个部分:中央处理器、存储器、输入输出接口和时钟电路。

中央处理器是单片机的核心部分,它负责执行指令和处理数据。

存储器用于存储程序和数据,其中包括只读存储器(ROM)和随机存储器(RAM)。

输入输出接口用于与外部设备进行数据交换,包括输入接口和输出接口。

时钟电路提供时钟信号,用于同步单片机的各个部件。

在单片机的工作过程中,中央处理器首先从存储器中读取指令,然后执行指令,最后将结果存储到存储器或输出到外部设备。

指令由操作码和操作数组成,操作码表示具体的操作,操作数表示操作的对象。

中央处理器根据指令的操作码执行相应的操作,如加法、减法、移位等。

操作数可以是寄存器中的数据、存储器中的数据或外部设备的数据。

存储器是单片机的重要组成部分,它用于存储程序和数据。

只读存储器(ROM)是一种非易失性存储器,其中存储的数据在断电后仍能保持。

ROM中存储了单片机的固件程序,如引导程序和操作系统。

随机存储器(RAM)是一种易失性存储器,其中存储的数据在断电后会丢失。

RAM用于存储程序的临时数据和用户数据。

存储器的容量决定了单片机可以存储的程序和数据的大小,不同的单片机有不同的存储器容量。

输入输出接口是单片机与外部设备进行数据交换的通道。

输入接口用于将外部设备的数据输入到单片机,输出接口用于将单片机的数据输出到外部设备。

输入接口通常包括模拟输入和数字输入两种方式,模拟输入用于接收模拟信号,数字输入用于接收数字信号。

输出接口通常包括模拟输出和数字输出两种方式,模拟输出用于输出模拟信号,数字输出用于输出数字信号。

输入输出接口的设计需要考虑外部设备的特性和单片机的能力。

单片机期末复习资料(完全版)

单片机期末复习资料(完全版)

位操作指令 MOV C,20H 位地址只有1bit(小圆区域)
字节操作指令 MOV A,20H 字节地址共8bit(大椭圆区域)
ORG 1000H
10个字节的数据,编程将每个字节
从图中可以看出,51计数器是一个加1计数器,其计数源来自两个,一个是端口T0的外部中断源,另一个是系统振荡器的12分频,“计数源开关”可实现两个计数源的转换,另一个开
片机的系统扩展
常用于程序存储器的芯片种类有ROM、EPROM、E²PROM、FLASH等,其中
一般用于大批量生产产品,而其他三个是可以擦除再写的,EPROM是用紫外线擦除,
芯片有:2716(2KB)、2732(4KB)、2764(8KB)、
(64KB)。

67.【例8-5】根据图(P160 图8-21),试编写出程序使8255各个端口为下列工作状态。

口:方式0输出;B口:方式1输入;C口:方式0输入。

单片机复习资料大全

单片机复习资料大全

一、填空题1.单片机是把中央处理器、存储器、定时器/计数器以及I/O接口电路等主要计算机部件集成在一块集成电路芯片上的微型计算机。

2.除了单片机这一名称之外,单片机还可称为微控制器、嵌入式控制器。

3.计算机的系统总线有地址总线、控制总线和数据总线。

4.80C51单片机基本型内部RAM有128 个字节单元,这些单元可以分为三个用途不同的区域,一是工作寄存器区、二是位寻址区、三是数据缓冲区。

5.8051单片机有2 个16位定时/计数器。

6.单片机存储器的主要功能是存储程序和数据。

80C51含4 KB掩膜ROM。

7.80C51在物理上有4个独立的存储器空间。

8.通常、单片机上电复位时PC= 0000H,SP= 07H;而工作寄存器则缺省采用第00 组,这组寄存器的地址范围是从00H~ 07H。

9.8051的堆栈是向地址的高端生成的。

入栈时SP先加1,再压入数据。

10.使用8031芯片时,需将/EA引脚接低电平,因为其片内无程序存储器。

11.MCS-51特殊功能寄存器只能采用直接寻址方式。

12.汇编语言中可以使用伪指令,它们不是真正的指令,只是用来对汇编过程进行某种控制。

13.半导体存储器的最重要的两个指标是存储容量和存储速度。

14.当PSW4=1,PSW3=0时,工作寄存器Rn,工作在第2组。

15.在8051单片机中,由2 个振荡(晶振)周期组成1个状态(时钟)周期,由6个状态周期组成1个机器周期。

16.假定累加器A的内容30H,执行指令:1000H:MOVC A,@A+PC后,把程序存储器1031H单元的内容送累加器A中。

17.MCS-51单片机访问外部存储器时,利用ALE信号锁存来自P0口的低8位地址信号。

18.内部RAM中,位地址为30H的位,该位所在字节的字节地址为26H。

19.若A中的内容为63H,那么,P标志位的值为0。

20.在基址加变址寻址方式中,以累加器A作变址寄存器,以DPTR或PC作基址寄存器。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章MCS-51单片机的硬件结构1单片机内部采用模块式结构,主要由以下部件通过片内总线连接而成:中央处理器CPU、数据存储器RAM、程序存储器ROM、并行输入/输出口P0~P3口、串行口、定时器/计数器、中断控制、总线控制、时钟电路2引脚:它是单片机和外界进行通信的通道连接点,用户只能它组建控制系统重要的引脚说明:1)电源及电源复位引脚:A. Vcc:正常操作时接+5V电源B.Vss:接地端C.RST/Vpd:复位信号输入端/备用电源输入端D.EA非/Vpp:访问内ROM控制信号/编程电源输入——EA非保持高电平时,访问低值范围为0~4KB的内ROM;当保持低电平时,只访问外ROM,由此可见当单片机无片内程序存储器时,EA非接地2) 时钟振荡电路引脚:A.XTAL1:它是片内振荡电路反向放大器输入端,当采用外部振荡器时,此引脚接地B.XTAL2:它是片内振荡电路反向放大器输出端,当采用外部振荡器时,此引脚为外部振荡器的输入端3) ALE/PROG非:低八位地址锁存控制信号/编程脉冲输入——ALE信号是下降沿有效,用于把P0口输出的低八位地址锁存起来(访问外ROM时,两次下降沿有效;访问外RAM时,一次有效)4) PSEN非:外ROM的读选通信号输出端——从外ROM取指令期间,此引脚定时输出负脉冲作为读取外ROM的信号,每个机器周期PSEN非两次有效5) 并行双向输入/输出I/O口引脚A. P0口:P0.0~P0.7——八位通用输入/输出端口、片外低八位地址总线端口和片外八位数据总线端口B. P1口:P1.1~P1.7——八位通用输入/输出端口C. P2口:P2.0~P2.7——八位通用输入/输出端口、片外高八位地址总线端口D. P3口:P3.0~P3.7——八位通用输入/输出端口、第二功能★P3口第二功能表3总线:它是连接单片机与各外部器件的一组公共的信号线三总线结构:(除了Vcc、Vss、RST、XTAL1、XTAL2、P1口外,其余引脚能实现系统扩展)a)地址总线:总共有16根A15~A0,P2口提供高八位,P0口经地址锁存器提供低八位b)数据总线:总共有8根D7~D0,全由P0口提供c)控制总线:由P3口的第二功能WR非、RD非和3根独立控制线EA非、ALE、PSEN非组成4CPU:它是单片机的核心部件,由运算器和控制器构成a)运算器:算术逻辑单元部件ALU、位处理器、8位累加器A、寄存器B、8位暂存寄存器TMP1、8位暂存寄存器TMP2、8位程序状态字寄存器PSWb)控制器:程序计数器PC、PC增量器、指令寄存器、指令译码器、定时及控制逻辑电路等,功能是以主振频率为基准产生时钟信号,向单片机内部各组成单元发出各种微控制信号,控制指令的读入、译码、执行,并对指令执行过程进行定时和逻辑控制5程序——为了完成某项工作而将一系列指令有序的组合在一起;指令——要求单片机执行某种操作的命令(指令=操作码+地址码)执行一条指令的步骤:取指令阶段、指令执行阶段7 PC:它是一个有自动加1功能的16位计数器,它没有地址,是不可寻址的,用户不能对它进行读或写操作,用于存放即将要执行的指令的地址8 时序:是指在指令执行过程中,CPU的控制器所发出的一系列特定的控制信号在时间上的先后关系9 时序单位:a.拍节——振荡脉冲的周期及晶振周期;b.状态——振荡脉冲经二分频,1个状态包含2个拍节;c.机器周期——是指CPU访问存储器一次所需要的时间,1个机器周期规定为6个状态,即12个拍节;d.指令周期——单片机执行一条指令所需要的时间(4周期指令只有乘除两条指令)10 存储器分类:按存储方式分——随机数据存储器RAM、只读程序存储器ROM按地址空间分——片内ROM、片外ROM、片内RAM、特殊功能寄存器SFR、片外RAM11 单片机存储器地址空间分3个:a.64KB的ROM地址空间[片内ROM(0000H~0FFFH)+片外ROM(0000H~FFFFH)]b. 256B的片内RAM地址空间[片内RAM(00H~7FH)+SFR(80H~FFH)]c. 64KB的片外RAM地址空间[片外RAM(0000H~FFFFH)]1214 位地址的4种表示方式:位地址D7H、☆位符号C、单位地址.位序D0H.7、寄存器名.位序PSW.715 特殊功能寄存器的各功能单元A.CPU:累加器A、寄存器B、程序状态字寄存器PSW、堆栈指针SP、数据指针DPTR B.并行口:P0、P1、P2、P3、C.串行口:串行口控制寄存器SCON、串行数据缓冲器SBUF、电源控制寄存器PCON D.中断系统:中断允许控制寄存器IE、中断优先级控制寄存器IPE.定时器/计数器:方式控制寄存器TMOD、控制寄存器TCON、THx、TLx16 常用的特殊功能寄存器1.累加器A:8位寄存器,用于向ALU提供操作数、存放运算中间结果、数据传送的中间站2.寄存器B:8位寄存器,主要用于乘、除运算(乘法指令中,两个乘素分别取自A、B,运算结果的低8位存于A,高8位存于B)(除法指令中,被除数在A中,除数在B中,运算结果的商存于A,余数存于B)34.数据指针DPTR:由高字节DPH和低字节DPL组成,存放16位地址5.I/O口专用寄存器P0、P1、P2、P3:每一个I/O口内都有一个8位数据输出锁存器和一个8位数据输入缓冲器,可以直接寻址6.串行数据缓冲器SBUF:用来存放需要发送和接收的数据7.堆栈指针SP:8位特殊功能寄存器,用于指示堆栈的栈顶地址,决定了栈顶在内部RAM中的物理位置17 堆栈——是在片内RAM区中选定的某个存储单元区,目的是用于数据的暂存,中断、子程序调用时断点和现场的保护与恢复;栈顶——只允许一个方向写入数据,最后一个写入数据的存储单元;入栈——数据写入堆栈为插入PUSH运算;出栈——数据从堆栈中读出为删除POP运算18 堆栈分类:按堆栈生成方向分,☆向上生长型堆栈(先进后出,后进先出)、向下生长型堆栈19 入栈过程:先SP←SP+1,后数据内容→SP指定存储单元出栈过程:先数据内容→POP指定存储单元,后SP←SP-1开辟堆栈:系统复位后SP=07H,要对其进行修改,SP=30H~7FH20MCS-51单片机共4个8位并行双向输入/输出口:每个端口包含一个输出锁存器、一个输出驱动器、一个输入缓冲器21P0口特点:A.双功能端口——地址/数据复用口和通用I/O口B.作为地址/数据总线复用口时,是一个真正的双向I/O口;而作通用I/O口时,引脚上外接上拉电阻,端口不存在高阻状态,是一个准双向口C.为保证引脚上信号能正确读入,在读入操作前应向锁存器写1D.能驱动8个TTL负载22 P1口特点:A.由于内有上拉电阻,没有高阻态,是一个准双向口B.读引脚输入时,须向锁存器写1C.能驱动4个TTL负载23 P2口特点:A.作为高8位地址输出线应用时,与P0输出的低8位地址一起构成16位地址总线B.当作为高8位地址输出口时,其输出锁存器原锁存内容保持不变C.作通用I/O口使用时,是一个准双向口D.能驱动4个TTL负载24 P3口特点:A.内有上拉电阻,不存在高阻态,是一个准双向口B.作为第二功能的输出/输入(输入信号取自缓冲器三态门3的输出端)或通用输入时,都需要将相应的锁存器置1C.某位不作第二功能使用时,自动处于通用输出/输入口的功能(输入信号取自缓冲器三态门2的输出端,)D.能驱动4个TTL负载25 复位:是单片机初始化的操作,主要功能是将程序的PC初始化为0000H,使单片机从0000H开始执行程序,其分类——上电自动复位、手动按键复位第二章MCS-51单片机指令系统26 指令:是指使计算机内部执行一定的动作的一种控制命令27 单片机指令:具有功能强、指令短、执行快等特点,共有111条28 单片机指令分类:按功能分——数据传送、算术操作、逻辑操作、程序转移、位操作;按指令字节分——单字节(49条)、双字节(46条)、三字节(16条);按执行时间分——单机器周期(64条)、双机器周期(45条)、四机器周期(2条——乘、除)29 指令格式:指令的表示方式——[标号:] 操作码[操作数] [,操作数] [;注释]A.标号:指令的符号地址,由英文字母和数字组成,用于一段功能程序的识别标记或控制转移地址,他是用符号表示的地址,其后面必须用冒号与操作码隔开B.操作码:规定指令的操作性质,是指令的核心部分C.操作数:参与操作的数据或数据地址,其特点——他可以是数据,也可以是数据地址、数据地址的地址或操作数的其他信息;他可分为目的操作数和源操作数;他可用二、十、十六进制数表示;他的个数是0~3个,他与操作码之间要空格隔开,操作数与操作数之间用逗号隔开30 指令常用符号:#立即数符direct 8位直接地址@间接寻址符addr11 11位目的地址Addr16 16位目的地址rel带符号8位偏移地址bit位地址Rn当前工作寄存器Ri用于间接寻址的俩寄存器A(ACC)累加器B寄存器C进位标志位$当前指令地址/ 对该位先求反后操作(X) X所指定某单元内容((X)) X间接寻址单元内容31单片机的寻址方式:A.立即寻址:将参与操作的数据直接写在指令中(源操作数为#data)MOV A,#11H B.直接寻址:将操作数的地址存放在指令中MOV A,11H C.寄存器寻址:操作数存放在单片机内部某个工作寄存器Rn或A、B、DPTR中MOV A,R3 D.寄存器间接寻址:指令中的寄存器Ri、DPTR中存放的是操作数据的地址MOV A,@R0 E.变址寻址:操作数存于变存A和基存PC、DPTR相加的地址单元中MOVC A,@A+PC F.相对寻址:将程序计数器PC当前值与指令给出偏移量rel相加形成新转移目标地址SJMP 30H G.位寻址:操作数是一个可单独寻址的位地址,他包含于直接寻址MOV A,C ★此七种寻址方式需注意:a.指令中源操作数可以使用以上7种寻址方式,但目的操作数只能是寄存器寻址、寄存器间址、直接寻址、位寻址4种之一b.片内SFR区只能用直接寻址c.片外RAM区只能采用寄存器寻址、寄存器间接寻址32 单片机指令各部分占字节数:操作码占1个字节;直接地址direct占1个字节;#data8占1个字节;#data16占两字节;操作数中的A、B、Rn、@Ri、@DPTR、@A+DPTR、@A+PC等隐含于操作码中33 单片机指令系统:A.数据传送指令(29条):把源地址单元内容传送给目的地址单元中去,或源地址单元与目的地址单元内容互换ab.外RAMde.堆栈操作指令(2条):用于保护断点和恢复现场,是以SP为间址寄存器的间址寻址,也是以direct为直接地址的直接寻址,系统复位后需重设SP=30H~7FH,(★堆栈操作指令不能含寄存器名如A、R0)B.算术运算指令(24条):主要完成加、减、乘、除四则运算,及加1、减1、BCD码运算和调整等,一般一个操作数存放在A中,另一个操作数存放在Rn、@Ri、片内RAM 某个直接地或#dataa Ab.带进位加法指令ADDC(4条):将源操作数的内容+A+进位标志位C,结果存入Ac.带借位减法指令SUBB(4条):将A-源操作数中的内容-进位标志位C,结果存入AdBCD码调整原则:若A的低4位大于9,则(A)=(A)+6H;若A高4位大于9,则(A)=(A)+66He.加1指令INC1、f.乘除指令(2条):乘法指令MUL——完成2个8位无符号数相乘,乘数放A,被乘数放B,乘积高8位放B,低8位放A;除法指令DIV——被除数放A,除数放B,商放A,余数放BC .逻辑运算和移位指令(25条):逻辑与、逻辑或、逻辑异或、循环移位、清零、求反等指令,都是按位进行的a.0位清0b.c.e.累加器Af.空操作NOP (一条)E . 控制转移指令(16条):其功能是通过改变PC 中的内容,控制程序执行的流向,实现程序分支转向a.单片机无专用停机指令,常用方法:HERE:SJMP HERE 和SJMP $b.F.位操作指令(17条):操作对象是内RAM128个可寻址位和SFR中11个可寻址特殊功能寄存器中的可寻址位,他是以进位标志位C作为位累加器a.位数据传送指令(2b.位状态控制指令(c.位逻辑操作指令(6d.位条件转移指令(5条):第三章汇编语言程序设计34 用于程序设计的3大语言:机器语言、高级语言、汇编语言(基本指令、伪指令——控制汇编程序的输入输出、定义数据和符号、条件汇编、分配存储空间等功能)35 常用汇编语言伪指令:起始地址伪指令ORG 0000H;结束伪指令END;赋值伪指令LOOP EQU 1234H;数据地址定义指令DATA;定义标号值伪指令DL;DB;DW;DS;BIT36 程序结构的3大基本控制结构形式:顺序结构、分支结构、循环结构A.顺序结构:无分支、无循环、无调用,一条一条按顺序执行指令B.分支结构:其特点是根据不同的条件,确定程序的走向,主要指令是条件转移指令、比较转移指令、位转移指令分支结构设计要求——1,建立可供条件转移指令测试的条件;2,选用合适的条件转移指令;3,在转移的目的地址处设定标号)C.循环结构:其特点是程序中含有可以重复执行的程序段即循环体,分为单循环与多重循环循环结构的4大组成部分——循环初始化、循环体、循环控制、循环结束(设计时注意问题——1,他是一个有初有终的整体,他的执行是有条件的,所以要避免从循环体外直接转到循环体内部;2,多重嵌套循环是从外层向内层层层进入的,循环结束时是由内层向外层层层退出的;3,编写循环结构时,首先要确定程序结构,处理好逻辑关系;4,循环体是循环程序中重复执行的核心部分,应仔细推敲合理安排,从改进算法、选择合适的指令入手对其进行优化,以达到缩短执行时间的目的)D.子程序结构:独立的、有一定功能的程序段(设计时注意问题——1,子程序的首地址必须用符号地址,该符号是子程序的名称;2,子程序多采用相对转移指令;3,子程序入口条件;4,保护现场与恢复现场)37 ★★★汇编语言程序设计实例:例1——顺序结构:将片内RAM 30H单元中例2——分支结构:求符号函数SIG的的两位压缩BCD码转换成二进制数送到片的值,自变量X放于片内RAM 40H 内RAM 40H单元中:单元中,求函数值Y存于41H单元:ORG 1000H ORG 1000H START:MOV A,30H START:MOV A,40HANL A,#0F0H JZ COMPSW AP A JNB ACC.7,POSTMOV B,#0AH MOV A,#0FFHMUL AB SJMP COMPMOV R0,A POST:MOV A,#01HMOV A,30H COMP:MOV 41H,AANL A,0FH SJMP $ADD A,R0 ENDMOV 40H,A 例4——延时程序,设计延时100msSJMP $ 的程序:fosc=6MHzEND 1000000us≈[(123*2+2)*200+2]*2us 例3——累加求和,已知片内RAM 30H~3FH ORG 1000H中存放了16个二进制无符号数,将他们累加DELAY:MOV R7,#200H求和,结果的高8位存放于R4,低8位存放DL Y1:MOV R6,#123于R5中:DL Y2:DJNZ R6,DL Y2 ORG 1000H DJNZ R7,DL Y1 START:MOV R0,#30H ENDMOV R2,#10HMOV R4,#00H ★例5——子程序查表,编程实现MOV R5,#00H c=a2+b2,a存30H,b存31H,c 解一LOOP:MOV A,R5 解二LOOP:MOV A, @R0 存于40H内:ADD A,@R0 ADD A,R5 ORG 1000HMOV R5,A MOV R5,A SR:MOV A,30HCLR A JNC LOOP1 ACALL SQRADDC A,R4 INC R4 MOV R1,AMOV R4,A LOOP1:INC R0 MOV A,31HINC R0 DJNZ R2,LOOP ACALL SQRDJNZ R2,LOOP SJMP $ ADD A,R1SJMP $ END MOV 40H,AEND SJMP $ 例6——算术加法,两双字节无符号数分别放SQR:MOV DPTR,#TABLE于R3,R4;R5,R6中,高位在前,低位在后,MOVC A,@A+DPTR将两数相加,将其结果的进位、高位、低位分RET别放于20H,21H,22H中:TABLE:DB 0,1,4,9,16,25,36,49,64,81 ORG 4000H ENDCLR C 例7——算术乘法,有两双字节无MOV A,R4 符号数进行乘法运算,被乘数和乘ADD A,R6 数分别放于内RAM的R2,R3;R6,R7MOV 22H,A 中,将结果依次放于R4,R5,R6,R7中MOV A,R3 高地址在前,低地址在后ADDC A,R5 ORG 4000HMOV 21H,A DBMUL:MOV A,R3CLR A MOV B,R7ADDC A,#00H MUL ABMOV 20H,A XCH A,R7END MOV R5,B 例8——数制转换,内RAM中hex单元内存MOV B,R2有一个2位十六进制数(如5FH),试将其转MUL AB换成ASCⅡ码,并存于asc和asc+1单元中ADD A,R5高对高,低对低MOV R4,AORG 4000H CLR AMOV SP,#3FH ADDC A,B MAIN:PUSH hex MOV R5,AACALL HASC MOV A,R6POP asc MOV B,R3MOV A,hex MUL ABSW AP A ADD A,R4PUSH ACC XCH A,R6ACALL HASC MOV R1,APOP asc+1 MOV A,BHASC:DEC SP ADDC A,R5DEC SP MOV R5,APOP ACC MOV F0,CANL A,#0FH MOV A,R2MOV DPTR,#TABLE MOV B,R1MOVC A,@A+DPTR MUL ABPUSH ACC ADD A,R5INC SP MOV R5,AINC SP CLR ARET MOV ACC.0,C TABLE:DB“0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F”MOV C,F0END ADDC A,B例9——顺序检索,某数据区首地址是内RAM MOV R4,A20H,数据区长度8,关键字放在2BH单元,END把检索成功的数据序号放入2CH单元中:例10——算术减法,设被减数高位ORG 4000H 和低位分别放在41H,40H,减数的MOV R0,#20H 高位和低位分别放在31H,30H,差MOV R7,#08H 的高位和低位分别放于51H,50HMOV 2CH,#00H MOV A,40HMOV R2,#00H CLR CMOV 2BH,#KEY SUBB A,30HNEXT:INC R2 MOV 50H,ACLR C MOV A,41HMOV A,2BH SUBB A,31HSUBB A,@R0 MOV 51H,AJZ ENDP 例11——逻辑移位,R1R0中存放的16INC R0 位数,要求右移一位,最高位补1DJNZ R7,NEXT MOV A,R1MOV R2,#00H SETB C ENDP:MOV 2CH,R2 RRC ASJMP $ MOV R1,AEND MOV A,R0RRC AMOV R0,A第四章单片机的中断系统38 输入输出的控制方式:无条件传送(立即传送)、查询传送(通用性好,但需要等待过程)、中断控制传送39 中断控制(中断):当CPU正在工作时,如果外界或内部发生紧急事件,要求CPU暂停转而去处理紧急事件,待处理完以后再回到原来被中断的地方,继续原来被中断的程序中断源:产生中断的请求源;中断系统:实现中断功能的部件;中断请求:中断源向CPU 提出的处理请求;中断响应:CPU中止当前程序转而去处理紧急事件的过程;中断服务:对紧急时间的处理过程;中断返回:处理完紧急事件后再回到被中止的地方40 中断过程:当CPU正在执行主程序时,每隔一个固定时间检测一次中断标志位[TCON(IEx、TFx等)、SCON],若有中断源发出了请求,CPU中止主程序的执行,并自动把断电地址及相关寄存器的信息保存起来,去响应中断源的请求,执行中断服务程序,中断服务程序处理完毕后,CPU通过执行一条中断返回指令RETI返回到断点处,恢复相关寄存器的信息后,继续执行主程序41 中断的功能及特点:分时操作、实时处理、故障处理;CPU与外围设备之间的并行工作,能大大提高CPU的运行效率,使CPU能实现实时控制42 MCS-51中断源及中断控制:A.中断源:含有5个中断源,即2个外部中断源(INT0非/P3.2、INT1非/P3.3),3个内部中断源(T0/P3.4、T1/P3.5、Tx/Rx)B.中断请求标志:TCON、SCOND.中断优先级控制:IP——中断优先级控制服务,某位置1,即被设为高优先级,原始43 中断处理过程4大阶段:中断请求、中断响应、中断服务、中断返回响应中断的条件:首先该中断请求标志位要置1,其次EA置1开放中断,该中断的中断允许位置1,再次判断其优先级别,优先级高的先响应44 终端程序设计:主程序——设置起始地址,使用转移指令跳过中断源入口地址;初始化IE、IP将对应位置1,实现开中断与设置优先级;中断服务程序——设置中断源入口地址,使用转移指令★注意:1,必须现场保护;2,及时清除那些不能被硬件自动清除的中断请求标志位(串行口中断标志TI/RI);3,在中断服务程序中,PUSH与POP指令必须成对使用;4,要注意主程序和中断服务程序之间的参数传递与主程序和子程序的参数传递方式相同第五章MCS-51的定时器/计数器与串行口45 Ⅰ单片机的定时器/计数器:T0、T1,其共性是两种工作模式,计数值可变且有限,当达到设定的定时或计数时发出中断请求信号A.2种工作模式:计数器模式——计数源来自I/O引脚的外部信号;定时器模式——计数源来自相对稳定的系统时钟信号B.4种工作方式:方式0、方式1、方式2、方式31.方式0:计数长度13位,THx高8位加法计数器,TLx低5位加法计数器,由TRx控制其启动与停止作为计数器时:计数值N=213-初值x=8192-初值x (★加法计数器溢出TFx置1后,需要用程序重装初值,除了方式2不需要)作为定时器时:定时时间T=计数值N*机器周期Tcy=(8192-初值x)Tcy2.方式1:计数长度16位,N=216-x=65536-x T=N*Tcy=(65536-x)*Tcy3.方式2:计数长度8位,自动重装初值,TLx做8位加法计数器,THx做初值寄存器N=28-x=256-x T=N*Tcy=(256-x)*Tcy4.方式3:定时器T0被拆成两个独立8位计数器TL0(C/T)、TH0(T);T1的控制位(TF1、TR1)被TH0占用,所以T1只能作为串行口发送/接收波特率发生器C.初始化:方式寄存器TMOD、控制寄存器TCON2.控制寄存器TCON:控制定时器/计数器Tx的启动、停止、以及溢出标志3.初始化步骤:1,根据要求,设置方式寄存器TMOD,即设置工作方式;2,根据要求,计算初值TC;3,初始化计数器,将初值TC装入TH、TL;4,如果允许定时器溢出中断,则初始化中断优先级IP和中断控制寄存器IE;5,启动定时器,即置位TRx4.初值计算:计数器初值TC=最大计数值M-任务要求计数值C定时器初值TC=M-T/TcyⅡ单片机的串行口:其通信方式分为两种——并行通信、串行通信A.并行通信:数据以成组的方式在多条并行通道中传输,成本高,速度快,效率高,干扰大,可靠性差B.串行通信:各数据位一位接一位按顺序传送,成本低,速度慢,远距离传输1.串行通信分类:分为异步通信(每个设备都有自身的时钟信号,频率一致)和同步通信(所有设备使用一个时钟,优点是速度快、效率高,缺点是要求发送时钟和接收时钟保持严格同步2.串行通信数据传送方式:单工、半双工、全双工、多工3.串行通信的检错方法:奇偶校验、校验和、循环冗余码校验4.串行通信的纠错方法:海明码校验、交叉奇偶校验5.波特率:串行通信系统中用来衡量通信的快慢程度6.串行通信的2大技术问题:数据传送、数据转换7.双全工串行通信口UART组成:串行接收缓冲器SBUF、串行发送缓冲器SBUF、输入移位寄存器、接收控制器、发送控制器、门电路8.串行口控制寄存器SCON:定义串行口工作方式和接收/发送控制(同上表)方式0的波特率:波特率=f osc/12 (固定)方式2的波特率:波特率= f osc *(2SMOD/64) (固定)方式1、3的波特率:波特率=(2SMOD/32)*定时器T1的溢出率=(2SMOD/32)*( f osc/12)/( 2K-TC)第六章MCS-51单片机系统扩展技术46 应用系统组成:单片机(最小系统)、三总线、外围电路A.最小系统:利用单片机本身的资源,无须外加其他功能性的器件所形成的控制系统B.三总线:数据总线、地址总线、控制总线1.数据总线:用来和单片机交换数据2.地址总线:用来接收单片机的地址编码数据,译码后指向内部的对应存储单元(数据传送对象的唯一性)3.控制总线:用来接收单片机的控制信息(数据传送方向的确定性和传送时刻的可控性)C.外围电路的连接方法:数据线、控制线、地址线1.数据线连接:P0口和外围芯片的数据线对应引脚直接相连2.控制线连接:将PSEN非连接到外围芯片的输出有效信号OE非,RD非连接外围芯片的OE非或RD非,WR非连接外围芯片的WE非或WR非3.地址线连接:满足2个条件:片选(指定某芯片工作)、字选(指定该芯片内部存储单元)a.字选:从最低位开始连接外部芯片最低位,n条地址总线对应2n个存储单元b.片选:余下的高位地址线用来选择芯片——线选法(几个片就利用几根线)、译码法(全译码——所有高位地址线参与译码、部分译码——部分高位地址线参与译码)第八章MCS-51单片机典型外围接口技术47 模-数转换A/D:把模拟信号转换成数字信号的过程(ADC模-数转换器分类——计数式、双积分式、并行式、逐次逼近式)ADC主要技术指标:分辨率——表明ADC能够分辨出最小的模拟输入量值的能力;转换时间——表征ADC器件工作速度;转换误差——相对误差指实际输出的各种转换点偏离理想特性的误差48 数-模转换D/A:把数字量转换成模拟信号的过程(DAC数-模转换器)DAC主要技术指标:分辨率=U/(2n-1),对输出模拟电压或电流最小变化量的控制能力;转换精度——表明了实际值与理论值之间的最大误差;建立时间——转换速度49 键盘接口实现的功能:及时检测并判断是否有键按下;确认按下键;据键值转入相应键处理程序;消除抖动干扰(★消抖方法:软件延时,在判断有键按下后延时10ms,再读该键状态,以确认该键按下,在判断键松开后也做延时确认松开)键盘分类:编码、非编码/独立式、矩阵式(两步扫描法——先列后行)50 显示器:LED、LCD。

相关文档
最新文档