概述:STC89C51系列单片机是从引脚到内核都完全兼容标准8051的单片机,有PDIP-40、PLCC-44、PQFP-44三种封装形式(见图1)。STC89C51/52/53/54/55/58/516芯片分别含有4K/8K/15K/16K/20K/32K/64K字节FLASH ROM供用户编程使用。除了内含FLASH ROM容量的不同外,STC89C系列单片机还分成STC89C5xRC/RD+(VCC为5V)、S17C89LE5xRC/RD+(VCC为3.3V)、STC89LE5xAD(VCC为3.3V,带8位A/D转换电路)等型号。其中51/52/53型号后缀为RC,表明片内集成了512字节RAM。54/58/516型号后缀为RD+,表明片内集成了1280字节RAM。后缀为AD则表明片内集成了A/D转换电路和512字节RAM。   STC89C系列单片机是高速/低功耗的新一代8051单片机,最高工作频率可分别达到25MHz~50MHz,具体在芯片上的型号名称后以“-XX”标注。STC89C系列单片机有较宽的工作电压,5V型号的可工作于3.4V~6.0V,3.3V型号的可工作于2.0V~4.0V(ISP/IAP操作时对电压要求会稍严)。正常工作模式下的典型耗电为4mA~7mA,空闲模式为2mA,掉电模式’(可由外部中断唤醒)下则小于0.1μA。
  此外,STC89C系列单片机在完全兼容8052芯片(在标准8051基础上增加了T2定时器和128字节内部RAM)的基础上,新增了许多实用功能。

一、STC89C51引脚功能

二、STC89C51新增功能及使用方法
  一、ISP与IAP编程方式
    STC89C系列单片机芯片内置了ISP(在系统可编程)/IAP(在应用可编程)功能,无需专用编程器即可通过串口(P3.0/P3.1)用STC提供的STC-ISP.exe软件进行烧录。
  新出厂的STC89C51系列单片机芯片,已经设置为单片机彻底放电后再复位,即会先进行ISP监控。当单片机检测到P3.0/RxD引脚有合法的下载命令流时,就会先将用户程序下载并烧录到用户程序区,再运行用户程序,否则软复位到用户程序区,运行用户程序。在进行ISP烧录时,可以选择下次冷启动时是依旧先进行ISP监控,还是需要P1.0和P1.1引脚同时为0才进行ISP监控,否则跳过ISP监控直接运行用户程序(见图)。
  二.6时钟,机器周期模式
    标准的8051每个机器周期为12时钟。增强型的STC89C系列单片机在进行ISP烧录程序时,可以设置为6时钟/机器周期(双倍速)或12时钟/机器周期工作模式.
  6时钟/机器周期(双倍速)工作模式下,定时器的计数速度会加倍,相应的12时钟/机器周期模式下的串口波特率也会加倍,因此单片机使用的最高的波特率可以提高一倍。
  三.降低簟片机对外部电磁辐射
    通过设置6时钟/机器周期.(双倍速),可以将外接晶振频率降低一半,能有效降低对外部电磁辐射(EMI)。
  更重要的是,STC89C系列单片机可以关闭ALE输出,最有效地降低EMI。
  通过将ALEoff位(AUXR.0)置1,可以使ALE引脚仅在读取外接存储器时才有变化电平输出,从而降低对外部电磁辐射。

  四、内部扩展RAM
  STC89C系列单片机中的51/52/53(RC系列)在原有8052共256字节RAM的基础上,又扩展了256字节RAM,共有512字节RAM(000H~1FFH)。54/58/516(RD+系列)则扩展了1024字节RAM,共有1280字节RAM(000H~3FFH)。
  通过设置EXTRAM位(见表1),在使用MOVX@DPTR,A/MOVXA,@DPTR指令时,如访问在内部RAM范围内将会访问到内部RAM,超出此范围才会访问外部RAM。访问内部RAM时,不影响P0口/P2口/P3.6/P3.7。

  需要注意的是,部分型号的AUXR是只写寄存器,如果去读,所读出的数值将是不确定的。
  五.双DPTR数据指针
    标准的8051只有一个1 6位的DPTR数据指针,这样在进行数据块复制等动作时,必须对源地址指针和目标地址指针进行暂存,编程会非常麻烦。STC89C系列单片机内有两个DPTR数据指针DPTR0/DPTR1,可以通过设置DPS位(AUXR1.0)方便地选择,DPS置0则选中DPTRO,置1则选中DPTR1。通过执行INCAUXR1指令,能对DPS快速切换,并不影响AUXR1的高位。此用法与PHILIPS单片机完全一致。
  六.扩晨P4口
    从引脚图上可以看出,PLCC-44、PQFP-44两种封装方式比PDIP-40多出的4个引脚在STC89C51RC/RD+系列单片机上被做成了P4口(SFR地址为0E8H),由P4.0~P4.3四条口线组成,使用方式上与原有I/0完全一致,可以位操作。
  七、内置看门狗电路
    RC/RD+型号的STC89C系列单片机均内置了看门狗电路。内置看门狗由看门狗定时器控制寄存器WDT_CONTR(见表2)控制。
  EN_WDT位(WDT_CONTR.5)为看门狗允许位,置1时即启动看门狗。CLR_WDT位(WDT_CONTR.4)为看门狗清零位,置1则看门狗将重新计数,此位由硬件自动清零。IDLE_WDT位(WDTl_CONTR.3)为看门狗空闲模式位,当置为1时,看门狗在“空闲模式”时继续计数,当清零时,看门狗在“空闲模式”时不计数。PS2~PS0位(WDT_CONTR.2~0)用于设定看门狗溢出时间,看门狗溢出时间=(N×Pre-scale×32768)/晶振频率。其中N为每个机器周期的时钟数,标准模式为12,双倍速时为6。Pre-scale为PS2~PS0位所设定的预分频值。
 
  八.软复位功能
    STC89C系列单片机新增加的ISP_CONTR特殊功能寄存器(SFR地址为0E7H),实现了单片机系统软复位(热启动之一)功能。用户只需简单地控制ISP_CONTR特殊功能寄存器的其中商位SWBS/SWRST就可以系统复位了。SWBS位(ISP_CONTR.6)选择从用户应用程序区启动(0),还是从ISP程序区启动(1)。要与SWRST位配合才可以实现,SWRST位(ISP_CONTR.5)置0则无操作,置1则实现系统复位,硬件自动清零。软复位与硬件复位一样,所有的特殊功能寄存器都会复位到初始值,I/O口也会初始化。
  九.带A/D功能的89LE系列
    STC89LE51/52/54/58/516AD型号均内带一个8位精度的高速A/D转换器,扩展RAM均为256字节(共512字节,仅能用MOVX A,@Ri/MOVX A,@Ri指令访问),不能设置6时钟/机器周期(双倍速)模式,其余均与前几部分相同。另有一款STC89LE516X2,比STC89LE516AD增加6时钟/机器周期(双倍速)模式。A/D转换器为电压输入型,可做按键扫描、电池电压检测、频谱检测等。
  STC89LE516AD/X2系列允许将P1.0~P1.7作为A/D口使用,P1_ADC_EN特殊功能寄存器(SFR地址为097H)作为A/D转换输入通道允许控制,相应位为“1”时,对应的P1.x口被允许作为A/D转换使用,内部上拉电阻自动断开。
  十.性价比
    目前,STC89C51/52/53RC报价分别为5.7/6.7/9元,STC89C54/58/516RD+报价11/15/17元,STC89LE54/58/516AD报价分别为11/12.5/14元。与市面上类似的芯片相比,有较高的性价比。

 

三、STC89C516RD+的外围电路