第9章 具有MCS-51内核的单片机简介_第1页
第9章 具有MCS-51内核的单片机简介_第2页
第9章 具有MCS-51内核的单片机简介_第3页
第9章 具有MCS-51内核的单片机简介_第4页
第9章 具有MCS-51内核的单片机简介_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第九章具有MCS-51内核的单片机简介介绍目前流行的以MCS-51为内核的单片机产品,如:ATMEL公司的AT89C系列

PHILIPS公司的8XC51系列

WINBOND公司的W77/78系列本章内容学习目的了解基于IP(IntellectualProperty)

内核的新型单片机开发技术

掌握目前国内常用的AT89C51、8XC51、W78E51等系列单片机的应用技术

IP(IntellectualProperty)内核模块是一种预先设计好的甚至已经经过验证的具有某种确定功能的集成电路、器件或部件常用的IP内核模块有各种不同的CPU:32/64位CISC/RISC架构的CPU或8/16位单片机(如8051等)、32/64位DSP(如320C30)等等。概述

ATMEL、Philips、TI、WINBOND等公司通过Intel授权用其MCS-51的IP内核模块结合自己的特长开发出有个性的与IntelMCS-51兼容的单片机。一般这类单片机比MCS-51更受用户欢迎。

AT89系列单片机是该公司最早推出的功能最简单的一个系列,该系列所有单片机都是基于80C51(或80C52)内核的,但内含有AT公司最令人注目的独具特色的FLASH技术的程序存储器。9.1ATMEL公司的主要AT89C系列AT89系列又可分为两种类别:

一种是ISPFLASH(InSystemProgrammableFlash),可在线通过SPI口串行编程;一种就是常规的FLASH系列,这种单片机只能用常规的并行方法编程。9.1.1AT89C5X/LV5XFLASH系列这是一种低功耗/低电压、高性能的8位单片机,片内带有一个4K或8K字节的FLASH程序存储器。这类存储器用电擦除而不是用紫外线擦除,且写入和擦除的速度非常快等。输出引脚和指令系统都与MCS-51兼容。1.AT89C5X/LV5X的主要性能特性:片内集成4KB(AT89C51/LV51)

或8KB(AT89C52/LV52)的FLASH存贮器,可反复编程/擦除1000次;(2)全静态设计,时钟频率范围为 0~24MHz(AT89C51、AT89C52)

或0~12MHz(LV51、LV52);

工作电压为5V±20%((AT89C51、AT89C52)

或2.7V~6V(LV51、LV52);(3)三个程序存贮器保密位;(4)128(AT89C51/LV51)或256(AT89C52/LV52)字节的片内RAM;(5)32根可编程I/O线;

(6)2个(AT89C51/LV51)或3个(AT89C52/LV52)16位定时/计数器;(7)6个(AT89C51/LV51)或8个(AT89C52/LV52)

中断源;

(8)可编程全双工串行口;(9)低功耗的待机工作模式和掉电工作模式。其

中,在待机工作模式下,CPU停止工作,但

RAM、定时器/计数器、串行口和中断系统

仍在工作;在掉电模式下,只保存RAM的

内容,振荡器停振,关闭芯片的所有功能,

直到下一次硬件复位为止;

(10)采用双列直插封装(DIP)方式和方形封装

方式;(11)AT89C5X和AT89LV5X之间的区别主要在于以下几方面:

①AT89LV5X的工作电压为2.7~6V,可在低电压条件下工作。②AT89LV5X振荡器的最高频率为12MHz,而AT89C5X振荡器的最高频率为24MHz。③AT89LV5X和AT89C5X的编程和校验参数在编程允许电压、振荡器频率上不同。④AT89LV5X和AT89C5X的内部识别码不同,详见表9.3。

2.AT89C5X/LV5X的内部结构框图3.封装及引脚排列4.引脚功能

以上内容均与MCS-51兼容,详见教材图9.1、图9.2、表9.1

AT89C51单片机有3个加密位LB1、LB2、LB3。通过软件编程可定义这3个加密位的状态,以获得相应的加密功能。5.AT89C5X/LV5X的FLASH编程 (以AT89C51为例)(1)FLASH程序存贮器的加密表9.2AT89C51加密位的功能表

LB1LB2LB3功能UUU没有程序保密功能PUU禁止从外部程序存贮器中执行MOVC类指令来读取内部程序存贮器的内容PPU除上述功能外,还禁止程序效验PPP除上述功能外,还禁止外部执行(2)FLASH存储器的编程和程序校验

AT89C51单片机内部有一个4K字节的FLASHPEROM作为程序存储器,当其处于已擦除状态(即存储单元的内容为FFH)时,用户可对它进行编程,即写入用户程序或相关数据。AT89C5X/LV5X系列单片机中,有的要求用高电压(12V)编程,而有的允许用低电压()5V)编程,这可从芯片表面或内部的识别码来确定。表9.3AT89C5X/LV5X的芯片表面标识和芯片内部识别码————(030H)=1EH(031H)=52H(032H)=05H(030H)=1EH(031H)=51H(032H)=05H低压编程VPP=5V

