力均可达到20Ma,但整个芯片最大不要超过120mA
7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片 8.内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地)
9.时钟源:外部高精度晶体/时钟,内部R/C振荡器(温漂为±5%到±10%以内)用户在载入用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟常温下内部R/C振荡器频率为:5.0V单片机为:11MHz-17MHz 3.3V单片机为:8MHz-12MHz
精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,以实际测试为准
10.共4个16位定时器
两个与传统8051兼容的定时器/计数器,16定位器T0和T1,没有定时器2,但有独立波特率发生器做串行通信的波特率发生器,再加上2路PCA模块可再实现2个16位定时器
11.3个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时钟,独立波特率发生器可以在P1.0口输出时钟 12.PWM(2路)/PCA(可编程计数器列,2路) ---也可用来当2路D/A使用 ---也可用来实现2个定时器 ---也可用来再实现2个外部中断
13.A/D转换,10位精度ADC,共8路,转换速度可达250K/S
14.通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用定时器或PCA软件实现多串口
1.2.2 STC12C5A60S2系列单片机的内部结构
STC12C5A60S2系列单片机的内部结构框入下图1-1所示。STC125A60S2单
片机中包含中央处理器(CPU)、定时/计数器、UART串口、串口2、I/O接口、高速A/D转换、SPI接、PCA、程序存储器(Flash)、数据存储器(SRAM)、看门狗及片内R/C振荡器和外部晶体振荡电路等模块。STC12C5A60S2系列单片机几乎包含了数据采集和控制中所需的所有单元模块,可称地上一个片上系统。
AUX-RAM 1024字节 PAM地址 寄存器 RAM 256字节 程序存储器 B寄存器 ACC 堆栈指针 ISP/IAP TMP2 TMP1 定时器0/1 地址生成器 串口1 ALU 串口2 PSW LVD/LVR Port1锁存器 ADC Port1驱动器 Port0.2.3.4.5 驱动器 Port0.2.3.4.5 锁存器 WDT 程序计数器 PCA SPI RESETT Control unit XTAL1 XTAL2 P1.0-P1.7 P0,P2,P3,P4,P5 图1-1 STC12C5A60S2内部结构框图
1.2.3 STC12C5A60S2单片机的优势
STC125A60S2单片机的定时器0/定时器1与传统8051完全兼容,上电复
位后,定时器部分缺省还是除12再计数的,而串口由定时器1控制速度,所以定时器/串口完全兼容。
增加了独立波特率发生器,省去了传统8051的 定时器,如是用T2做波特率的,改用独立波特率发生器做波特率发生器。
传统8051的111条指令执行速度全面提速,最快的指令快24倍,最慢的指令快3倍,靠软件延时实现精确延时的程序需要调整。
其他注意的细节: ALE:
传统8051单片机的ALE脚对系统时钟进行6分频输出,可对外提供时钟, STC12C5A60S的可编程时钟输出脚对外输出时钟或XTAL2脚串一个200欧姆电阻对外输出时钟。 PSEN:
传统8051有PSEN信号可以跑外部程序,可以外扩外部程序存,STC12CA560S单片机由于是系统晶片概念,内部有大容量程序存储器,不需要外扩外部程序存储器,所以直接将PSEN信号去除,可以当普通I/O口使用。 普通I/O口即作为输入又作为输出:
传统8051单片机执行I/O口操作,由高变低或由低变高,以及读外部状态都是12个时钟,而现在STC12C5A60S2单片机执行相应的操作时4个时钟,传统8051单片机如果对外输出为低,直接读外部状态是读不对的,必须先将I/O口置高才能够读对,而传统8051单片机由低变高的指令是12个时钟,该指令执行完成后,该I/O口也确实已变高,故可以紧跟着由低变高的指令后面,直接执行读该I/O状态指令,而STC12C5A60S2单片机由于执行由低变高的指令是4个时钟,太快了,相应的指令执行完以后,I/O口还没有变高,要再过一个时钟之后,该I/O口才可以变高,故此状态下增加2个空操作延时指令再读外部口的状态。 P4口:
STC12C5A60S2单片机P4口地址在C0H,有完整的P4口(P4.0-P4.7),未扩展外部INT2/INT3中断
传统8051单片机的P4口地址在E8H,P4口只有一半(P4.0-P4.3),P4有扩展外部INT2/INT3中断。 I/O驱动能力:
STC12C5A60S2单片机I/O口的灌电流是20Ma,驱动能力超强,驱动大电流时,不容易烧坏。
传统8051单片机I/O口的灌电流时是6mA,驱动能力不够强,不能驱动大电流。
外部时钟和内部时钟:
STC12C5A60S2单片机有内部R/C振荡器作为系统时钟,一般情况下。44/40脚单片机出厂时的设置是使用外部时钟,20/18/16脚封装的单片机出厂时的设置是使用内部R/C振荡器作为系统时钟,用户可在IPSP录用程序时任意选择内部R/C时钟或外部晶体时钟。
传统8051单片机只能使用外部晶体或时钟作为系统时钟。 功耗:
功耗由2部分组成,晶体振荡器放大电路的功耗和单片机的数字电路功耗组成,晶体振荡器放大电路的功耗:TC12C5A60S2单片机比传统8051单片机低。
单片机的数字电路功耗:时钟频率越高,功耗越大,STC12C5A60S2单片机在相同工作频率下,指令执行速度比传统8051系列单片机快3-24倍,故可用较低的时钟频率工作,这样功耗更低,建议低功耗设计系统外接4-6MHz的晶体或用内部R/C振荡器作为系统时钟,并利用内部的时钟分频器对时钟进行分频,以较低的频率工作,这样单片机的功耗更低。 掉电唤醒:
STC12C5A60S2单片机支持外部中断模式是下降沿就下降沿唤醒,是低电平就低电平唤醒,传统8051单片机是外部中断口只要是低电平就唤醒,另STC12C5A60S2单片机内部还有专用掉电唤醒定时器可唤醒,另外,STC12C5A60S2单片机掉电唤醒延时时间可选:32758/16384/4096个时钟,传统8051单片机固定是1024个时钟。
第2章 红外测距的工作原理及基本结构
2.1红外线测距发生与接收器件介绍
红外线测距是利用红外光来传送控制指令信号,因此,作为红外测距中的红外光发射器件的红外发光二极管和红外光接收器件的红外光敏管,是构成红外测距系统的基本器件。 一、红外线发射器件
1.红外线发射器件的结构与原理
红外线发射器件是最长用的为红外发光二极管,它与普通发光二极管的结构 原理以及制作工艺基本相同,是只有一个PN结的半导体器件,只是所有的材料不同,制造红外发光二极管砷化钾,砷铝钾等,其中应用最多的是砷化钾。
红外发光二极管一般采用环氧树脂,玻璃,塑料等封装,除白色透明材料封装外,还可见到用蓝色透明材料封装的,。红外发光二极管按发光功率的大小,可分为小功率,中功率,大功率三种。另外,红外发光二极管除顶面发光型外,还有侧面发光型。小功率管一般采用全塑封装,也有部分是采用陶瓷底座,顶端用玻璃或环氧树脂透镜封装的,中大功率管一般采用带螺纹金属底座,以便安装散热片。随着发光功率得提高,相应体积的管子也增大。
2.红外发光二极管的主要参数 (1)正向工作电流?f
是指红外发光二极管长期工作时,允许通过的最大平均电流,因为电流通过PN结时,要消耗一定的功率而引起管子发热,如管子长期超过?f运行,会因过热而烧毁,因此,使用的最大平均正向工作电流不得超过?f。
(2)光功率?
是指输入到发光二极管的电功率转化为光输出功率的那一部分。光功率越大,发射距离越远。
(3)峰值波长?p
是指红外发光二极管所发出近红外光中,光强最大值所对应的发光波长,在选用红外接收管时,其受光峰值波长应尽量靠近?p。
(4)反向漏电流?r
是指管子未被反向击穿时反向电流的大小,希望它越小越好。