基于STC单片机的数控恒压源的方案设计书Word文档格式.docx

上传人:b****2 文档编号:1400384 上传时间:2023-04-30 格式:DOCX 页数:37 大小:667.52KB
下载 相关 举报
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第1页
第1页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第2页
第2页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第3页
第3页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第4页
第4页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第5页
第5页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第6页
第6页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第7页
第7页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第8页
第8页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第9页
第9页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第10页
第10页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第11页
第11页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第12页
第12页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第13页
第13页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第14页
第14页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第15页
第15页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第16页
第16页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第17页
第17页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第18页
第18页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第19页
第19页 / 共37页
基于STC单片机的数控恒压源的方案设计书Word文档格式.docx_第20页
第20页 / 共37页
亲,该文档总共37页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于STC单片机的数控恒压源的方案设计书Word文档格式.docx

《基于STC单片机的数控恒压源的方案设计书Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于STC单片机的数控恒压源的方案设计书Word文档格式.docx(37页珍藏版)》请在冰点文库上搜索。

基于STC单片机的数控恒压源的方案设计书Word文档格式.docx

Ci和C0的具体取值应随芯片输出电压高低及应用电路的方式不同而异。

图1-4三端固定式稳压电路

正、负输出稳压电源正、负输出稳压电源能同时输出两组数值相同、极性相反的恒定电压。

图1-5所示为正、负输出电压固定的稳压电源。

它由输出电压极性不同的两片集成稳正器MC7815和MC7915构成,电路十分简单。

两芯片输入端分别加上i20V的输入电压。

图1-5正、负输出电压固定稳压电源

1.3电源设计

根据以上原理电源部分则使用三端集成稳压芯片7815和7915输出稳定+15V和-15V,对运算放大器OP07和LF356进行双电压供电。

因此电源的设计:

1.正负15V电源电路如下图所示,对于滤波电容的选择,要考虑:

1.整流管的压降;

2.7815、7915最小允许压降Ud;

3.电网波动10%。

从而允许波纹的峰峰值Δτt=18×

(1-10%)-0.7-Ud-15=4.9v接近似电流放电计算,假设θ=0(通角),则C=

=

=1430μf选取滤波电容C=2200μf/30V

2.+5V电源允许的最大纹波峰峰值Δτt(max)=9×

(1-10%)-1.4-2.3-5=2.76V

C=

=3600μf选取滤波电容C=4700μf/16V

图1-6±

15V电源设计电路原理图

图1-75V电源电路原理图

第二章数控恒压源的实现方案

传统的直流稳压电源输出是通过粗调波段开关及细调电位器来调节的,并由电位表指示电压值的大小。

这种直流稳压电源存在读数不直观、电位器易磨损、稳压精度不高、不易调准、电位构成复杂、体积大等缺点,而基于单片机控制的数控直流电源不但实现了直流稳压的功能,而且没有上述的缺点。

2.1设计要求

>输出电压范围:

0.0—10.0V

>输出电压的调整方式:

步进步进数值为0.1V

>显示方式:

LCD液晶显示;

>监测DA的输出电压值;

2.2数控电源的方案论证

图2-1设计总体框图

上图所示数控电源的输出电压数值由键盘控制。

通过键盘把需要输出的电压值以步进方式输入到单片机。

这里电压采用单片机的PWM模拟电压输出。

显示电路既可用来显示输出的电压值,也可用来显示键盘电路的调整过程。

PWM输出模拟电压不一定满足要求,如果不满足输出电压的要求,将需要添加一个电压放大器。

经过OP27线形转换后,得到所需电压值,另外对于监测电压的实际输出电压值通过单片机的AD采样口将采样值送回单片机处理后显示。

在该数字控制电源中,使用8051芯片完成系统控制按键输入判断,电压数值显示,以及对外部芯片的各种数字控制。

第三章数字控制部分

3.1STC12C5410AD单片机介绍

STC12C5410AD系列及STC12C2052AD系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍,内部集成MAX810专用复位电路。

4路PWM,8路高速10位A/D转换,针对电机控制,强干扰场合。

STC12C2052AD系列只有2路PWM,8路高速8位A/D转换。

1.增强型8051CPU,1T,单时钟/机器周期,指令代码完全兼容传统8051

2.工作电压:

STC12C5410AD系列工作电压:

