标题：89C51
主要特性
·与MCS-51 兼容 
·4K字节可编程闪烁存储器  寿命：1000写/擦循环 
数据保留时间：10年 
·全静态工作：0Hz-24MHz 
·三级程序存储器锁定 
·128*8位内部RAM 
·32可编程I/O线  ·两个16位定时器/计数器 
·5个中断源 
·可编程串行通道 
·低功耗的闲置和掉电模式 
·片内振荡器和时钟电路
管脚说明
VCC：供电电压。
GND：接地。
P0口：P0口为一个8位漏级开路双向I/O口，每脚可吸收8TTL门电流。当P1口的管脚第一次写1时，被定义为高阻输入。P0能够用于外部程序数据存储器，它可以被定义为数据/  89C51引脚图地址的低八位。在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.0 RXD（串行输入口） 
P3.1 TXD（串行输出口） 
P3.2 /INT0（外部中断0） 
P3.3 /INT1（外部中断1） 
P3.4 T0（记时器0外部输入） 
P3.5 T1（记时器1外部输入） 
P3.6 /WR（外部数据存储器写选通） 
P3.7 /RD（外部数据存储器读选通） 
P3口同时为闪烁编程和编程校验接收一些控制信号。
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），不管是否有内部程序存储器。注意加密方式1时，/EA将内部锁定为RESET；当/EA端保持高电平时，此间内部程序存储器。在FLASH编程期间，此引脚也用于施加12V编程电源（VPP）。
XTAL1：反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2：来自反向振荡器的输出。
振荡器特性
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件，XTAL2应不接。由于输入至内部时钟信号要通过一个二分频触发器，因此对外部时钟信号的脉宽无任何要求，但必须保证脉冲的高低电平要求的宽度。
芯片擦除
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合，并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中，代码阵列全被写“1”且在任何非空存储字节被重复编程以前，该操作必须被执行。
此外，AT89C51设有稳态逻辑，可以在低到零频率的条件下静态逻辑，支持两种软件可选的掉电模式。在闲置模式下，CPU停止工作。但RAM，定时器，计数器，串口和中断系统仍在工作。在掉电模式下，保存RAM的内容并且冻结振荡器，禁止所用其他芯片功能，直到下一个硬件复位为止。
结构特点
8位CPU；
片内振荡器和时钟电路；
32根I/O线；
外部存贮器寻址范围ROM、RAM64K；
  2个16位的定时器/计数器；
5个中断源，两个中断优先级；
全双工串行口；
布尔处理器；
51单片机
很多初学51单片机的网友会有这样的问题：AT89S51是什么?书上和网络程上可都是8051，89C51等！没听说过有89S51 ？
这里，初学者要澄清单片机实际使用方面的一个产品概念，MCS-51单片机是美国INTEL[1]公司于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具有更高工作频率，从而具有了更快的计算速度。
-- 具有双工UART串行通道。
-- 内部集成看门狗计时器，不再需要像89C51那样外接看门狗计时器单元电路。
-- 双数据指示器。
-- 电源关闭标识。
-- 全新的加密算法，这使得对于89S51的解密变为不可能，程序的保密性大大加强，这样就可以有效的保护知识产权不被侵犯。
-- 兼容性方面：向下完全兼容51全部字系列产品。比如8051、89C51等等早期MCS-51兼容产品。也就是说所有教科书、网络教程上的程序（不论教科书上采用的单片机是8051还是89C51还是MCS-51等等），在89S51上一样可以照常运行，这就是所谓的向下兼容。
比较结果：就如同INTEL的P3向P4升级一样，虽然都可以跑Windows98，不过速度是不同的。
从AT89C51升级到AT89S51,也是同理。和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小体积封装。