收藏 分享(赏)

单片机接口技术及应用.ppt

上传人:精品资料 文档编号:11107178 上传时间:2020-02-07 格式:PPT 页数:596 大小:7.56MB
下载 相关 举报
单片机接口技术及应用.ppt_第1页
第1页 / 共596页
单片机接口技术及应用.ppt_第2页
第2页 / 共596页
单片机接口技术及应用.ppt_第3页
第3页 / 共596页
单片机接口技术及应用.ppt_第4页
第4页 / 共596页
单片机接口技术及应用.ppt_第5页
第5页 / 共596页
点击查看更多>>
资源描述

1、单片机接口技术及应用,2020/2/7,2,第一章 概述,学习目标:1掌握数制及其转换方法。 2了解数据表示方法及其编码。 3了解单片机基础知识。,2020/2/7,3,一、什么是单片机? 单片机就是单片微型计算机, 是将计算机的中央处理器(CPU)、存储器(ROM,RAM)、输入/输出(I/O)接口等集成在一小块硅片上的微型机。,1.1 单片机的发展及特点,2020/2/7,4,单片机组成框图,RAM,I/O接口 电路,CPU,时 钟,定时器/ 计数器,ROM,2020/2/7,5,二、单片机发展史,单片机属于微型机,微型计算机的发展形成两大分支: 1、独立使用式微机( PC机):PC机系统

2、全力实现海量高速数据处理,兼顾控制功能。 2、嵌入式微机单片机:单片机系统全力满足测控对象的测控功能,兼顾数据处理能力。单片机作为工业控制和数据处理的计算机,它的结构与指令功能都是按照工业控制要求设计的,也被称为“微控制器”、 “微处理器”(Micro-controller, Micro-processor)。主要有:4位、8位、16位、32位等,2020/2/7,6,单片机发展概况,1976-1978 初级8位单片机 Intel MCS-48 系列 1978-1983 高档8位单片机 Intel MCS-51系列: -51子系列:8031/8051/8751 -52子系列:8032/8052

3、/8752 低功耗型80C31高性能型80C252廉价型89C2051/1051,1983- 90年代初 16位单片机 Intel MCS-96 系列8098/8096、80C198/80C196 90年代初-至今 16位单片机高档32位单片机,2020/2/7,7,三、单片机的特点及应用,突出特点存储器结构 计算机有两种存储结构:哈佛结构:程序存储器和数据存储器分开。普林斯顿结构:程序存储器和数据存储器合并。单片机采用哈佛结构体系,2020/2/7,8,采用哈佛体系结构 采用面向控制的指令系统 引脚功能服用 片内RAM作寄存器 类型齐全 功能通用 具有三高优势(集成度高、可靠性高、性价比高)

4、。,三、单片机的特点及应用,2020/2/7,9,三、单片机的特点及应用,单片机主要应用于工业检测与控制、计算机外设、智能仪器仪表、通讯设备、家用电器等。 特别适合于嵌入式微型机应用系统。 单片机开发系统有单片单板机和仿真器。实现单片机应用系统的硬、软件开发。,2020/2/7,10,1946-1958 第一代电子管计算机。磁鼓存储器,机器语言、汇编语言编程。,1958-1964 第二代晶体管计算机。磁芯作主存储器, 磁盘作外存储器,开始使用高级语言编程。,1964-1971 第三代集成电路计算机。使用半导体存储器,出现多终端计算机和计算机网络。,1971- 第四代大规模集成电路计算机。出现微

5、型计算机、单片微型计算机,外部设备多样化。,1981- 第五代人工智能计算机。模拟人的智能和交流方式。,一、 发展概况,1.2 计算机基础知识,2020/2/7,11,二、计算机发展趋势,微型化 便携式、低功耗 巨型化 尖端科技领域的信息处理,需要超大容量、高速度 智能化 模拟人类大脑思维和交流方式,多种处理能力 系列化、标准化 便于各种计算机硬、软件兼容和升级 网络化 网络计算机和信息高速公路 多机系统 大型设备、生产流水线集中管理(独立控制、故障分散、资源共享),2020/2/7,12,三、微型计算机系统组成,2020/2/7,13,运算器:实现算术运算或逻辑运算 包括:算术逻辑单元ALU