5.5V-3.5V(5V单片机)/3.8V-2.2V(3V单片机)

STC12C2052AD系列工作电压:

3.工作频率范围:

0-35MHz,相当于普通8051的0~420MHz

4.用户应用程序空间1K/2K/4K/6K/8K/10K/12K字节......

5.片上集成512字节RAM(STC12C5410AD系列),STC12C2052AD系列单片机为256字节RAM

6.通用I/O口(27/23/15个),复位后为:

准双向口/弱上拉(普通8051传统I/O口)可设置成四种模式:

准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达到20mA,但整个芯片最大不得超过55mA

7.时钟源:

外部高精度晶体/时钟,内部R/C振荡器用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟常温下内部R/C振荡器频率为:

5.2MHz~6.8MHz

精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,应认为是4MHz~8MHz

8.共6个16位定时器/计数器,两个专用16位定时器T0和T1再加上PCA模块可再实现4个16位定时器,STC12C2052AD系列只有两路PCA

9.外部中断2路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断唤醒

10.PWM(4路)/PCA(可编程计数器阵列,4路),5410系列是4路,2052系列只有两路

---也可用来当4路D/A使用

---也可用来再实现4个定时器

---也可用来再实现4个外部中断(上升沿中断/下降沿中断均可分别或同时支持)

11.A/D转换,10位精度ADC,共8路。

STC12C2052AD系列只有8位精度

3.1.1STC12C5410AD系列8051单片机的基本结构框图

3.1.2I/O口各种不同的工作模式及配置介绍

I/O口配置

STC12C5410AD系列单片机其所有I/O口均可由软件配置成4种工作类型之一,如下表所示。

4种类型分别为:

准双向口(标准8051输出模式)、推挽输出、仅为输入(高阻)或开漏输出功能。

每个口由2个控制寄存器中的相应位控制每个引脚工作类型。

STC12C5410AD系列单片机上电复位后为准双向口(传统8051的I/O口)模式。

2V以上时为高电平,0.8V以下时为低电平。

P3口设定<

P3.7,x,P3.5,P3.4,P3.3,P3.2,P3.1,P3.0无P3.6口>

P2口设定<

P2.7,P2.6,P2.5,P2.4,P2.3,P2.2,P2.1,P2.0>

P1口设定<

P1.7,P1.6,P1.5,P1.4,P1.3,P1.2,P1.1,P1.0>

3.1.3PWM输出

STC12C5410AD系列单片机有四路可编程计数器阵列(PCA)/PWM,12C2052AD系列只有两路。

PCA含有一个特殊的16位定时器,有4个16位的捕获/比较模块与之相连。

每个模块可编程工作在4种模式下:

上升/下降沿捕获、软件定时器、高速输出或可调制脉冲输出。

模块0连接到P3.7(CEX0/PCA0/PWM0),模块1连接到P3.5(CEX1/PCA1/PWM1),模块2连接到P2.0(CEX2/PCA2/PWM2),模块3连接到P2.4(CEX3/PCA3/PWM3)。

寄存器CH和CL的内容是正在自由递增计数的16位PCA定时器的值。

PCA定时器是4个模块的公共时间基准,可通过编程工作在:

1/12振荡频率、1/2振荡频率、定时器0溢出或ECI脚的输入(P3.4)。

定时器的计数源由CMODSFR的CPS1和CPS0位来确定。

CMODSFR还有2个位与PCA相关。

它们分别是:

CIDL,空闲模式下允许停止PCA;

ECF,置位时,使能PCA中断,当PCA定时器溢出将PCA计数溢出标志CF(CCONSFR)置位。

CCONSFR包含PCA的运行控制位(CR)和PCA定时器标志(CF)以及各个模块的标志(CCF3/CCF2/CCF1/CCF0)。

通过软件置位CR位(CCON.6)来运行PCA。

CR位被清零时PCA关闭。

当PCA计数器溢出时,CF位(CCON.7)置位,如果CMOD寄存器的ECF位置位,就产生中断。

CF位只可通过软件清除。

CCON寄存器的位0~3是PCA各个模块的标志(位0对应模块0,位1对应模块1,位2对应模块2,位3对应模块3),当发生匹配或比较时由硬件置位。

这些标志也只能通过软件清除。

所有模块共用一个中断向量。

PCA的中断系统如图所示。

PCA的每个模块都对应一个特殊功能寄存器。