(030H)=1EH(031H)=65H(032H)=FFH(030H)=1EH(031H)=62H(032H)=FFH(030H)=1EH(031H)=61H(032H)=FFH(000H)=1EH(001H)=55H(200H)=06H(030H)=1EH(031H)=52H(032H)=FFH(030H)=1EH(031H)=51H(032H)=FFH高压编程VPP=12V芯片内部标识码————AT89C52XXXX-5YYWWAT89C51XXXX-5YYWW低压编程VPP=5V

AT89LV55XXXXYYWWAT89LV52XXXXYYWWAT89LV51XXXXYYWWAT89C55WDXXXXYYWWAT89C52XXXXYYWWAT89C51XXXXYYWW高压编程VPP=12V

芯片表面标识AT89LV55AT89LV52AT89LV51AT89C55WDAT89C52AT89C51单片机①对FLASH存贮器编程

图9.3AT89C51内部编程接线图

第一步:编程单元的地址A0~A11送入P1口、P2.0~P2.3第二步:8位编程数据送入P0口第三步:加入正确的控制信号组合(见表9.4)第四步:12V电压加至EA/VPP端第五步:在ALE/PROG端加一次负脉冲(1~110), 即可完成一个字节单元或一个加密位的编 程。

②数据查询

用于检测一个写周期是否结束。当结束时,最后写入的字节将会出现在P0端口上,即表示可以进入下一个写周期,写入新的数据。③准备就绪/忙信号对FLASH存储器和加密位进行编程时的状态标志位。

编程时,ALE/PROG由低变高后,RDY/BSY(P3.4脚)输出变低,表示“正忙”,编程结束后,RDY/BSY为高,表示“准备就绪”。④程序的校验

若加密位LB1和LB2没有被编程,则允许对内部已编好的程序代码进行校验。此时内部已导入的程序代码由P0口输出(与编程时的数据传送方向相反)⑤片擦除操作

用于将整个FLASH阵列中的内容全部擦除,即所有存储单元中的内容被置为全“1”,擦除时间均需10ms。⑥读芯片识别码每一片AT89C5X/LV5X内部均有识别码,读出过程与程序校验时类似。内部识别码占用片内3个字节单元,以AT89C51为例:

(030H)=1EH;表示ATMEL公司生产(031H)=51H;表示型号为89C51(032H)=FFH;表示编程电压为12V(032H)=05H;表示编程电压为5V9.1.2AT89CX051ISPFLASH系列

ISP—InSystemProgrammaleFlash即这类芯片可实现在线编程。与常规的AT89C5X系列相比,还有以下不同之处:1)

AT89CX051引脚为20个,无P0、P2口,只有15条可编程的I/O线,因此它不能用“总线”模式外扩数据存贮器、程序存贮器以及输入/输出口,所以它也没有PSEN、WR、RD、ALE等与“总线”相关的控制信号。2)AT89CX051的供电电压范围为2.7V~6.0V,不需要与之相对应的低压供电芯片,因此它可广泛于低压供电的系统中。3)在相同的工作条件下,AT89CX051的功耗要低于AT89C5X,因此它常用于低成本、低功耗、低电压、小体积的场合。4)AT89CX051的每条I/O口线均可直接驱动LED显示。5)集成了一个模拟电压比较器,可比较P1.0,P1.1俩引脚接入电平的高低。