6、、累加器A、暂存寄存器TR、 标志寄存器F或 PSW、通用寄存器GR,四、微型计算机组成,中央处理器 CPU运算器和控制器集成在一个芯片上,控制器:中枢部件,控制计算机中的各个部件工作 包括:指令寄存器 IR、指令译码器ID、程序计数器PC、定时与控制电路,2020/2/7,14,存储器:记忆,由存储单元组成。包括:ROM、 RAM,总线BUS :在微型计算机各个芯片之间或芯片内部之间传输信息的一组公共通信线。 包括:数据总线DB:双向,宽度决定了微机的位数。地址总线AB:单向,决定CPU的寻址范围。控制总线CB:单向,I/O接口:数据输入输出。包括:输入接口、 输出接口,2020/2/7,1

7、5,五、计算机主要技术指标,字长: CPU能并行处理二进制的数据位数8位机、16位机、32位机和64位机。,内存容量:存储单元能容纳的二进制数的位数容量单位:1K=210=1024,1M=220=1KK 8K、64K、16M、64M。,运算速度:CPU处理速度时钟频率、主频、每秒运算次数6MHz、12MHz、24MHz、100MHz、300MHz。,内存存取时间:内存读写速度50nS 、70nS 、200nS 。,2020/2/7,16,一、进位计数制使用有限个基本数码来表示数据,按进位的方法进行计数称为进位计数制。包含两大要素:基数和位权 基数:用来表示数据基本数码的个数J,此数后必须进位。

8、位权:数码在表示数据时所处的数位所具有的固定值J i。 简称“权”。,1.3 数制及其转换,2020/2/7,17,1、 十进制D 符号集:09 规则:逢十进一。例 1234.5=1103 +2102 +3101 +4100 +510-1 加权展开式以10为基数,各位系数为09。103 102 101 100 10-1 位权一般表达式: ND= dn-110n-1+dn-210n-2 +d0100 +d-110-1+,2、二进制B 符号集:0、1 规则:逢二进一。,3、十六进制H 符号集:09、AF 规则:逢十六进一。,2020/2/7,18,1、十进制用于计算机输入输出,人机交互。二进制为机

9、器中的数据形式。十六进制用于表示二进制数。 2、不同进位制数以下标或后缀区别,十进制数可不带下标。如:101、101D、101B、101H、101H,二、进位计数制的说明,2020/2/7,19,1、十进制数转换成二、十六进制数,整数转换法 “除基取余”:十进制整数不断除以转换进制基数,直至商为0。每除一次取一个余数,从低位排向高位。,三、不同进位计数制之间的转换,2020/2/7,20,十进制数转换成二、十六进制数,小数转换法 “乘基取整”:用转换进制的基数乘以小数部分,直至小数为0或达到转换精度要求的位数。每乘一次取一次整数,从最高位排到最低位。举例:,2. 0.625转换成十六进制数 0

10、.625 16 = 10.0 0.625 = 0.AH3. 208.625 转换成十六进制数208.625 = D0.AH,2020/2/7,21,先展开,然后按照十进制运算法则求和。 举例: 1011.1010B=123+121+120+12-1+12-3=11.625 DFC.8H=13162+15161+12160+816-1= 3580.5,2、其他进制数转换成十进制数,2020/2/7,22,最高位为符号位,0表示 “+”,1表示“”。数值位与真值数值位相同。 原码表示简单直观,但0的表示不唯一,加减运算复杂。 2、反码 正数的反码与原码相同 负数的反码符号不变,数值按位取反,有符号

11、数通常使用三种表示方法:,1、原码,机器中,数的符号用“0”、“1” 表示。 最高位作符号位 “0”表示“+”,“1”表示“-”。,1.4 带符号数的表示方法,2020/2/7,23,3、补码,正数的补码表示与原码相同。 负数补码的符号位为1,数值位等于反码加1。,补码表示的优点:0的表示唯一,加减运算方便。Y-X=Y+-X补计算机中的数均采用补码表示!,2020/2/7,24,例:求十进制数876的BCD码876BCD = 1000 0111 0110,1、 BCD码 二进制代码表示的十进制数。,8421 BCD码,1.5 编码,2020/2/7,25,2、美国标准信息交换码ASCII码,用

12、于计算机与计算机、计算机与外设之间传递信息。,2020/2/7,26,位:Bit 数据最小单位 字节:Byte 8位二进制数定义为一字节 字长:组成计算机一个字的位数8位机其一个存储单元表示0255范围的数8位机、16位机、32位机和64位机。,1.6 数据单位及存储形式,2020/2/7,27,第二章 单片机的硬件结构,2.1 单片机整体结构,2.2 外部引脚功能,2.4 定时/计数器,2.3 存储器组织,2020/2/7,28,2.1 单片机整体结构,第二章 单片机的硬件结构,2020/2/7,29,2.1 MCS-51单片机整体结构,硬件配置基本配置: 1. 8位CPU 2. 片内ROM

