单片机的8位低功耗单片机方式及特点:待机方式和掉电方式,及这两种8位低功耗单片机方式进入和退出的方法。

当前位置: >>
单片机原理与应用―基于实例驱动和Proteus仿真
单片机原理与应用―基于实例驱动和Proteus仿真作者:李林功 ? 出版社:科学出版社 ? 定价:34.00元 ? ISBN:5? 第01章 单片机基础1.1 概述 1.1.1 单片机的发展 1.1.2 单片机的特点 1.1.3 单片机的应用 1.2 MCS-51单片机硬件基础 1.2.1 结构 1.2.2 封装 1.2.3 引脚 1.2.4 输入/输出端口 1.2.5 存储器 1.2.6 时钟 1.2.7 时序 1.2.8 复位 1.2.9 低功耗 1.3 跑马灯Proteus仿真 习 题 一、单片微机的发展1.1 单片微机的概念 单片微机是单片微型计算机SCMC(Single Chip Micro Computer)的译名简称,在国内也常简称为“ 单片微机” 或“单片机” 。它包括中央处理器CPU、随机存储器RAM、 只读存储器ROM、中断系统、定时器/计数器、串行口和I/O 等等. 1.2 单片微机发展历程 1970年微型计算机研制成功之后,随着大规模集成电路的 发展又出现了单片微机,并且按照不同的发展要求,形成了二 个独立发展的分支。美国Intel公司1971年生产的4位单片微机 年生产的雏型8位单片微机8008,特别是1976年 MCS-48单片微机问世以来,在短短的二十几年间,经历了四次 更新换代,其发展速度大约每二三年要更新一代、集成度增加 一倍、功能翻一番。发展速度之快、应用范围之广,已达到了 惊人的地步。它已渗透到生产和生活的诸领域,可谓“无孔不 入”。1976年Intel公司首先推出MCS-48系列单片微型计算机。 它已包括计算机的三个基本单元,已成为真正意义的单片微机, 赢得了广泛的应用,为单片微机的发展奠定了基础,成为单片 微机发展进程中的一个重要阶段。 在MCS-48单片微机成功的刺激下,许多半导体公司和计 算机公司争相研制和发展自己的单片微机系列,有Motorola公 司的,Zilog公司的Z-8系列,Rockwell公司的6501、 6502等,此外,日本的NEC公司、日立公司及EPSON公司等, 也都相继推出了各具特色的单片微机品种。 对工业控制、智能仪表等诸多较高层次的应用领域,8位单片 微机系列在性能、价格两方面有较好的兼顾。 尽管目前单片微机的品种很多,但其中最具典型性的当属 Intel公司的MCS-51系列单片微机。此外,它还具有品种全、 兼容性强、软硬件资料丰富等特点。直到现在MCS-51仍不失 为单片微机中的主流机型。由于8位单片微机的高性能价格比, 估计近十年内,8位单片微机将仍是单片微机中的主流机型。 在8位单片微机之后,16位单片微机也有很大发展。例如, 1983年Intel公司推出的MCS-96系列单片微机。与MCS-51相 比,MCS-96不但字长增加一倍,而且还具有 4路或 8路的10 位 A/D 转换功能,此外,在其它性能方面也有一定的提高。飞 利浦公司推出了与80C51在源码级兼容性的16位单片微机,即 80C51XA(每一条80C51指令可以1∶1地被翻译成一条XA指令, 仅XCHD指令除外),用户不需投入很大的软件开销和人员就能 较大的提高产品性能。80C51XA具有的高性能包括:执行速度 快、支持高级语言(比如C语言) 、支持实时多任务执行、易于 形成派生系列产品、地址宽度可变(用户可以方便地将外部地址 线宽度选定为12位、16位、20位、24位等等。在工业控制产品、 高档智能仪表、彩色复印机、录像机等应用领域. 1.3 单片微机的发展趋势单片微机正朝多功能、多选择、高速度、低功耗、低价格、 扩大存储容量和加强I/O功能及结构兼容方向发展。今后的发展 趋势不外乎在以下几个方面:⑴ 多功能 在单片微机中尽可能多的把应用系统中所需要的存储器、各 种功能的I/O口都集成在一块芯片内,即外围器件内装化,如把 LED、LCD或VFD显示驱动器集成在8位单片微机中,如把A/D、 D/A、乃至多路模拟开关和采样/保持器也集成在单片微机芯片中, 从而成为名副其实的单片微机。 ⑵ 高性能 为了提高速度和执行效率,在单片微机中开始使用RISC体 系结构、并行流水线操作和DSP等的设计技术,使单片微机的指 令运行速度得到大大提高,其电磁兼容等性能明显地优于同类型 的微处理器。 ⑶ 全盘CMOS化趋势 单片微机采用二种半导体工艺生产,HMOS工艺即高密度 短沟道MOS工艺,具有高速度和高密度;CHMOS工艺即互补 金属氧化物的HMOS工艺,除具有HMOS的优点外,还具有 CMOS工艺的低功耗特点。如8051的功耗为630mw,而80C51 的功耗仅120mw。 从第三代单片微机起开始淘汰非CMOS工艺。目前,数字 逻辑电路和外围器件等都已普遍CMOS化。 ⑷ 推行串行扩展总线推行串行扩展总线可以显著减少引脚数量,简化系统结构。 随着外围器件串行接口的发展,单片微机的串行接口的普遍化、 高速化,使得并行扩展接口技术日渐衰退。 1.4 80C51系列单片微机8051单片微机是美INTEL公司在1980年推出的MCS-51系 列单片微机的第一个成员,MCS是INTEL公司的注册商标。 凡INTEL公司生产的以8051为核心单元的其它派生单片微机 都可称为MCS-51系列,有时简称为51系列。其它公司生产的 以8051为核心单元的其它派生单片微机却不能称为MCS-51系 列,只能称为8051系列。8051系列泛指所有公司(也包括 INTEL公司)生产的以8051为核心单元的所有单片微机。 80C51系列单片微机包括Intel公司的MCS-51单片微机,又 包括了以8051为核心单元的世界许多公司生产的单片微机,比 如PHILIPS(飞利浦公司) 的83C552及51LPC系列等、 SIEMENS(西门子公司) 的SAB80512等、AMD(先进微器件公 司) 的8053等、OKI(日本冲电气公司) 的MSM80C154等、 ATMEL公司的Flash单片微机89C51等、DALLAS公司的 DS5000/DS5001等、华邦公司的W78C51及W77C51等。 从MCS-48单片微机发展到如今的新一代单片微机,大致 经历了三代。如以 Intel 8位单片微机为例,这三代的划分大致 如下。 第一代:以MCS-48系列单片微机为代表。属于低性能单片微 机阶段。第二代:以MCS-5l系列的单片微机为代表。可以看出,这一代单片微机主要的技术特征是为单片微机配置 了完善的外部并行总线(AB、DB、CB)和具有多机识别功能 的串行通信接口(UART),规范了功能单元的特殊功能寄存 器(SFR)控制模式及适应控制器特点的布尔处理系统和指令 系统,为发展具有良好兼容性的新一代单片微机奠定了良好的 基础。 第三代:以80C51系列单片微机为代表。 它包括了 Intel公司发展MCS-51系列的新一代产品,如 8 XC152、80C51FA/FB、80C5lGA/GB 石 XC451、8XC452, 还 包 括 了 Phlips、Siemens、ADM、Fujutsu、OKI、ATMEL 等 公司以80C51为核心推出的大量各具特色、与MCS-51兼容的 单片微机。 80C51系列单片微机是在MCS-51的HMOS基础上发展起 来的,它们具有CHMOS结构。部分厂家所生产的80C51系列或 与之相兼容的单片微机的特点列于表中。 从表中可以看出,80C51系列单片微机保留了MCS-51单 片微机的所有特性,内部组成基本相同。80C51系列单片微机 增设了两种可以用软件进行选择的低功耗工作方式:空闲方式 和掉电方式。 Philips公司80C51系列的部分单片微机 ATMEL公司89C51系列的部分单片微机 华邦公司W78C51和W77C51系列的部分单片微机 1.5 单片微机的应用按照所使用单片微机的类型不同,单片微机应用系统结构 可分成总线方式和非总线方式。 在总线方式的应用系统中,单片微机都具有完善的外部扩 展总线,如并行总线(AB、DB、CB)、串行通信总线(如 UART),通过这些总线可方便地扩展外围单元、外设接口等。 采用总线方式的应用系统多属较复杂的工控系统、智能仪表、 监测系统,或满足这些应用而构成的多机与网络系统。总线方 式的单片微机在不使用外部并行总线时,外部并行总线引脚可 作为I/O口用。在掩膜用户程序时,还可要求将这些 I/O口改造 成具有各种驱动能力的 I/O口。非总线方式的应用系统(如 80C51系列中的 83C751、 87C751,83C752、WC752,Motorola 的MC68HC05系列中的 许多产品)省去了外部并行总线,可构成各种小封装芯片,有 限的引脚 可提供更多的用户I/O口,以使应用系统的芯片数量 最少。 采用非总线方式的应用系统多属小型控制器、测控单元、 单元仪表等。以下大致介绍一些典型的应用领域和应用特点。l .家用电器领域 国内各种家用电器已普遍采用单片微机控制取代传统的控 制电路,做成单片微机控制系统,如洗衣机、电冰箱、空调机、 微波炉、电饭堡、电视机、录像机及其它视频音像设备的控制 器。2.办公自动化领域比如一台PC机可能嵌入了10个单片微机,如控制键盘、 鼠标、显示器、CD-ROM、声卡、打印机、软/硬盘驱动器、调 制解调器等。 现代办公室中所使用的大量通信、信息产品,如绘图仪、 复印机、电话、传真机等,多数都采用了单片微机。 3.工业自动化领域的在线应用 如工业过程控制、过程监测、工业控制器及机电一体化 控制系统等,许多都是以单片微机为核心的单机或多机网络系 统。如工业机器人的控制系统是由中央控制器、感觉系统、行 走系统、擒拿系统等节点构成的多机网络系统。而其中每一个 小系统都是由单片微机进行控制的。 4.智能仪器仪表与集成智能传感器领域应用单片微机来对传统的仪器仪表行业的产品进行“ 更 新换代” ,提供了非常理想的的条件。目前各种变送器、电 气测量仪表普遍采用单片微机应用系统替代传统的测量系统, 使测量系统具有各种智能化功能,如存储、数据处理、查找、 判断、联网和语音功能等。 5.汽车电子与航空航天电子系统 通常在这些电子系统中的集中显示系统、动力监测控制 系统、自动驾驭系统、通信系统以及运行监视器(黑匣子) 等,都要构成冗余的网络系统。比如一台RMW-7系列宝马轿 车就用了63个单片微机,大部分还是16位单片微机。 单片微机的应用正从根本上改变着传统的控制系统设计 思想和设计方法。从前必须由模拟电路或数字电路实现的大 部分控制功能,现在已能使用单片微机通过软件方法实现了。 这种以软件取代硬件,并能提高系统性能的控制技术,称之 为微控制技术。这标志着一种全新概念的建立。 二、单片机的基本结构与工作原理本章介绍MCS-51单片机的结构及各部分的功能。如内 部结构框图、外部封装形式、标准封装的管脚分布及功能、 单片机的三总线;存储器系统、专用功能寄存器等。 知识点包括: (1)单片机结构框图 (2)基本配置 (3)三总线的组成 (4)存储器系统功用 (5)片内RAM功能分区(6)SFR功能 (7)复位、时钟及指令周期。 2.1 单片机的基本组成结构 2.1.1 结构框图
2.1.2 51单片机的基本资源配置: 。一个8位的中央处理器CPU 。一个128字节的内部数据存储器RAM 。一个4KB程序存储器ROM 。一个1.2-12MHZ片内振荡器及时钟电路,(C51/52全静态工作 为0HZ到24MHZ) 。有32条可编程I/O端口 。可寻址64K外部数据存储器和64K外部程序存储器 。2个16位可编程的定时器计数器 。5个中断源,两级优先嵌套中断结构 。一个全双工通用可编程串行通讯口 2.1.3 51系列单片机的资源扩展:待机(休眠)方式及掉电工作方式 3级程序存储器锁定加密功能(89C51/52) WDT看门狗监视定时器(WATCH DOG) SPI总线(串行外围接口总线) I2C总线(芯片间的串行总线) CAN总线(设备间网络系统总线) PWM(脉宽调制器) 内置的模数转换器ADC 内置的数模转换器DAC 2.3 80C51的引脚功能和结构 2.3.1 引脚功能和三总线 1.封装形式和内部结构:有双列直插DIP40(Dual In-line Package),贴片封装LCC40(Lead Chip Carrier),扁平封 装QFP44(Quad Flat Package)。 2.管脚功能:4个8位并行I/O口P0-P3;电源/地Vcc/Vss,振荡 器输入输出XTAL1/XTAL2、地址锁存及编程脉冲输入 ALE/PROG、复位RST、片内/外ROM选择及编程电源 EA/Vpp、外部程序存储器选通PSEN(读程序)。 QFP44 封装PLCC44封装
T2/P1.0 T2EX/P1.1 P1.2 P1.3P1.4P1.5 P1.6 P1.7QFP40封装RST/VPDRXD/P3.0 TXD/P3.1 INT0/P3.2INT1/P3.3T0/P3.4 T1/P3.5 WR/P3.6 RD/P3.7 XTAL2 XTAL1 VSS1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2051 52 (DIP40)40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21VCCP0.0P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA/VDD ALE/PROG PSEN P2.7 P2.6P2.5P2.4 P2.3 P2.2P2.1P2.0 P0口(数据/低位地址) (复位)RST (存储器选择) EA (读外ROM) PSEN (地址锁存) ALE P2口(高位地址) 80C51 (晶振入)XTAL1 (晶振出)XTAL2 VCC GND P3口(双功能口) P1口(I/O口) RST EA ALE PSEN XTAL1 XTAL2P0P18数据 总线 地址 总线P0 P0+P28P2P38控制 RST/ALE总线 EA /PSEN MCS-51 WR RD I/O口8MCS-51第二 功能 端口 INT0/INT1 T0 T1P1口 RXD/TXD 2.3.2 MCS51单片机的三总线结构: 数据总线DBDD由P0口组成8位的数据总线。 地址总线ABDD从P0口输出低8位地址,经373锁存器锁存 作为低位地址A0-A7,由P2口输出高8位地址A8-A15组成 A0-A15共16位的地址总线。 控制总线CBDD由RST,/EA,/PSEN,ALE,以及/WR, /RD等组成。 2.4 I/O口基本功能: P0口DD数据总线,又作为低8位地址总线; P1口DD普通I/O口 P2口DD高8位地址总线,与P0口输出经锁存的低8位地址组 成16位AB。 P3口DD双功能口,除普通I/O口外,其管脚P3.0~P3.7的第 二功能依次为:串口接收RXD端(P3.0), 串口发送TXD端(P3.1), 外部中断/INT0端(P3.2), 外部中断/INT1端(P3.3), 定时器T0输入端(P3.4), 定时器T1输入端(P3.5)、 写/WR信号输出端(P3.6),读/RD信号输出端(P3.7)。 P0口? P0口是一个多功能的8位口,可以字节访问也可位访问,其 字节访问地址为80H,位访问地址为80H~87H。⒈ 位结构P0口位结构原理图见图。 1、在P0口作输出口用时,若P0.i输出1,输出锁存器的Q端为0, 下拉FET截止,这时P0.i为漏极开路输出;若P0.i输出0,输 出锁存器的Q端为0,下拉FET导通,P0.i输出低电平。 2、在P0口作输入口用时,为了使P0.i能正确读入数据,必须 先使P0.i置1。这样,下拉FET也截止,P0.i处于悬浮状态。A 点的电平由外设的电平而定,通过输入缓冲器读入CPU。这时 P0口相当于一个高阻抗的输入口。 P0口的功能 ⑴ 作I/O口使用。 相当于一个真正的双向口:输出锁存、输入缓冲,但输 入时需先将口置1;每根口线可以独立定义为输入或输出。它 具有双向口的一切特点。 区别(与其它口):输出时为漏极开路输出,与NMOS 的电路接口时必须要用电阻上拉,才能有高电平输出;输入 时为悬浮状态,为一个高阻抗的输入口。 ⑵ 作地址/数据复用总线用。 此时P0口为一个准双向口。但是有上拉电阻,作数据输 入时,口也不是悬浮状态。作地址/数据复用总线用。作数 据总线用时,输入/输出8位数据D0~D7;作地址总线用时, 输出低8位地址A0~A7。当P0口作地址/数据复用总线用之 后,就再也不能作I/O口使用了。 P1口P1口是一个8位口,可以字节访问也可按位访问,其字节访 问地址为90H,位访问地址为90H~97H。⒈ 位结构和工作原理P1口的位结构如图所示。 包含输出锁存器、输入缓冲器BUF1(读引脚)、BUF2(读锁 存器)以及由 FET晶体管 Q0与上拉电阻组成的输出/输入驱动 器。 P1口的特点 ?输出锁存器,输出时没有条件; ? 输入缓冲,输入时有条件,即需要先将该口设为输入状态, 先输出1; ?工作过程中无高阻悬浮状态,也就是该口不是输入态就是输 出态。 具有这种特性的口不属于“真正”的双向口,而被称为“准” 双向口。 P2口P2口是一个多功能的8位口,可以字节访问也可位访问, 其字节访问地址为A0H,位访问地址为A0H~A7H。⒈ P2口位结构和工作原理P2口位结构原理图示。 P2口的功能P2口是一个双功能的口: ⑴ 作I/O口使用时,P2口为一准双向口。 ⑵ 作地址输出时,P2口可以输出程序存储器或片外数据存储 器的高8位地址,与P0输出的低地址一起构成16位地址线,从 而可分别寻址64KB的程序存储器或片外数据存储器。地址线 是8位一起自动输出的。 ⒊ P2口使用中注意的问题 ⑴ 由于P2口的输出锁存功能,在取指周期内或外部数据存储 器读、写选通期间,输出的高8位地址是锁存的,故无需外加 地址锁存器。 ⑵ 在系统中如果外接有程序存储器,由于访问片外程序存储 器的连续不断的取指操作,P2口需要不断送出高位地址,这 时P2口的全部口线均不宜再作I/O口使用。 ⑶ 在无外接程序存储器而有片外数据存储器的系统中,P2口 使用可分为两种情况: ? 若片外数据存储器的容量<256 B:可使用“MOVX A,@ Ri”及“MOVX @Ri,A”类指令访问片外数据存储器,这时 P2口不输出地址,P2口仍可作为I/O口使用; ? 若片外数据存储器的容量&256 B:这时使用“MOVX A, @DPTR”及“MOVX@DPTR,A”类指令访问片外数据存储 器,P2口需输出高8位地址。在片外数据存储器读、写选通 期间,P2口引脚上锁存高8位地址信息,但是在选通结束后, P2口内原来锁存的内容又重新出现在引脚上。 使用“MOVX A,@Ri”及“MOVX @Ri,A”类访问指 令时,高位地址通过程序设定,只利用P1、P3甚至P2口中的 某几根口线送高位地址,从而保留P2口的全部或部分口线作 I/O口用。 P3口P3口是一个多功能的8位口,可以字节访问也可位访问, 其字节访问地址为B0H,位访问地址为B0H~B7H。 ⒈ 位结构与工作原理 P3口的位结构原理如图所示。 P3口的功能P3口是一个多功能口。 ⑴可作I/O口使用,为准双向口。 既可以字节操作,也可以位操作;既可以8位口操作,也可 以逐位定义口线为输入线或输出线;既可以读引脚,也可以读 锁存器,实现“读一修改一输出”操作。 ⑵ 可以作为替代功能的输入、输出。 替代输入功能:P3.0 ―― RXD,串行输入口。P3.2――外部中断0的请求。 P3.3――外部中断1的请求。 P3.4――T0,定时器/计数器0外部计数脉冲输入。 P3.5――T1,定时器/计数器1外部计数脉冲输入。 替代输出功能: P3.l――TXD,串行输出口。 P3.6―― 外 部 数 据 存 储 器 写 选 通 , 输 出 , 低 电 平 有 效 。 P3.7――外部数据存储器读选通,输出,低电平有效。 四个并行口的操作(以P1口为例)⑴ 字节操作和位操作 CPU对于 P1口不仅可以作为一个 8位口(字节)来操作,也 可以按位来操作。 有关字节操作的指令有: 输出: MOV P1,A ;P1←AMOV P1,#data ;P1←#data MOV P1,direct ;P1←direct输入: MOV A,P1MOV direct,Pl;A←P1;direct←Pl 有关位操作的指令有: 置位、清除:SETB P1.i CLR Pl.i ;P1.i←1 ;P1.i←0输入、输出:MOV P1.i,CMOV C,P1.i 判跳: JB JBC 逻辑运算: ANL P1.i,rel P1.i,rel;P1.i←CY;CY←P1.i ;P1.I=1,跳转 ;P1.i=0,跳转且 ;P1.i=0C,P1.i ;CY←(P1.i? CY) ;CY←(P1.i+CY)ORL C,P1.i P1.i中的i=0,…7。 P1口不仅可以以8位一组进行输入、输出操作,还可以 逐位分别定义各口线为输入线或输出线。例如:ORL P1,#0 0 0 0 0 0 1 0 B可以使P1.l位口线输出l,而使其余各位不变。ANL P1,#1 1 1 1 1 1 0 1 B 可以使P1.1位线输出0,而使其余各位不变。 ⑵ 读引脚操作和读锁存器操作 从P1口的位结构图中可以看出,有两种读口的操作:一 种是读引脚操作,一种是读锁存器操作。 ? 在响应CPU输出的读引脚信号时,端口本身引脚的电平 值通过缓冲器BUF1进入内部总线。这种类型的指令,执行之 前必须先将端口锁存器置1,使A点处于高电平,否则会损坏 引脚,而且也使信号无法读出。 这种类型的指令有:MOV A,P1MOV direct,P1;A←P1;direct←P1? 在执行读锁存器的指令时,CPU首先完成将锁存器的值通过 缓冲器BUF2读入内部,进行修改,然后重新写到锁存器中去, 这就是“读一修改一写”指令。 这种类型的指令包含所有的口的逻辑操作(ANL、ORL、 XRL)和位操作(JBC、CPL、MOV、SETB、CLR等)指令。 ⑶ P1口的多功能线 在80C52中,P1.0和P1.1口线是多功能的,即除作一般双 向I/O口线之外,这两根口线还具有下列功能: P1.0―定时器/计数器2的外部输入端T2; P1.1―定时器/计数器2的外部控制端T2EX。 2.5 I/O口的结构及应用特性:(1)所有32个端口均带输出锁存器,都可作普通I/O口用。 (2)P0口为双向口,可驱动8个TTL门,P1-P3为准双向 口,只能驱动4个TTL门。 (3)P0口作普通I/O口时需外接上拉电阻。 (4)所有I/O作输入口用时需“先写1后读”。 (5)对于8×52单片机,其P1.0、P1.1的第二功能为定时 器、计数器T2输入/控制端。 三、 存储器结构和地址空间3.1 结构形式和一般特点 80C51单片机存储器包括程序存储器ROM和数据存 储器RAM。 51单片机存储器的结构形式采用程序存储器和数据存 储器相互独立的哈佛结构。控制程序和暂存数据有各自的 寻址空间、寻址方式(用不同指令)和控制系统。 PC机采用程序存储器和数据存储器合用同一个存储 器系统的普林斯顿或冯.诺依曼结构。
(1)物理上分成4个存储器空间: 片内程序存储器ROM、片外程序存储器ROM; 片内数据存储器RAM、片外数据存储器RAM。 (2)逻辑上分成3个地址空间: 片内、片外统一编址的64KB程序存储器空间; 片内256B的数据存储器地址空间; 片外64KB的数据存储器空间。 (3)在寻址方式上分成:直接寻址和间接寻址方式。 (4)不同的存储空间采用3种不同的指令寻址: 对于程序存储器查表,用MOVC指令寻址; 对片内RAM传送数据用MOV指令寻址; 对片外RAM读、写用MOVX指令寻址。 2、存储器的一般特点: 单片机存储器的基本特性和用途名 用 称 途 程序存储器ROM 存放指令、常数、表格、公式等 程序固化在芯片内、只读、不丢失 片内/片外(内小,外大) 直接寻址64K范围(可另扩) 片内外统一编址 硬件:EA=“1”片内,“0”片外 查表用MOVC指令 容 量 片内0KB、1KB-32KB, 片外2KB-64KB 工艺结构 接口形式 掩膜OM/EPROM/EEPROM/OTP 片外ROM通常为并行总线 数据存储器RAM 存放缓冲数据、记录数据信息 数据通电保持、断电丢失(EEPROM 保持不丢失) 片内/片外(内小,外大) 直接寻址范围64K(可另扩) 片内/片外的RAM地址重叠 软件:片内用MOV指令 片外用MOVX指令 片内128B/256B, 片外2KB-64KB DRAM/SRAM/EEPROM(FLASH) 片外RAM并行总线/I2C总线存放形式 物理空间 寻址范围 编址形式 控制方式 3.2 程序存储器(Program memory--Read only memory) 一.特点: (1)ROM类型有:掩膜ROM、EPROM、E2 PROM、 FLASH ROM、OTPROM。分成片内和片外两部分,由EA 引脚接高(内)或接地(外)决定。 片内外统一编址,最大寻址范围64KB。 (2)程序存储器特定的复位入口地址 MCS-51单片机复位/中断入口地址入口地址 H 000BH BH 0023H 名 称 程序计数器PC地址 外部中断INT0入口地址 定时、器T0溢出中断入口地址 外部中断INT1入口地址 定时/计数器T1溢出中断入口地址 串行口接收/发送中断入口地址002BH定时/计数器T2溢出中断入口地址(仅52单片机有) 二.程序运行控制操作有: 复位、顺序执行、转移控制和中断: (1)顺序执行是最基本最简单的程序执行方式。 (2)复位和中断由相应的硬件结构控制,它们有固定的程序 入口地址(见表2-2)。通过各种调用、返回、有条件和无条 件转移来实现程序的转移控制。 (3)查表程序是通过两条指令来完成: MOVC A,@A+DPTR ;将(DPTR)中的地址加(A)中 的偏移量,得到该单元内容存A。寻址范围为64K,称长查表 指令。 MOVC A,@A+PC;以PC为基址寄存器,A为偏址数据, 相加后的数作为地址,取出该地址单元的内容送累加器A。表 格只能放在0-255字节范围之内。称短查表指令。 3.3 数据存储器一.特点: 分成片内/外RAM,内外地址重叠。 片外RAM寻址范围0-64KB,只能用MOVX指令间接 寻址。 片内有128B/256B的RAM,用MOV指令寻址。 00H-7FH片内128BRAM空间为80C51固有片内RAM, 可以直接或间接寻址; 80H-FFH高128B空间仅80C×2单片机有,只能间接寻 址。 二.片内RAM功能划区*:片内RAM的00H-7FH地址空间的功能划区:物理上分 成工作寄存器区,位寻址区,数据缓冲区三个区域,应用 中分成工作寄存器区,位寻址区,数据缓冲区和堆栈区。 (1)00H-1FH为工作寄存器区,该区分成4组,每组都有 R0-R7八个工作寄存器(但地址不同)。由PSW.3(RS0)和 PSW.4(RS1)两位来选区。 (2)20H-2FH为位寻址区,共16个字节单元128位,位地 址00H-7FH位。 (3)30H-7FH为数据缓冲区; (4)可浮动的堆栈区设在07H为栈底的片内RAM中合适 的区域。
片内存储器的功能分区、地址分配、复位状态及操作方法功能单元 共4组工 字节地址 00H-07H 复位状态 指向0组 操 作 方 法 由PSW.4,PSW.3置位状态对R0-R7四选其一作寄存器R0-R7 堆 栈08H-0FH10H-17H 18H-1FH 07H以上 20H-2FH 栈底07H 随 机例:CLR RS0(PSW.3); SETB RS1(PSW.4);选择第2组工作寄存器 通过堆栈指针SP赋值,例: MOV SP, #60H;将栈底设在60H单元。 位地址:00H-7FH共128位 软件置位STEB bit,清零CLR bit 例: SETB 08H;置位21H字节单元的D0位 CLR 22H ;将24H字节单元的D2位清0位寻址区数据缓冲区*30H-7FH随 机直接与A进行传送、运算、转移等操作 片内RAM中可位寻址区的字节地址与位地址对应关系字节地址 2FH 2EH 2DH 2CH 2BH 2AH 29H 28H 27H 26H 25H 24H 23H 22H 21H 20H 位地址 7FH 77H 6FH 67H 5FH 57H 4FH 47H 3FH 37H 2FH 27H 1FH 17H 0FH 07H 位地址 7EH 76H 6EH 66H 5EH 56H 4EH 46H 3EH 36H 2EH 26H 1EH 16H 0EH 06H 位地址 7DH 75H 6DH 65H 5DH 55H 4DH 45H 3DH 35H 2DH 25H 1DH 15H 0DH 05H 位地址 7CH 74H 6CH 64H 5CH 54H 4CH 44H 3CH 34H 2CH 24H 1CH 14H 0CH 04H 位地址 7BH 73H 6BH 63H 5BH 53H 4BH 43H 3BH 33H 2BH 23H 1BH 13H 0BH 03H 位地址 7AH 72H 6AH 62H 5AH 52H 4AH 42H 3AH 32H 2AH 22H 1AH 12H 0AH 02H 位地址 79H 71H 69H 61H 59H 51H 49H 41H 39H 31H 29H 21H 19H 11H 09H 01H 位地址 78H 70H 68H 60H 58H 50H 48H 40H 38H 30H 28H 20H 18H 10H 08H 00H 3.4 SFR特殊功能寄存器的运行管理模式 3.4.1 SFR清单: 1、地址分配:片内RAM 80H-FFH中分布在21个单元 (52系列单片机有26个); 2、主要功能:主要用于对片内13个单元操作管理。包括 4个端口、5个中断(含两个外中断、两个定时器/计数器、 串口)、SP、DPTR、PSW、PCON。 3、尚有许多保留单元待作它用。
3.4.2.SFR的功能和操作方式:1.SFR的三类功能:用于片内功能单元的管理、控制、 运行状态指示: * 作控制寄存器的SFR由软件写入控制字,对单片机功 能单元进行控制; * 作标志寄存器的SFR显示程序执行后功能单元的状态; * 作特定用途的寄存器用如DPTR、SP、SBUF等,用 MOV指令送入数据。 2. 寻址方式:只能直接寻址,分为可位寻址和只能直接 按字节寻址两类。 3.复位状态:SP=07H, P0-P3=FFH,SBUF为随机数,其 它均为00H。
?符号寄存器 名 称 堆栈 寄存器51单片机SFR中的不可位寻址寄存器SFR中各位地址、位标志及位功能 直接地 址 复位状态D7D6D5D4D3D2D1D0 81H00HSPDPL数据指针低8 位 数据指针高8 位 电源控制寄 存器 定时器方式 寄存器 T0低8位 寄存器82H00HDPH83H00HPCONSMOD--------------GF1GF0PDPLD87H0×××0000BTMODGATEC/ /TM1M0GATEC/ /TM1M089H00HTL08AH00HTL1T1低8位 寄存器8BH00HTH0T0高8位寄存 器 T1高8位寄存 器 串行口数据 缓冲器8CH00HTH18DH00HSBUF99H××H ?B B寄存器 F7 B.7 ACC 累加器ACC.751单片机SFR中的可位寻址寄存器F6 B.6ACC.6F5 B.5ACC.5F4 B.4ACC.4F3 B.3ACC.3F2 B.2ACC.2F1 B.1ACC.1F0 B.0ACC.0F0H00HE0H00HE7HPSW 程序 状态字 T2CON 定时器T2寄 存器 中断优先寄 存器 P3口 中断允许寄 存器 P2口 串行口控制 寄存器 P1口 定时器控制 寄存器 P0口 CY D7HTF2E6HAC D6HEXF2E5HF0 D5HRCLKE4HRS1 D4HTCLKE3HRS0 D3HEXEN2E2HOV D2HTR2E1H---D1HC/T2E0HP D0HCP/RL2D0H00HB8H×××00000BCFH - BFHCEH - BEH B6H - AEH A6H SM1 9EH 96H TR1 8EH 86HCDH PT2 BDH B5H ET2 ADH A5H SM2 9DH 95H TF0 8DH 85HCCH PS BCH B4H ES ACH A4H REN 9CH 94H TR0 8CH 84HCBH PX1 BBH B3H ET1 ABH A3H TB8 9BH 93H IE1 8BH 83HACH PT1 BAH B2H EX1 AAH A2H RB8 9AH 92H IT1 8AH 82HC9H PX0 B9H B1H ET0 A9H A1H TI 99H 91H IE0 89H 81HC8H PT0 B8H B0H EX0 A8H A0H RI 98H 90H IT0 88H 80H 80H FFH 90H 88H FFH 00H A0H 98H FFH 00H B0H A8H FFH 0××00000B B8H×××00000BIPP3 IEB7H EA AFH A7H SM0 9FH 97H TF1 8FH 87HP2 SCONP1 TCONP0 3.5 布尔(位)处理器CY (1)功能:面向控制的位处理器,以CY作位累加器,进 行位传送、判断转移、布尔运算等。 (2)操作对象:片内RAM中20H-2FH单元的00H-7FH位, SFR中可位寻址位。 (3)位操作指令:置位SETB,清零CLR,取反CPL,传 送MOV,位转移JC/JNC、JB/JNB、JBC,位逻辑运算 (ANL/ORL/CPL ),位输入输出等。 四、 时钟电路及CPU时序4.1. 时钟电路:片内有时钟电路,一般只需外接晶振和温度 补偿电容就可以工作。 补偿电容的容量范围约20PF-50PF之间。80C51的时钟振荡电路
4.2 时序定时单位: 定时单位按一个振荡周期为1个最小单位,即P1节拍和 P2节拍,2个节拍组成一个状态周期S;6个状态周期S1-S6组 成1个机器周期。即: 1个机器周期=6个状态周期=12个振荡周期=2个地址 锁存周期。 1个状态周期由P1、P2节拍组成。 也就是说振荡周期的12分频是机器周期、6分频为地址 锁存ALE周期、 2分频为状态周期S。 例:若单片机的振荡频率为12MHZ,则振荡周期为1/12 微秒,1个机器周期为1微秒。 若单片机的振荡频率为6MHZ,则振荡周期为1/6微秒, 1个机器周期为2微秒。 4.3 指令时序: 单片机严格安照时序执行每一条指令。CPU读取一条指 令后,根据该指令需要几个机器周期才能完成,该条指令编 译后产生的机器代码是1个字节还是2个字节,分成不同的指 令形式,有: 单字节单周期指令; 单字节双周期指令; 双字节单周期指令; 三字节双周期指令; 单字节四周期指令等几种形式。
五、单片机的复位电路和复位方式(1)复位的作用使单片机初始化操作,这时PC=0000H,即从 0000H单元开始运行程序。 (2)复位信号: 复位时在RST端必须保持2个机器周期以上的高电平才能 保证可靠复位。 (3)复位电路: 有上电复位、按键复位、外部脉冲复位几种形式。 (4)复位状态: 单片机上电复位后(冷复位)RAM内容为随机数,但按 键或外脉冲触发复位 (也称为SFR复位或热复位)时RAM数据 保持不变。复位后PC及中断入口地址见后面程序存储器小节 的表。
六、低功耗工作方式6.1 两种低耗方式: C51单片机具有两种低功耗的节能工作方式:待机方 式和掉电保护方式,由特殊功能寄存器PCON中的PD和 IDL位控制。SMOD - - - GF0 GF1 PD IDLPCON格式: SMOD: 波特率加倍位,SMOD=1 波特率加倍; PD: 掉电位,PD=1 时掉电; IDL: 待机位,IDL=1时待机; GF1: 通用标志位; GF0: 通用标志位。
6.2 待机和掉电时的工作状态(1)待机方式:待机时CPU不工作,但振荡器仍 向中断系统提供时钟。 退出待机方式:通过中断事件或复位退出。退 出时PCON.0位被硬件自动清零。 (2)掉电保护方式:掉电时振荡器停振,单片机 停止一切工作,只有片内RAM的内容被保存。掉电 电压可以降到VCC=2V。 退出掉电方式:通过有硬件(上电)复位,在 复位端保持2个机器周期以上的高电平。 流水灯Proteus仿真?阅读附录C的内容,按照附录C的方法步骤,仿真实 现“流水灯”Proteus仿真。
? ? ? ? ? ? ? ? ??? ? ? ? ??? ? ? ? ??? ? ? ?“流水灯”C语言参考程序 #include&reg51.h& //预处理命令,定义SFR的头文件 #include&intrins.h& //声明了void_nop_void #define uchar unsigned char //定义缩写字符uchar #define uint unsigned int //定义缩写字符uint void DelayMS(uint x) //延时函数 { //定义变量i的数据类型 while(x--) //外循环 { for(i=0;i&120;i++); //这是一个循环 } } void main() //主函数 { //定义变量i的数据类型 P2=0 //设置P2口的初始值 while(1) { for(i=0;i&7;i++) //8只发光二极管,依次循环移动7次 { DelayMS(500); //调用延时 P2=_crol_(P2,1); //P2的值向左循环移动 } } }
更多搜索:
赞助商链接
All rights reserved Powered by
文档资料库内容来自网络,如有侵犯请联系客服。}

我要回帖

更多关于 低功耗单片机选型 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信