6)AT89C2051的指令与AT89C51指令兼容,但需注意的是:AT89C2051包含128字节的RAM,这样,栈地址空间就相应地为128个有效范围。不支持外部RAM器件和外部编程器件,所以,没有MOVX类和MOVC类指令。另外,对于LCALL、LJMP、ACALL、AJMP、SJMP、JMP等这些无条件转移指令和CJNE、DJNZ、JB、JNB、JC、JNC、JBC、JZ、JNZ等这些条件转移指令,寻址范围只能在(00H~7FFH)之间执行分支转移,否则会产生不可预料的后果。

Philips公司的单片机从内核结构上可划分为16位XA系列和80C51兼容系列。

16位XA系列单片机是其80C51兼容系列的升级产品。80C51兼容单片机又可分为6时钟内核类和12时钟内核类。

9.2PHILIPS公司的8XC51系列其中6时钟内核单片机又可分为四种类别:①基于6时钟51MX内核的51MX系列,具有16MB的

寻址能力;②基于6时钟80C51+内核的51LPC系列,即

P87LPC76X;③基于6时钟80C51+内核的通用51系列,含

P89C5xX2、P89C6xX2、P89C51Rx2、P8966x系

列为主;④LPC900系列,采用每机器周期2个时钟的新内核。

9.2.1P87LPC76X(51LPC)系列1.P87LPC76X的主要性能特性(1)采用6时钟80C51+内核,在操作频率为20MHz时,执行一条指令的时间为300ns~600ns(乘法和除法指令除外)。VDD=4.5V~6.0V

时,时钟频率最高可达到20MHz;VDD=2.7V~4.5V

时,时钟频率最大为10MHz。(2)供电电压范围为2.7V~6.0V。(3)P87LPC760为1K

字节OTP程序存储器;P87LPC761、P87LPC762为2K

字节OTP程序存储器;P87LPC764、P87LPC767、P87LPC768、P87LPC769为4K

字节OTP程序存储器。128字节的片内RAM。(4)32Byte

用户代码区可用来存放序列码及设置参数等。(5)2个16位定时/计数器,每一个均可(P87LPC760只有一个可)设置为超时溢出时切换到相应端口输出。(6)内含1个或2个精确模拟量比较器,通过外接RC器件可组成四路A/D

转换器。(7)增强型的全双工通用异步接收/发送器(UART),增加了帧错误检测、自动地址识别等功能。I2C

通信接口,极大的简化了网络通信中的软件设计。(8)四个(P87LPC760型)或八个(P87LPC764型)键盘中断输入,另加1路(P87LPC760型)或2路(P87LPC764型)外部中断输入。4个中断优先级。(9)集成了看门狗定时器(WATCHDOG),利用片内振荡,无需外接元件,可用来检测CPU的工作情况。当遭遇大的噪音、电源毛刺或静电放电等干扰时,会影响系统应用软件的正常运行,使用看门狗定时器可提高系统的可依赖型,该定时器的溢出时间有8种数值可供选择。在装入初值后,看门狗定时器需满足在预定的“喂狗处”不断重装初值,这样该定时器才不会溢出;当程序执行出轨,看门狗定时器未能在预定的地方“吃食”,则会引发该定时器的溢出,从而引发系统内部复位,使程序重新从0地址开始执行。(10)低电压复位功能,当使用片内上电复位时不需要外接元件。除此之外,用户还可选择预先设定好的两种电压之一复位,当系统掉电时允许系统安全关闭。也可将其设置为一个中断源。(11)用户通过对EPROM中相应位进行编程,可选择片内振荡及其频率范围和RC振荡器的其它选项,且不需外接振荡器件。(12)可编程I/O口工作模式,通过软件设置可使I/O口工作于下列四种工作模式,包括:准双向口工作模式,漏极开路输出工作模式,推挽式输出工作模式,仅用于输入的工作模式。且每位I/O端口均有20mA的驱动能力,可直接驱动LED显示,但要求所有端口吸收电流之和不得超过80mA。(13)可通过3项措施降低电磁干扰(EMI):其一,限制引脚上信号快速切换时产生的噪声,出厂时设置的上升和下降时间均约为10ns;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论