13、/EPROM、RAM 3. 片内并行 I/O接口 4. 片内16位定时器/计数器 5. 片内中断处理系统 6. 片内全双工串行I/O口,不同型号MCS-51单片机CPU处理能力和指令系统完全兼容,只是存储器和I/O接口的配置有所不同。,2020/2/7,30,MCS-51单片机内部结构,2020/2/7,31,一、中央处理器CPU主要指运算器、控制器决定单片机的主要性能指标:字长、运行速度、数据处理能力,中断和实时控制能力。,2020/2/7,32,1、运算器进行算术和逻辑运算 ,8位主要包括算术逻辑单元ALU、累加器ACC、暂存器、程序状态字PSW、B寄存器主要任务: 算术运算 逻辑运算 位

14、操作 数据处理 利用程序状态寄存器PSW表述当前运行状态,2020/2/7,33,1)算术逻辑单元ALU即加法器,是核心部件,进行算术逻辑运算,其中乘(MUL)、除(DIV)运算是执行时间最长的指令。2)累加器ACC累加器ACC是最常用的专用寄存器。进入ALU作算术操作和逻辑操作的操作数很多来自ACC,操作的结果也常送回ACC。3)B寄存器是ACC的辅助寄存器,在乘除时,ACC不够用便使用B寄存器。,2020/2/7,34,2、控制器控制器是CPU的大脑中枢,它以定时控制逻辑为中心,按照人们预先给定的计算步骤,即预先编写好的已经输入到计算机存储器中的程序发出一系列控制信号,控制计算机各个部件的

15、工作,如运算、存储等。包括指令寄存器IR、指令译码器ID、数据指针DPTR、程序计数器(指针)PC、堆栈指针SP、以及控制电路(时序电路、中断控制部件、微操作控制部件)。,2020/2/7,35,1)程序计数器PC(程序指针)16位的地址指针,专门用来控制指令执行顺序的寄存器,其中的内容总是下一条要执行的指令的地址。可以对64K字节的程序存储器直接寻址。复位时,PC=0000H,使程序从0单元开始执行。通常单片机每取一个字节机器码,PC就自动加1,从而保证了指令的顺序执行。转移指令可强行改变PC的内容。,2020/2/7,36,2)时序指按照指令功能发出一系列在时间上有一定次序的信号,控制和启

16、动一部分逻辑电路完成某种操作。CPU需要一个时钟,在XTAL1和XTAL2上接石英晶体和微调电容构成振荡器。频率为412MHz,2020/2/7,37,3)指令寄存器IRID是8位寄存器,用于存放从ROM中取出的指令码。而且每条指令的第一个字节一定是操作码,其后的指令码可以是操作数或操作码。指令译码器IDID可以对指令码进行译码,即判断出存放的是操作命令(操作码)还是操作数(操作数可以是操作地址或立即操作数),以进行下面的工作。这些工作是自动完成的。,2020/2/7,38,4)微操作控制部件逻辑门电路,将ID信号和时序向片内各部件送高低电平。中断控制部件自动完成“中断申请”、“中断相应”、“

17、恢复断点”等工作。,2020/2/7,39,二、内部RAM单片机内部数据RAM共256字节。分为低128B和高128B地址空间。低128B地址空间的RAM常称为片内RAM;高128B地址空间的RAM 称为特殊功能寄存器SFR。但SFR18个寄存器只占用了21B供用户使用。其他的107B系统保留。,2020/2/7,40,2020/2/7,41,1)片内RAM(007FH) 工作寄存器区:(32B) 字节地址:00H1FH位寻址区:(16B) 字节地址:20H2FH 位地址为:00H7FH数据缓冲区:(80B) 字节地址:00H7FH 一般使用30H7FH,2020/2/7,42,三、片内ROM

18、ROM用于存放程序、原始数据及表格。8051:片内4K掩膜ROM8031:片内ROM8751:片内4K EPROM,2020/2/7,43,四、定时器/计数器MCS-51系列单片机典型产品8051等单片机内部有2个可编程的16位定时器/计数器T0、T1最大计数脉冲个数:165536,2020/2/7,44,五、并行I/O口MCS51系列单片机有4个8位并行I/O口:P1、P2、P3共占了32根I/O引脚 单片机扩展时,这些I/O引脚又作为扩展总线用。P0口作为地址/数据总线,分时输出低8位地址和传送8位数据;P2口作为高8位地址总线;P3口也具有第二功能。这是由接口的特殊结构所决定的。,202

