欢迎来到天天文库
浏览记录
ID:31359478
大小:105.00 KB
页数:4页
时间:2019-01-09
《基于stc单片机的数控通信直流电源设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于STC单片机的数控通信直流电源设计 摘要:采用STC12C5A60S2单片机,设计了用于通信机房的12-48V可调高精度数控直流电源。主要包括键盘输入,LED显示,PWM波输出,功率输出,A/D转换等模块。该电源采用了10位高精度A/D对输出电压进行采用,实现了闭环控制,具有电压调节方便,精度高等优点,能够满足通信机房对电源电压及精度的要求。 关键词:STC12C5A60S2;单片机;直流电源 中图分类号:TN86 直流电源是通信机房的必需设备,它的主要任务就是通过把交流系统整流出直流电,为通信机房的交换设备、传输设备等提供直流工作电源,其性能和质量的好坏直接关系到通信
2、设备能否稳定运行[1]。然而,目前使用的直流稳压电源大部分是利用分立器件组成的线性电源,在输出特性上存在输出精度和稳定性不高的问题。此外,在调整精确的电压输出时,因为电位器的阻值特性为非线性,在调整时需要花费一定的时间。因此,具有精度高,智能化的数控直流电源在工业生产中逐渐得到了广泛的应用。本文采用单片机作为控制核心,设计一种用于通信机房的12-48V可调高精度数控直流电源。 1总体方案4 本次设计的数控直流电源方案如图1所示,主要包括键盘输入,LED显示,PWM信号输出,功率输出,A/D转换等模块,单片机负责对各个模块之间的协调处理。其基本原理是单片机控制输出占空比可调的PW
3、M信号,经过功率放大、滤波之后获得稳定直流电压输出。另一方面,对输出的电压进行取样并进行A/D变换后反馈到单片机,根据取样电压与设定电压进行比对,再对PWM信号占空比进行调节,从而形成闭环控制。输出电压值用键盘进行设置,并采用LED数码管进行动态显示。 图1数控直流电源方案 2主要硬件组成 2.1STC12C5A60S2单片机简介 STC12C5A60S2是宏晶科技公司的一款增强型MCS-51单片机。该单片机采用单时钟/机器周期(1T),指令代码完全兼容传统8051,但速度快8-12倍。此外,其内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K
4、/S),非常适用机电控制场合。 2.2核心电路设计4 脉冲宽度调制(PWM)是一种模拟控制方式,其根据相应载荷的变化来调制晶体管基极或MOS管栅极的偏置,来实现晶体管或MOS管导通时间的改变,从而实现开关稳压电源输出的改变。这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术[2]。图2所示为本通信直流电源的核心模块。单片机内部的可编程PWM模块信号从P1.3引脚输出,R1为上拉电阻,信号经过限流电阻R2连接到功率三极管VT的基极。功率三极管VT放大的PWM波经过LC滤波整形,通过对单片机内部的PWM模块编程,控制其
5、占空比在25-100%之间连续可调,从而最终获得12-48V范围的直流电压。图中,DT为续流二极管,其作用是在控制开关关断期间,给储能滤波电感L释放能量提供电流通路。在PWM电源中,输出的PWM波频率通常为20kHz。 由于STC12C5A60S2单片机内部A/D模块要求输入电压不能超过5V,因此采用R3和R4构成的分压电路对输出电压进行取样之后,再连接到单片机内部进行A/D转换,如图2所示。 图2PWM驱动输出及A/D取样电路 3软件程序设计 软件程序中,需要对STC12C5A60S2单片机内部模块进行初始化,主要包括对PWM模块和A/D模块的相应控制寄存器进行设置。其中
6、,PWM_init()函数的主要代码及说明如下(晶振频率12M): CMOD=0x08;//设置PWM频率Fosc/256,为50kHz CL=0x00;//PCA定时器清零 CH=0x00;//PCA定时器清零 CCAPM0=0x42;//PWM0设置PCA工作方式为PWM方式 CCAP0L=0xc0;//设置PWM0初始值与CCAP0H相同 CCAP0H=0xc0;//PWM占空比为25% AD_init()函数的主要代码及说明如下: P1ASF=0x01;//P10口做AD使用 P1M0=0x01;//用于A/D转换的P1.0口 P1M1=0x01;//P
7、1.0先设为开漏,断开内部上拉电阻 ADC_CONTR=0x88;//开启AD高速转换4 系统工作流程为:单片机上电复位,初始化系统内部PWM模块,A/D转换模块以及其他相关寄存器。在主函数的循环中,单片机读取10位A/D转换结果,并与当前设置的电压值进行对比,根据误差对PWM模块的控制寄存器进行修正,改变占空比,直到输出电压值与设定值一致。另外,通过按键扫描程序检测键盘状态,根据键盘输入调用相应程序对输出电压值进行设置,同时通过LED数码管显示设置的电压值以及实
此文档下载收益归作者所有