一种由STC12C2052AD单片机控制的改进型调压电路
扫描二维码
随时随地手机看文章
0 引言
在ZXC10通信电源系统中,上位机输出的PWM调制信号的频率为1 kHz,而且系统要求电源能根据PWM信号的占空比进行调压。即对电源输出电压在40 Vdc~60 Vdc范围内通过此PWM信号进行线性调节。PWM信号5%占空比对应40±0.5 Vdc,95%的占空比对应60±0.5 Vdc。以前此功能是用带有D/A的单片机来实现.即把PWM调制信号输入单片机,通过单片机来计算PWM信号的占空比,再根据PWM信号的占空比与输出电压的关系,并通过D/A转换来产生用于调节输出电压的偏移量,最后通过此偏移量和电源输出反馈量的共同作用来实现调压。
1 单片机调压系统
通过带有D/A的单片机来实现调压系统的方框图如图1所示。但是,由于带有D/A的单片机比较贵,因而会增加产品成本。而如果把PWM调制信号的频率提高,再经过一个简单的二阶有源低通滤波器来产生调压偏移量,则可用不带D/A转换的单片机来实现调压,这样可以大大节省成本。其改进后的电路方框图如图2所示。
2 STC12C2052AD的PCA/PWM工作原理
由于STC12C2052AD单片机是作于1个时钟/机器周期,且有增强型8051内核,故其速度比普通8051快8~12倍。该单片机有2路可编程计数器阵列(PCA)/PWM,其中PCA1模块用作捕获模式,可识别输入的PWM调制信号,PCA0模块用作脉宽调节模式(PWM),可实现频率转换。此外,由于该单片机价格比较便宜,故采用此单片机作为核心控制芯片。
2.1 STC12C2052AD单片机的PCA捕获模式
STC12C2052AD系列单片机中的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位来确定。
要使PCA模块工作在图3所示的捕获模式,寄存器CCAPMn中的CAPNn和CAPPn至少应有一位必须置1。对模块的外部CEXn输入(包括CEX0/P3.7、CEX1/P3.5、CEX2/P2.0、CEX3/P2.4口)的跳变进行采样时,若采样到有效跳变,其PCA硬件就将PCA计数器阵列寄存器(CH和CL)的值装载到模块的捕获寄存器中(CCAPnL和CCAPnH)。
2.2 STC12C2052AD的PCA脉宽调节模式
所有PCA模块都可按图4所示的工作模式用作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的信号频率:
3 PWM信号的接收与转换
3.1 PWM调制信号接收模块
由于要用PCA1模块来把上位机输出的频率为1 kHz的PWM调制信号的频率提高(因为频率越高,越容易滤波),故将PCA定时器的时间基准置为1/2振荡频率。用PCA1 (P3.7)模块来识别接收的PWM调制信号时,应使PCA1工作在上升/下降沿捕获工作模式,并打开PCA中断。设计时,可首先设置PCA1工作在上升沿捕获工作模式,这样,当P3.7脚采样到上升沿跳变时,PCA0模块即可将PCA计数器阵列寄存器CH和CL的值装载到模块的捕获寄存器中{CCAP1H,CCAP1L}。然后在中断中把{CCAP1H,CCAP1L}的值存放到自定义的数据单元{UP_DATAH,UP_DATAL}中,并在中断中把PCA1工作模式设置为下降沿捕获工作模式,从而在P3.7脚采样到下降沿跳变时,PCA1模块硬件就可将PCA计数器阵列寄存器{CH,CL)的值装载到模块的捕获寄存器中{CCAP1H,CCAP1L}。之后,再在中断中把{CCAP1H,CCAP1L}的值存放在数据单元{DOWN_DATAH,DOWN_DATAL}中,并利用双字节无符号数减法得出PWM调制信号正脉冲时定时器的计数个数为:
N1={DOWN_DATAH,DOWN_DATAL)-{DOWN_DATAH,DOWN_DATAL}
由于PWM调制信号的频率为1 kHz,周期T为1 ms。因此,可设1 ms中PCA定时器的计数个数为N2,则PWM调制信号的占空比为:
3.2 PWM调制信号的频率转换
上位机输出的PWM调制信号的频率为1 kHz左右。由于该频率比较低,直接对其进行滤波后的纹波比较大,因此,在滤波之前,应先把接收的PWM调制信号转变成与占空比成线性比例的高频PWM调制信号,频率转换可通过PCA0 (P3.5)PWM功能模块来实现。由于选择的晶振为20MHz,故可选Fosc/2为PCA/PWM时钟输入源,这样,其PWM的频率为39.062 kHz。
这样,当PCA0模块设置为PWM输出模式时,根据PCA脉宽调节模式(PWM)的工作原理,当CCAP0L=FFH时,P3.5将输出占空比为0的PWM信号,而当CCAP0L=80H时,P3.5则输出占空比为50%的PWM信号,当CCAP0L=0时,P3.5会输出占空比为100%的PWM信号。这样,由PCA脉宽调节模式(PWM)的工作原理可得:
这样,通过上式即可把频率为1 kHz的PWM信号转换为频率为39.062 kHz的PWM信号,其转换后的PWM占空比与原来的1 kHz的PWM信号成线性比例关系。
4 二阶滤波电路
图5所示为有源二阶滤波电路的原理图。由有电源变换器的反馈量可知,当调压偏移量为1.5V的时候,电源输出40 V;当调压偏移量为3.0V的时候,电源输出60 V。因此,在PWM信号的占空比为5%时,调节二阶有源滤波器的参数,并通过调节R5/R4来改变运算放大器的增益,然后调节RW1即可改变运算放大器的基准,使偏移量VS为1.5 V;而在PWM信号占空比为95%时,使偏移量VS为3.0 V。这样就可使PWM信号的占空比在5%~95%之间变化,从而使变换器的输出电压在40 Vdc~60 Vdc范围内线性变化。
5 仿真验证
根据图5进行PSIM仿真验证时,可将仿真参数设定为:R1=R2=R4=R5=10 kΩ,R3=20 kΩ,R6=2 kΩ,R7=1 kΩ,C1=C2=C3=C4=104 pF,从而得出如图6所示的特定占空比的Vs波形。
其它特定占空比(D=5%,20%,40%,60%,80%,95%)的仿真记录数据如表1所列。图7所示是该调压电路的PWM信号占空比与Vs调压偏移量的变化曲线。由图可见,该变化呈线性关系。
6 结束语
本文通过提高PWM调制信号的频率,再结合二阶有源滤波电路,实现了频率到电压的一种转换。该转换可在40Vdc~60Vdc范围内,对ZXC10通信电源的输出电压通过PWM信号进行线性调节,这种方法可以避免使用较贵的D/A转换模块,因而可以节省成本。同时也提高了该电源的工程使用价值。