19、0/2/7,45,六、串行口完成单片机和其他计算机或通讯设备之间的串行数据通讯。MCS51系列P3口的RXD(P3.0)和TXD(P3.1)构成,2020/2/7,46,中断系统是计算机的重要指标之一。,某人看书 执行主程序 日常事务 电话铃响 中断信号如INT=0 中断请求 暂停看书 暂停执行主程序 中断响应 书中作记号 当前PC入栈 保护断点 电话谈话 执行中断程序 中断服务 继续看书 返回主程序 中断返回,七、中断系统,日常生活中的中断与计算机中断的比较:,2020/2/7,47,2020/2/7,48,八、布尔处理器MCS51单片机内含有一个布尔处理器,是单片机CPU中运算器的一个重要

20、组成部分。它实际上是一个完整的1位微处理器,这个1位机有自己的CPU、位寄存器、I/O口和指令集。可提供17条位操作指令,硬件有自己的“累加器”(进位位C)和自己的位寻址RAM和I/O空间,所以是一个独立的位处理机。MCS51单片机把8位机和1位机复合在一起,发挥各自的长处,这是它的一大优点。,2020/2/7,49,2.2 外部引脚功能,第二章 单片机的硬件结构,2020/2/7,50,MCS51系列单片机采用40个引脚的双列直插式塑料封装的芯片。共可分为四个部分: 1、电源2个 2、外接晶体振荡器2个 3、控制信号引脚4个 4、I/O引脚32个,2020/2/7,51,一、主电源引脚VDD

21、:接5V电源VSS:接地端一般VDD 和VSS之间应接高频和低频滤波电容。,2020/2/7,52,二、外接晶体振荡器引脚XTAL1:芯片内部振荡电路(单级反相放大器)输入端 XTAL2:芯片内部振荡电路(单级反相放大器)输出端振荡频率为晶振频率(1.212MHz),另外需两个30pF左右的电容以微调频率,2020/2/7,53,1、接石英晶体和微调电容 2、接外部时钟,MCS51单片机的振荡器有内部和外部两种方式。,2020/2/7,54,时序:时间的先后顺序,控制器按照指令功能发出一系列在时间上有一定次序的信号,控制和启动一部分逻辑电路,完成某种操作。机器周期12个时钟周期(振荡周期) 有

22、6个状态(S1S6),一个状态为2个振荡周期,分为P1和P2节拍,一般算术和逻辑指令发生在P1期间,寄存器之间的传输发生在P2期间。设单片机工作在12M晶振,则时钟周期为1/12微秒,一个机器周期121/121微秒 一些指令完成较快用一个机器周期;一些较慢,用2个机器周期;有两个指令(MUL、DIV)用4个机器周期。 指令周期:执行一条指令的时间。(单周期指令,双周期指令等),2020/2/7,55,三、控制信号1、RST/VPD:复位/掉电时内部RAM的备用电源输入端 复位端RST : 启动时,需要复位,使CPU各部件处于确定的初始状态。正常工作状态(振荡器稳定),该引脚上出现持续24个振荡

23、周期(即两个机器周期)以上的高电平,单片机就可完成系统复位操作 。,2020/2/7,56,MCS-51复位后内部寄存器状态,2020/2/7,57,备用电源输入端VPD:当无VCC时使用,使内部RAM供电以实现掉电保护。,2020/2/7,58,2、ALE/PROG:地址锁存允许/编程脉冲输入。 ALE:地址锁存允许信号片外存储器作数据存取时,ALE为低8位地址锁存允许输出信号,在其下降沿将从P0口输出的低8位地址锁存到地址锁存器。以1/6振荡频率(即1/2机器周期)周期性输出 PROG:在对8751片内EPROM编程时,编程脉冲由此输入。,2020/2/7,59,3、EA/VDD:访外允许

24、/编程电压输入、8031中EA必须接地。8051/8751中EA1,单片机使用片内ROM/EPROM(由PC值决定);EA0,单片机片内程序存储器失效,而 使用片外程序存储器。、VDD 对8751片内EPROM编程时,此脚接编程电压。(+21V+25V),2020/2/7,60,4、 PSEN:外部程序存储器读选通信号它与ALE配合,使P0口完成地址线和数据线的功能。当访问片内ROM、RAM时无效。,2020/2/7,61,5、四个8位并行I/O口,MCS-51单片机有4个8位并行I/O口,共占了32根I/O引脚,单片机扩展时,这些I/O引脚又作为扩展总线用。其中P0口作为地址/数据总线,分时

