c
供应STC12C2052单片机,STC**8051单片机,增强型单片机 STCl2C2052单片机简介 STC12C2052是宏晶科技推出的STC12系列增强型8051单片机,速度比普通的8051快12倍,具有较宽的操作电压范围。其片上集成:256字节的RAM;15个通用可编程I/O口,可以设置成准双向口/弱上拉、推挽/强上拉、仅为输入/高阻、开漏(复位后为准双向口/弱上拉模式)4种模式;EEPROM功能;2个16位定时器/计数器;RC振荡器,在精度要求不高时可以省略外部晶振;独立的片内看门狗定时器。 1.1 STC12C2052的PCA/PWM工作原理 STC12C2052单片机中的PCA可编程计数器阵列含有一个特殊的16位定时器,它可与2个16位捕获/比较模块相连。每个模块可编程工作在4种模式下,即上升/下降沿捕获、软件定时器、高速输出和可调制脉冲输出。设计时,可将模块0连接到P3.7(CEX0/PCA0/PWM0),模块1连接到P3.5(CEX1/PCA1/PWM1)。由于寄存器CH和CL的内容是正在自由递增计数的16位PCA定时器的值,因此,PCA定时器可作为2个模块的公共时间基准,并可通过编程工作在1/12振荡频率、1/2振荡频率、定时器0溢出或ECI脚的输入(P3.4)。定时器的计数源由CMOD SFR的CPS1和CPS0位来确定。 1.2 STC12C2052的PCA脉宽调节模式 所有PCA模块都可用作PWM输出。其输出频率取决于PCA定时器的时钟源。由于所有模块共用仅有的PCA定时器,所以它们的输出频率相同。各个模块的输出占空比是独立变化的,与使用的捕获寄存器对EPCnL、CCAPnL有关。当CL SFR的值小于EPCnL、CCAPhL时,输出为低;而当PCA CLSFR的值等于或大于EPCnL、CCAPnL时,输出为高。当CL的值由FF变为00溢出时,EPCnH、CCAPnH的内容将被装载到EPCnL、CCAPnL中,这样就可无干扰地更新PWM。使能PWM模式时,模块CCAPMn寄存器的PWMn和ECOMn位**置位。由于PWM是8位的,所以可用下式来计算PWM的信号频率: 2 PWM调制原理 脉宽调制(Pulse WidthModulation,PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。脉冲宽度调制原理如图1所示。 简而言之,PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么*有(ON),要么*无(0FF)。电压或电流源是以一种通(ON)或断(0FF)的重复脉冲序列被加到模拟负载上去的。通,即直流供电被加到负载上时;断,即供电被断开时。只要带宽足够,任何模拟值都可以使用PWM进行编码。 PWM的一个优点是从处理器到被控系统信号都是数字形式的,*进行数/模转换。让信号保持为数字形式可将噪声影响降到较小。只有噪声在强到足以将逻辑1改变为逻辑0,或将逻辑0改变为逻辑1时,才能对数字信号产生影响。 PWM相对于模拟控制的另外一个优点是对噪声抵抗能力强,这也是在某些时候将PWM用于通信的主要原因。从模拟信号转向PWM可以较大地延长通信距离。在接收端,通过适当的RC或LC网络可以滤除调制高频方波,并将信号还原为模拟形式。 许多微控制器内部都包含有PWM控制器。例如,STC12C2052内含两个PWM控制器,每一个都可以选择接通时间和周期。占空比是接通时间与周期之比;调制频率为周期的倒数。执行PWM操作之前,这种微处理器要求在软件中完成以下工作: ①设置提供调制方波的片上定时器/计数器的周期; ②在PWM控制寄存器中设置接通时间; ③设置PWM输出的方向,这里是通用I/O引脚; ④启动定时器; ⑤使能PWM控制器(虽然具体的PWM控制器在编程细节上会有所不同,但它们的基本思想是相同的)。