模块0对应CCAPM0,模块1对应CCAPM1,模块2对应CCAPM2,模块3对应CCAPM3.特殊功能寄存器包含了相应模块的工作模式控制位。

当模块发生匹配或比较时,ECCFn位(CCAPMn.0,n=0,1,2,3由工作的模块决定)使能CCONSFR的CCFn标志来产生中断。

PWM(CCAPMn.1)用来使能脉宽调制模式。

PCA计数值与模块的捕获/比较寄存器的值相匹配时,如果TOG位(CCAPMn.2)置位,模块的CEXn输出将发生翻转。

当PCA计数值与模块的捕获/比较寄存器的值相匹配时,如果匹配位MATn(CCAPMn.3)置位,CCON寄存器的CCFn位将被置位。

CAPNn(CCAPMn.4)和CAPPn(CCAPMn.5)用来设置捕获输入的有效沿。

CAPNn位使能下降沿有效,CAPPn位使能上升沿有效。

如果两位都置位,则两种跳变沿都被使能,捕获可在两种跳变沿产生。

通过置位CCAPMn寄存器的ECOMn位(CCAPMn.6)来使能比较器功能。

每个PCA模块还对应另外两个寄存器,CCAPnH和CCAPnL。

当出现捕获或比较时,它们用来保存16位的计数值。

当PCA模块用在PWM模式中时,它们用来控制输出的占空比。

脉宽调节模式(PWM)

所有PCA模块都可用作PWM输出(下图)。

输出频率取决于PCA定时器的时钟源。

PCAPWMmode/可调制脉冲宽度输出模式

由于所有模块共用仅有的PCA定时器,所有它们的输出频率相同。

各个模块的输出占空比是独立变化的,与使用的捕获寄存器{EPCnL,CCAPnL}有关。

当CLSFR的值小于{EPCnL,CCAPnL}时,输出为低,当PCACLSFR的值等于或大于{EPCnL,CCAPnL}时,输出为高。

当CL的值由FF变为00溢出时,{EPCnH,CCAPnH}的内容装载到{EPCnL,CCAPnL}中。

这样就可实现无干扰地更新PWM。

要使能PWM模式,模块CCAPMn寄存器的PWMn和ECOMn位必须置位。

由于PWM是8位的,所以PWM的输出频率=PCA时钟输入源频率/256,PCA时钟输入源可以从以下4种中选择一种:

Fosc/12,Fosc/2,定时器0的溢出,ECI/P3.4输入

举例:

要求PWM输出频率为38KHz,选Fosc/2为PCA/PWM时钟输入源,求出Fosc的值

由计算公式38000=Fosc/2/256,得到外部时钟频率Fosc=38000x256x2=19,456,000

如果要实现可调频率的PWM输出,可选择定时器0的溢出率或者ECI脚的输入作为PCA/PWM的时钟输入源当EPCnL=0及ECCAPnL=00H时,PWM固定输出高

当EPCnL=0及ECCAPnL=00H时,PWM固定输出高

当EPCnL=1及CCAPnL=0FFH时,PWM固定输出低

限流电阻用10K到1K

PCA/PWM寄存器列表

CMOD-PCA模式寄存器的位分配(地址:

D9H)