25、输出低8位地址和传送8位数据;P2口作为高8位地址总线;P3口也具有第二功能。这是由接口的特殊结构所决定的。每一个口都包含一个锁存器,一个输出驱动器和两个(P3口为3个)输入缓冲器。各口的结构也有些差异,下面分别介绍。,2020/2/7,62,一、并行I/O口的功能结构,(一)P1口,1、接口结构,图2.15,接口结构中锁存器起输出锁存作用,8位锁存器组成特殊功能寄存器P1。,2020/2/7,63,一、并行I/O口的功能结构,(一)P1口,2、接口功能,P1口只有一种功能通用输入输出接口。,2020/2/7,64,一、并行I/O口的功能结构,(二)P2口,P2口一位结构如下图所示,与P1相比

26、,多了一个多路开关MUX,因此P2具有双重功能:通用I/O口和高8位地址总线口。,1、接口结构,2020/2/7,65,(二)P2口,(1)地址总线 单片机扩展时,“控制”信号使 MUX 打向右边,内部的地址线经反相器与输出驱动器相连,于是内部“地址”信号可以由P2口引脚输出,此地址信号为高8位地址。,2、接口功能,一、并行I/O口的功能结构,2020/2/7,66,(二)P2口,(2)通用I/O接口作为通用I/O口时,“控制”信号使 MUX 打向左边,这时P2口电路结构与P1口相同,其功能和用法亦与P1口相同,负载能力也相同。,2、接口功能,一、并行I/O口的功能结构,2020/2/7,67

27、,(三)P3口,P3口一位的结构如下图所示,与P1口相比多了一个与非门和一个输入缓冲器,所以它除了可作为一般I/O口外,还具有第二功能。,1、接口结构,一、并行I/O口的功能结构,2020/2/7,68,(三)P3口,(1)通用I/O接口 作为通用I/O接口时,“第二功能输出”线为“1”,接口的电路结构与P1口相同,所以功能和用法均与P1相同。,2、接口功能,一、并行I/O口的功能结构,2020/2/7,69,(三)P3口,(2)第二功能 当P3口作为第二功能使用时,各位定义如下,2、接口功能,P3.0 RXD(串行输入通道) P3.1 TXD(串行输出通道) P3.2 INT0(外中断0输入

28、端) P3.3 INT1(外中断1输入端),一、并行I/O口的功能结构,2020/2/7,70,(三)P3口,2、接口功能,P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) P3.6 WR(外部数据存贮器写选通) P3.7 RD(外部数据存贮器读选通),可见有些信号为输出,有些信号为输入,为使第二功能信号能顺畅的输入或输出,该口锁存器的状态必须为“1”。,一、并行I/O口的功能结构,2020/2/7,71,(四)P0口,1、接口结构,P0口的一位的结构如下图所示。其中输出驱动电路由一对FET(场效应管)组成,其工作状态由输出控制电路控制。P0口可作为通用I/O接口,也可作

29、为地址/数据总线口。,一、并行I/O口的功能结构,2020/2/7,72,(四)P0口,2、接口功能,(1)地址/数据总线这时“控制”信号为1,多路开关MUX向上,地址/数据信号反相后经多路开关送到下一个场效应管的栅极。如果地址/数据信号为1,则下一个场效应管截止上一个场效应管导通,引脚为高电平;若地址/数据信号为0,则下一个场效应管导通上一个场效应管截止,引脚为低电平,即地址/数据信号可顺利的到达引脚。,一、并行I/O口的功能结构,2020/2/7,73,(四)P0口,2、接口功能,(2)通用I/O接口此时“控制”信号为“0”,多路开关MUX向下,输出驱动器处于开漏状态,故需外接上拉电阻,这

30、种情况下,电路结构与P1相同,所以也是一个准双向口,当要作为输入时,必须先向口锁存器写“1”。,一、并行I/O口的功能结构,2020/2/7,74,2020/2/7,75,2020/2/7,76,2.3 存储器组织,第二章 单片机的硬件结构,2020/2/7,77,一、存储器空间分类,根据作用分类:程序存储器ROM数据存储器RAM根据位置分类:片内存储器片外存储器,构成了4个结构独立的存储器空间,2020/2/7,78,1、片内程序存储器(片内ROM)2、片内数据存储器(片内RAM)3、片外ROM扩展4、片外RAM扩展,8051、8751有4KB的片内ROM(0000H0FFFH),共有256

31、B 007FH:128B片内RAM 80HFFH:18个特殊功能寄存器(占21B),最多64K片外ROM,地址为0000HFFFFH或者1000HFFFFH,地址:0000HFFFFH,注:8051、8751芯片根据EA状态,2020/2/7,79,2020/2/7,80,MCS-51(8051)存储结构如图所示,2020/2/7,81,片内外统一编址的64KB的程序存储器地址空间片内片外的程序存贮器在同一逻辑空间中,地址从0000HFFFFH,共有64K字节范围片内256B数据存储地址空间片内数据存贮器为00HFFH片外64KB的数据存储器地址空间片外为0000HFFFFH,从用户使用的角度

