89C51是一种带
4K字节闪烁可编程可擦除
只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能
CMOS8位
微处理器,俗称
单片机。单片机的可
擦除只读存储器可以反复擦除1000次。该器件采用ATMEL
高密度非易失存储器制造技术制造,与工业标准的MCS-51
指令集和
输出管脚相兼容。由于将多功能8位
CPU和闪烁
存储器组合在单个芯片中,ATMEL的89C51是一种高效
微控制器,89C2051是它的一种精简版本。89C单片机为很多
嵌入式控制系统提供了一种灵活性高且价廉的方案。
主要特性
·与MCS-51 兼容
·4K字节可编程闪烁
存储器寿命:1000写/擦循环
·
·
·可编程串行通道
管脚说明
GND:接地。
P0口:P0口为一个8位漏级
开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为
高阻输入。P0能够用于
外部程序数据
存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为
原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供
上拉电阻的8位双向I/O口,P1口
缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为
低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个
TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序
存储器或16位地址
外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其
特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和
控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为
高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为
AT89C51的一些
特殊功能口,如下表所示:
口管脚 备选功能
P3.1 TXD(串行输出口)
P3.3 /INT1(外部中断1)
P3.4 T0(记时器0外部输入)
P3.5 T1(记时器1外部输入)
P3.7 /RD(外部数据存储器读选通)
RST:复位输入。当振荡器复位器件时,要保持RST脚两个
机器周期的高电平时间。
ALE/PROG:当访问
外部存储器时,
地址锁存允许的
输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正
脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,
MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果
微处理器在外部
执行状态ALE禁止,置位无效。
/
PSEN:外部
程序存储器的
选通信号。在由外部程序存储器取指期间,每个
机器周期两次/PSEN有效。但在访问
外部数据存储器时,这两次有效的/PSEN信号将不出现。
/
EA/VPP:当/EA保持低电平时,则在此期间为外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器读取外部ROM数据。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,
单片机读取内部程序存储器。(扩展有外部ROM时读取完内部ROM后自动读取外部ROM)。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
振荡器
特性
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部
时钟源驱动器件,XTAL2应不接。由于输入至内部
时钟信号要通过一个二
分频触发器,因此对外部时钟信号的
脉宽无任何要求,但必须保证脉冲的高低
电平要求的宽度。
芯片擦除
整个PEROM阵列和三个锁定位的电
擦除可通过正确的
控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,
定时器,计数器,串口和
中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
结构特点
8位CPU;
32根I/O线;
单片机
很多初学
51单片机的网友会有这样的问题:AT
89S51是什么?书上和网络程上可都是8051,89C51等!没听说过有89S51 ?
这里,初学者要澄清
单片机实际使用方面的一个
产品概念,
MCS-51单片机是美国INTEL公司于1980年推出的产品,典型产品有 8031(内部没有
程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用
HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等
通用产品, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如流行的89S51、已经停产的89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。
有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。
其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一段程序,在各个
单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、
89S51,
PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是
ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由
Flash(
程序存储器的内容至少可以改写1000次)存储器取代了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。
不过在市场化方面,89C51受到了
PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。
89S51就是在这样的背景下取代89C51的,89S51已经成为了实际应用市场上新的宠儿,作为
市场占有率第一的Atmel公司已经停产AT89C51,将用AT89S51代替。89S51在工艺上进行了改进,89S51采用0.35新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX可以向下兼容89CXX等51系列芯片。同时,Atmel不再接受89CXX的定单,大家在市场上见到的89C51实际都是Atmel前期生产的
巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。
新功能
89S51相对于89C51增加的新功能包括
-- 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51更低!
-- ISP在线编程功能,这个功能的优势在于改写
单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。
-- 最高工作频率为33MHz,大家都知道89C51的极限工作频率是24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。
-- 内部集成看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。
-- 电源关闭标识。
-- 全新的
加密算法,这使得对于
89S51的解密变为不可能,程序的保密性大大加强,这样就可以有效的
保护知识产权不被侵犯。
--
兼容性方面:向下完全兼容51全部字
系列产品。比如8051、89C51等等早期MCS-51兼容产品。也就是说所有教科书、网络教程上的程序(不论教科书上采用的
单片机是8051还是89C51还是MCS-51等等),在89S51上一样可以照常运行,这就是所谓的向下兼容。
比较结果:就如同INTEL的P3向P4升级一样,虽然都可以跑Windows98,不过速度是不同的。
从AT89
C51升级到AT
89S51,也是同理。和S51比起来,C51就要逊色一些,实际
应用市场方面技术的进步是永远向前的。
********上面这些就是AT89S51的由来********
常见问题
51系列的选型的常见问题
请问现在学习51系列单片机应该选择AT89C51还是
89S51?
答:89C51和
89S51内核相同,89S51针对89C51的明显的几个升级如下;
1.
程序存储器写入方式:二者的写入程序的方式不同,89C51只支持并行写入,同时需要VPP烧写高压。89S51则支持ISP在线可编程写入技术!串行写入、速度更快、稳定性更好,烧写电压也仅仅需要4~5V即可。
2.电源范围:89S5*电源范围宽达4~5.5V,而89C5*系列在低于4.8V和高于5.3V的时候则无法正常工作。
3.
工作频率:89S1*的性能远高于89C5*,89S5*系列支持最高高达33MHZ的工作频率,而89C51工作
频率范围最高只支持到24M。
4.
市场价格:由于89C51已经全面停产,所以在市场价格方面,库存的89C5*的
批发价格要比89S5*贵将近一倍!
5.兼容型:89S5*
向下兼容89C5*,就是说用89S5*可以替代89C5*使用,同样的程序,运行结果相同。就是说89S5*也同样兼容所有的教科书范例程序。
6.加密功能:89S5*系列全新的
加密算法,这使得对于89S51的解密变为不大可能,程序的
保密性大大加强,这样就可以有效的保护知识产权不被侵犯。
7.
抗干扰性:内部集成
看门狗计时器,不再需要像89C51那样外接看门狗计时器单元电路。
8.烧写寿命更长:89S5*
标称的1000次,实际最少是1000次~10000次,这样更有利初学者反复烧写,减低学习成本。综合上面的一些区别,个人认为89C51的停止使用只是
时间问题而已,就象当年的8031。
2问:采用89C2051开发制造产品是不是要比用
89S51更好?因为2051看起来体积比较小。
2答:这个问题并不能一概而论,主要的区别如下:
1.功能差别:因为2051不是标准的51内核,所以205*的程序不能直接移植到51上。由于205*是精简型,所以P口变得很少(没有P3.7口),这样一来就只能用来做一些小的简单产品,可利用资源比较紧张。实际上,做产品的话用205*是不一定合算的,除非是非常简单的产品。
2.市场价格:由于89C2051的产量不是非常大,所以市场价格方面89C2051的批发价格和
89S51比较接近!相对
性能价格比就比较低。
3.产品体积:除非对产品的体积有苛刻的要求,否则二者的PCB面积相差不多,因为40脚的51芯片也有
PLCC44小体积封装。