CMOD-PCA模式寄存器的位描述(地址:

CMOD-PCA计数器阵列的计数脉冲选择(地址:

CCON-PCA控制寄存器的位分配(地址:

D8H)

CCON-PCA控制寄存器的位描述(地址:

CCAPMn-PCA比较/捕获模块寄存器的位分配(CCAPM0地址:

0DAH;

CCAPM1地址:

0DBH)

CCAPMn-PCA比较/捕获模块寄存器的位描述(n:

0,1,2,3)

PCA模块工作模式(CCAPMn寄存器,n:

0,1,2,3)

3.1.4AD转换器

STC12C5410AD系列带A/D转换的单片机的A/D转换口在P1口(P1.7-P1.0),有8路10位高速A/D转换器,STC12C2052AD系列是8位精度的A/D,速度均可达到100KHz(10万次/秒)。

8路电压输入型A/D,可做温度检测、电池电压检测、按键扫描、频谱检测等。

上电复位后P1口为弱上拉型I/O口,用户可以通过软件设置将8路中的任何一路设置为A/D转换,不需作为A/D使用的口可继续作为I/O口使用。

需作为A/D使用的口需先将其设置为开漏模式或高阻输入,在P1M0、P1M1寄存器中对相应的位进行设置。

ADC_CONTR特殊功能寄存器:

A/D转换控制特殊功能寄存器

CHS2/CHS1/CHS0:

模拟输入通道选择,CHS2/CHS1/CHS0

ADC_START:

模数转换器(ADC)转换启动控制位,设置为“1”时,开始转换,转换结束后为0。

ADC_FLAG:

模数转换器转换结束标志位,当A/D转换完成后,ADC_FLAG=1,要由软件清0。

不管是A/D转换完成后由该位申请产生中断,还是由软件查询该标志位A/D转换是否结束,

当A/D转换完成后,ADC_FLAG=1,一定要软件清0。

SPEED1,SPEED0:

模数转换器转换速度控制位

ADC_POWER:

ADC电源控制位。

0:

关闭ADC电源;

1:

打开A/D转换器电源.建议进入空闲模式前,将ADC电源关闭,ADC_POWER=0.启动AD转换前一定要确认AD电源已打开,AD转换结束后关闭AD电源可降低功耗,也可不关闭。

初次打开内部A/D转换模拟电源,需适当延时,等内部模拟电源稳定后,再启动A/D转换,议启动A/D转换后,在A/D转换结束之前,不改变任何I/O口的状态,有利于高精度A/D转换

ADC_DATA/ADC_LOW2特殊功能寄存器:

A/D转换结果特殊功能寄存器

模拟/数字转换结果计算公式如下:

结果(ADC_DATA[7:

0],ADC_LOW2[1:

0])=1024xVin/VccVin为模拟输入通道输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。

取ADC_DATA的8位为ADC转换的高8位,取ADC_LOW2的低2位为ADC转换的低2位,则为10位精度。

如果舍弃ADC_LOW2的低2位,只用ADC_DATA寄存器的8位,则A/D转换结果为8位精度。

结果ADC_DATA[7:

0]=256xVin/Vcc

STC12C2052AD系列单片机A/D转换精度只有8位,固无ADC_LOW2寄存器。

3.1.5A/D转换模块的参考电压源

STC12C5410AD和STC12C2052AD系列单片机的参考电压源是输入工作电压Vcc,所以一般不用外接参考电压源。

如7805的输出电压是5V,但实际电压可能是4.88V到4.96V,用户需要精度比较高的话,可在出厂时将实际测出的工作电压值记录在单片机内部的EEPROM里面,以供计算。

如果有些用户的Vcc不固定,如电池供电,电池电压在5.3V-4.2V之间漂移,则Vcc不固定,就需要在8路A/D转换的一个通道外接一个稳定的参考电压源,来计算出此时的工作电压Vcc,再计算出其他几路A/D转换通道的电压。

如可在ADC转换通道的第七通道外接一个1.25V(或1V,或...)的基准参考电压源,由此求出此时的工作电压Vcc,再计算出其它几路A/D转换通道的电压。

3.2单元电路设计

3.2.1利用PWM实现D/A功能的应用电路图

PWM输出相当于DAC0832八位集成D/A转换器。

D/A转换部分的输出电压作为稳压输出电路的参考电压。

稳压输出电路的输出与参考电压成比例。

8位字长的D/A转换器具有256种状态。

当电压控制字从0,1,2,……到256时,电源输出电压为0.0,0.1,……10.0。

每路电压输出值的计算:

REF为参考电压,data为输入8位的比特数据;

我们这里用的REF=5v。

3.2.2A/D转换应用线路,按键扫描

如上图所示键盘电路通过分压电路,第一个按键所得电压为1/2Vcc,第二个按键分压2/3Vcc,第三个按键分压3/4Vcc,第四个按键分压4/5Vcc,那么利用单片机的P1.7口对按键电压进行采样,再对键盘电压对键盘的按下与否进行判断处理。

3.2.3AD采样电路和数字电压表

考虑到单片机的内部处理功能,可通过STC芯片的AD转换器增加数字电压表功能。

即由单片机的P1.3口对电压进行采样,通过设置ADC_CONTR特殊功能寄存器,启动以及停止AD转换。

然后读取寄存器ADC_DATA/ADC_LOW2(A/D转换结果特殊功能寄存器)的值最后通过单片机将十六进制数转换为ASCII码利用液晶显示模块显示。

因此将输出电压直接送回单片机进行AD采样,显示即实现了监测输出电压值的功能。

另外由于可以采样得到输出电压,那么可以校准输出电压和预置电压,使输出电压值更为精确。

AD采样电路

3.2.4电压放大电路

运算放大器通常都是工作在闭环状态.将运算放大器的放大电路接上一定的反馈电路和外接元件,就可以实现各种数学运算.运算放大器反馈电路有各种形式,不同的反馈电路和不同的输入方式可以组成各种不同用咖运算放大电路.

图5.14是输入信号加在反相输入端的比例运算电路.其中R1为输入端电阻,Rf为反馈电阻,它以并联负反馈的方式将输出电压反馈到反相输入端,为了在输入信号Ui=0时,输出U0=o,电阻的选择应满足R2=R1//Rf.这样可保证运算放大器的反相输入端与同相输入端的外接电阻相等,使其处于对称平衡状态,以消除运算放大器的偏置电流对输出电压的影响,因此,称R2为平衡电阻.

由理想运放的两条重要结论可知,Ii≈0,U+≈U-。

通过R1的电流I1,即:

If=I1又由于运放的通向输入端接地,U+=0,所以可得U+≈U-,也就是说,当同相端接地,U+=0时反相输入端电位U-≈0,它是一个不接地的“地”,称为“虚地”。

“虚地”的存在是运算电路在闭环工作状态下的一个重要特征。

由图5.14可得

因为I1≈If,所以可得

闭环电压放大倍数则为

上式表明,该电路的输出电压与输入电压之比仅由电阻RF与R1的比值决定,而与集成运放本身的参数无关.式中的负号表示输出电压与输入电压反相,因而称为反相比例运算放大电路。

当R1=RF时,U0=-Ui,反相输入比例运算电路就成了反相器.

那么此电路利用PWM模拟电压输出,后通过二次滤波,经过OP27放大电压后,电压为原来的两倍,即由原来的0~5v放大为0~10v变化。

接法如下:

3.2.5显示电路设计:

数控电源的数据显示采用LCD液晶显示:

即用单片机的P2口输出,利用液晶显示模块,电路如下图所示:

第四章软件部分

4.1软件设计说明:

控制程序使用C51编写,在KEILC平台下编译通过,运用STC软件将程序下载到芯片。

当按键按下,可进行电压调整,可调节电压1v,调节电压以步进0.1v。

在按键加减的过程中,LCD模块显示的电压随着上下变化,当按键不动作后,将单片机的PWM模拟输出电压经二次滤波电路输出,经线性,放大得到与显示电压值相同的电压。

同时将输出电压接至单片机的P1.2口可监测输出电压值,可进行预置值与测量值的比较。

另外将AD采样口独立出来可以实现数字电压表的测量功能。

4.2程序设计流程图

设计流程图分为三大部分,即主程序流程图,键盘扫描流程图,键盘控制流程图。

主程序流程图:

键盘扫描流程图:

键盘控制流程图:

4.3设计源程序

见附页

第五章硬件调试

5.1制版

电路原理图见附录1,元件清单见附录2。

PCB图如下图所示

按照PCB图将元件焊接至铜板上,焊接时注意是否虚焊。

5.2调试

准备就绪后,将变压器通电,开始进行测试,检测它们是否达到设计要求。

检查的项目包括输出电压范围,在整个输出电压范围内的步进调整值,输出电压与预置电压是否匹配和数字电压表功能的精准度。

数控电源系统的供电由直流稳压电源提供,由硬件电路的正负15V电源,5V电源提供。

排除故障:

在测试调试的过程中要排除障碍,刚开始液显不能正常工作,检查是否上电,调节电位器,看背光灯是否变化,没有变化则应检查单片机的输出口是否与液显正确连接,用万用表排查虚焊。

当检查硬件没有问题之后,再进行测试,当还是无法达到要求工作时,那么就是程序问题。

根据流程图修改程序,在KEIL软件中编译无错后再下载至再次进行调试检测。

5.2.1电压测试:

预置电压值/v

显示电压值/v

监测电压值/v

绝对误差/%

相对误差/%

0.1

0.11

0.01

10.00

0.5

0.52

0.02

40.00

1.2

1.19

0.83

1.8

1.82

1.11

2.0

2.01

0.50

2.4

2.43

0.03

1.25

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2