32、,即从逻辑上划分3个存储器地址空间:,2020/2/7,82,0000H,FFFFH,0000H,FFFFH,ROM,内RAM,外RAM,00H,FFH,寄存器区,位寻址区,数据缓冲区,SFR,20H,30H,80H,E0H,A,2020/2/7,83,二、区分四个独立空间的方法,1、使用MOV、MOVX、MOVC三个不同的指令分别 区分片内RAM、片外RAM和ROM2、片外ROM使用控制信号PSEN片外RAM使用控制信号RD、WR3、EA引脚接地,从片外ROM开始0000H0FFFH 位于片外ROMEA引脚接高电平,从片内ROM开始0000H 0FFFH位于片内ROM4、ROM和片外RAM一

33、定要用16位地址片内RAM 和SFR,只能使用8位地址,2020/2/7,84,三、程序存储器ROM,最多为64K,用于存放程序和表格 使用PC作为程序地址指针 编址方式:片内、片外ROM统一编址(0000HFFFFH) 片内(如有,4K)为低地址(0000H0FFFH),片外为高地址 加电复位后,PC0000H,当PC超出片内,则会自动转向片外ROM EA引脚控制PC值(8031和8051不同) MOVC用来读取ROM中存放的表格常数 分为两个部分: 1、系统使用区:其中0000H0002H为系统复位入口,其中必有一条存放PC的跳转指令(转至主程序);0003H002AH为各个中断源处理程序

34、使用 2、用户使用区:其余地址空间,2020/2/7,85,四、片内RAM,单片机的数据存储器分为片内RAM和片外RAM,两者单独编址(片内为00FFH,片外为0000FFFFH)。一般需要外部扩展时才使用最多64K的片外RAM。 通常将单片机256B的内部数据存储器RAM分为两个部分,一个是片内RAM(占128B) ,一个是特殊功能寄存器SFR(占另外128B的21B)。 片内RAM的128B地址为007FH,可分为四个大区: 工作寄存器区、位寻址区、数据缓冲区、堆栈区,2020/2/7,86,2020/2/7,87,片内RAM 工作寄存器区: 字节地址:00H1FH 位寻址区: 字节地址:

35、20H2FH 位地址为:00H7FH 数据缓冲区/堆栈区: 字节地址:00H7FH 一般使用30H7FH,2020/2/7,88,RAM空间分配示意图,2020/2/7,89,2020/2/7,90,1、工作寄存器区,001FH单元,共32B,常用来存放操作数和中间结果,可以使用指令系统中有工作寄存器的专用指令,多为单字节指令,执行速度快,方便。 分为4个寄存器区: 0区:0007H 1区:080FH2区:10H17H 3区:181FH 每个区有8个单元,都用R0R7编号。 在任何时刻CPU只能使用其中一个区(当前寄存器组),即将这个区的8个单元作为工作寄存器,其他区仍是一般的RAM。具体使用

36、哪个区,由程序状态寄存器PSW中的RS1、RS0两位的状态来决定。,2020/2/7,91,2、位寻址区,20H2FH,共16个单元,128位。 为布尔处理区 各有自己的位地址,统一编址为00H7FH(1个地址代表1位) 既可以字节寻址,也可以位寻址。 有17条位操作指令,常进行置位(SETB)、清零(CLR)、取反(CPL),2020/2/7,92,3、数据缓冲区,30H7FH用户RAM区,用于存放运算数据和结果。,2020/2/7,93,4、堆栈区,用户可以指定内部RAM的最高若干字节作为堆栈区(至7FH),指针为SP例:MOV SP,#5FH 则从607FH单元为堆栈区,2020/2/7

37、,94,堆栈,堆栈是在片内RAM中临时开辟的暂存区; 作用:保护现场、保护断点 针对:子程序调用、中断操作 在响应中断或子程序调用时,发生入栈操作,入栈的是16位的PC值,PSW值并不自动入栈。 特点:先进后出,后进先出 指令:入栈PUSH,出栈POP 堆栈区每个单元不能按字节任意访问,PUSH和POP都是对堆栈的栈顶单元进行的。为了指示栈顶的地址,必须使用堆栈指针SP。 SP始终指向堆栈最后压入或即将弹出的数据单元,即指向栈顶。 SP实际为一个8位寄存器,它的内容是栈顶存储单元的地址。,2020/2/7,95,进栈PUSH:先SP+1再写入数据 例:PUSH ACC 初始SP=2FH SP+

38、1即现在SP30H,然后将ACC的内容写入30H单元 出栈POP:先读数据再SP1 进栈、出栈有两种方式: 1、自动方式:执行子程序、中断响应时。 2、指令方式:PUSH、POP,关于进栈和出栈,2020/2/7,96,关于堆栈区的划定,为保护足够的寄存器内容,需要堆栈有一定的深度,即有足够的容量。 原则上堆栈区可以是片内RAM任意区域,只要SP赋予不同的初值,则SP7FH都是堆栈区。但具体应用时栈区设置应和RAM的分配统一考虑,工作寄存器和位寻址区域分配好后再指定堆栈区域。 系统复位后,SP07H,则实际堆栈从08H开始。 通常SP设在30H以后,即在用户RAM(30H7FH)之间开辟。 例

39、 MOV SP ,3FH即40H7FH为堆栈区,2020/2/7,97,5、特殊功能寄存器SFR,反映单片机的状态,存储对定时器、中断、串行口、I/O口等的控制设定,使这些控制具有可编程性。 共18个,其中3个16位的寄存器,故占用21B,分布于80HFFH,可读可写,可视为专用RAM。 均可以进行字节寻址,其中有11个可以位寻址(字节地址能被8整除),2020/2/7,98,特殊功能寄存器位地址,2020/2/7,99,1、ACC 地址为0E0H,8位累加器,在指令中用A表示,可以位寻址 2、B寄存器 地址为0F0H,8位,可位寻址,主要用于乘除法,也可以作为一个通用的8位数据缓冲单元。 3

40、、SP 地址为81H,8位堆栈指针,只能字节寻址,复位值为07H。 4、数据指针DPTR 16位寄存器,包括两个8位寄存器DPL和DPH,地址分别为82H和83H。只能字节寻址。也可以作为两个8位寄存器来处理。 用于访问外部RAM时作为地址指针,也可访问ROM中的表格常数。 5、I/O端口P0P3 为引脚P0P3引脚的锁存器。可位寻址。,2020/2/7,100,6、其他:串行口数据缓冲器SBUF; 串行口控制寄存器SCON; 定时/计数器T0、T1; 定时/计数器方式控制TMOD; 中断允许寄存器IE; 定时器控制TCON; 电源方式控制PCON。7、程序状态寄存器PSW(下面具体研究),2

41、020/2/7,101,注:,SFR中的寄存器都有复位值,用到的寄存器在复位后应考虑到是否重新赋值;SFR可视为专用RAM,有11个可以位寻址(可以由布尔处理器控制),共21单元,其余107单元用户不能使用;8052另有3个SFR,占据5个单元。,2020/2/7,102,五、程序状态寄存器PSW,地址0D0H,PSW是一个8位寄存器,可位寻址,它包含了许多程序状态信息。其各位的含义如图所示:其中PSW.1位系统保留,用户不能使用。PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,2020/2/7,103,进位标志Cy:算术逻辑指令时,最高位D7有

42、进(借)位,则Cy=1,否则Cy=0;在布尔处理器中,它起着“位累加器”的作用。17条布尔处理指令多数是针对CY来完成的。程序中写成C。,2020/2/7,104,辅助进位标志AC:加(减)法运算时,如果低半字节的最高位D3有进(借)位,则AC=1,否则AC=0;AC在作BCD码运算而进行二十进制调整时有用。,2020/2/7,105,用户标志FO:是用户定义的一个状态标志。可通过软件对它置位、清零;在编程时,也常测试其状态进行程序分支。,2020/2/7,106,工作寄存器区选择位RS1、RS0: 可借软件置位或清零,以选定4个工作寄存器区中的一个区投入工作。,2020/2/7,107,溢出

43、标志OV:作有符号数加法、减法时由硬件置位或清除,以指示运算结果是否溢出。,2020/2/7,108,奇偶标志P:每执行一条指令,单片机都能根据A中1的个数的奇偶自动令P置位或清零:奇为1,偶为0。此标志对串行通信的数据传输非常有用,通过奇偶校验可检验数据传输的正确与否。,第二章 单片机的硬件结构,2.4 定时/计数器,2020/2/7,110,在测控技术中,往往需要定时检测某个参数,或按一定的时间间隔来进行某种控制。还有一些控制是按对某种事件的计数结果进行的。因此几乎所有单片机内部都设置了定时/计数器,以简化微机测控系统的设计。MCS-51系列单片机典型产品8051等有两个16位定时器/计数

44、器T0,T1;8052等单片机有三个16位定时器/计数器T0、T1和T2。它们都可以用作定时器或外部事件计数器。,2020/2/7,111,一、工作原理,定时器/计数器实际上是加1计数器 当它对外部事件进行计数时,由于频率不固定,此时称之为计数器; 当它对内部固定频率的机器周期进行计数时称之为定时器。,2020/2/7,112,计数原理 每输入一个脉冲,计数器加1,当加到计数器各位都为1时,再输入一个脉冲,计数器各位全变为0,溢出,中断标志置1(SFR中TCON的TF0、TF1),从而向CPU申请中断。由预置计数值就可以算出从加1计数器启动到计满溢出所需的时间,即定时时间。 8位256;13位

45、8192;16位65536,2020/2/7,113,对外部脉冲计数时,当脉冲有一个高电平到低电平“1”“0”跳变时,计数器加1,且在每个机器周期的S5P2采样外部输入,若前一个机器周期采样值为1,后一个机器周期采样值为0,则计数器加1。由于识别一个从1到0的负跳变信号需要两个机器周期(24个振荡周期),所以最高的计数频率为系统时钟频率的1/24;两个输入脉冲的最小间隔应不小于两个机器周期。又因为一个机器周期对信号采样一次,因此输入信号的电平宽度至少应持续一个机器周期。,2020/2/7,114,定时原理 输入脉冲不是外部脉冲源,而是一个晶体振荡器的脉冲源。,2020/2/7,115,对于16

46、位计数器,最大定时时间是216个脉冲的时间。则定时时间T=(216X)*T T:输入脉冲周期,T=12/f s(f为晶振频率1.212MHz)如为12MHz,则T1s X:计数器初值(有程序输入) 对于12MHz晶体,T1s,最大定时T=65.536ms;对于6MHz晶体,T2s,最大定时T=131ms 常使用:X=216T/T,2020/2/7,116,例: 系统时钟频率为12MHz,要产生1ms定时,求初值X T=12/12=1s 若为16位计数器 X=X=2161000/1=64536=0FC18H 若为13位计数器 X=X=2131000/1=81921000=7192=1C18H 不

47、能采用8位计数器,2020/2/7,117,二、与定时/计数器有关的SFR,它是由6个专用寄存器构成的:其中TH0、TL0构成16位计数器T0,TH1、TL1构成16位计数器T1,而TMOD、TCON为两个定时器共用,用来选择工作方式和控制启停。,2020/2/7,118,1、计数器T0、T1,各有2个8位计数器,构成2个16位计数器T0 :TH0、TL0 T1 :TH1、TL1 不可以位寻址,只能按字节分两条指令读写16位码,而不能用一条指令读写双字节。例:X初值为645360FC18H MOV TH0,#0FCH MOV TH1,#18H,2020/2/7,119,T0与T1有两种功能:(

48、由C/T决定)计数:T0对P3.4/T0管脚送入的脉冲计数;T1对P3.5/T1管脚送入的脉冲计数。 C/T=1定时:每个机器周期使之加1,初值的大小决定定时时间的长短C/T=0 复位值均是00H T0有4种工作方式:方式0、方式1、方式2、方式3 T1有3种工作方式:方式0、方式1、方式2 前3种工作方式完全相同 其功能及工作方式由TMOD和TCON来决定,2020/2/7,120,2、方式寄存器TMOD,8位SFR,地址为89H 不可位寻址 低4位用于控制T0,高4位用于控制T1,含义相同。,2020/2/7,121,M1、M0:工作方式选择位C/T:定时或计数功能选择位=1:外部计数工作

49、方式,对P3.4、P3.5脉冲计数=0:定时方式,每一个机器周期加1,2020/2/7,122,GTAE:门控位=1:借用P3.2、P3.3参与启动和停止T0、T1 只有该引脚与TCON中TCON.4(TR0)、TCON.6(TR1)都为高电平,才启动T0、T1=0:T0、T1的运行与否只取决于TCON中TCON.4(TR0)、TCON.6(TR1),2020/2/7,123,3、定时/计数器控制寄存器TCON,8位寄存器,可位寻址 低4位用于外部中断INT0、INT1控制 高4位用于T0、T1控制,2020/2/7,124,TR0(TCON.4):T0的运行控制位 当GATE=0时,TR0=0则T0停止运行;TR0=1时T0允许运行 TF0(TCON.5):T0溢出兼中断申请标志 T0溢出时,TF0=1并提出中断申请,CPU响应中断申请后,TF0自动清零 TR1、TF1同TR0、TF0,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报