程控升压开关电源的设计_第1页
程控升压开关电源的设计_第2页
程控升压开关电源的设计_第3页
程控升压开关电源的设计_第4页
程控升压开关电源的设计_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I程控升压开关电源的设计摘要本文介绍了基于STC12C5410AD单片机的程控DC/DC升压变换设计,它采用软件的方法实现经DC/DC升压变换后的输出电压在一定范围内可调的功能。具有硬件电路相对简单,结构相对紧凑,价格低廉,用途广泛的特点,并且能够对部分电路调整,改善参数,使其满足系统设计的要求。本设计主要包括两大部分硬件设计部分和软件设计部分。硬件部分主要是由整流、滤波、DC/DC升压变换、STC12C5410AD单片机、键盘和LED数码显示等电路组成。软件系统包括软件设计的原理、软件流程图的绘制以及实现相应硬件功能的主要程序。设计出的程控开关电源可以实现以下功能通过软件的方法实现在一定范围内对经DC/DC升压变换后的输出电压的调整,通过STC12C5410AD单片机自带的A/D功能进行模数转换,将DC/DC升压变换后的电压以数字信号的形式保存在单片机内,并通过LED数码显示电路实现对输出电压、电流等信息的显示。设计出的“程控升压开关电源”要达到实用,还有许多的工作要做,如硬件的体积、显示的精度、调整范围等。这些功能的实现,还需要不断的完善硬件电路和软件。关键词DC/DC变换,单片机,A/D转换,LED显示IITHESETUPSWITCHPOWERSUPPLYOFTHEPROGRAMMABLECONTROLABSTRACTTHISARTICLEINTRODUCESTHEDC/DCSETUPTRANSFORMATIONOFTHEPROGRAMMABLECONTROLBASEDONSTC12C5410ADMCU,ITADOPTSTHESOFTWAREANDADJUSTSTHEEXPORTATIONVOLTAGEOFTHEDC/DCSETUPTRANSFORMATIONWITHINTHECERTAINSCOPEITALSOHASMANYSTRONGPOINT,SUCHASSIMPLENESSCIRCUITRY,CLOSETOGETHERCONFIGURATION,LOWPRICE,ABROADPURPOSEANDSOONITALSOCANADJUSTTOCIRCUITSOFPARTSANDIMPROVEPARAMETERTOSATISFYFORTHEDEMANDOFTHESYSTEMICDESIGNTHISDESIGNMAINLYINCLUDESTWOPARTSTHEHARDWAREDESIGNANDTHESOFTWAREDESIGNTHEHARDWAREPARTMAINLYISMADEUPOFCOMMUTATECIRCUIT、FILTERCIRCUIT、DC/DCSETUPTRANSFORMATIONCIRCUITS、STC12C5410ADMCU、KEYBOARDANDTHELEDDISPLAYETCTHESOFTWARESYSTEMINCLUDETHEPRINCIPLEOFSOFTWARE、THEFLOWCIRCUITDIAGRAMOFSOFTWAREANDTHEPROGRAMMABLEOFCORRESPONDINGHARDWARETHEDESIGNOF“THESETUPSWITCHPOWERSUPPLYOFTHEPROGRAMMABLECONTROL”CANCARRYOUTTHEFOLLOWINGFUNCTIONITADOPTSTHESOFTWAREANDADJUSTSTHEEXPORTATIONVOLTAGEOFTHEDC/DCSETUPTRANSFORMATIONWITHINTHECERTAINSCOPETHESTC12C5410ADMCUCARRYSOUTCONVERSIONOFANALOGSIGNALANDDIGITALALSIGNALBYITSELFUSINGSTC12C5410ADMCUKEEPSEXPORTATIONVOLTAGEOFTHEDC/DCSETUPTRANSFORMATIONWITHTHEFORMOFDIGITALALSIGNAL,THENUSINGLEDDISPLAYREALIZETHEDISPLAYOFTHEINFORMATIONOFEXPORTATIONVOLTAGEANDEXPORTATIONCURRENTETCTHEDESIGNOF“THESETUPSWITCHPOWERSUPPLYOFTHEPROGRAMMABLECONTROL“STILLHASMANYIMPROVEMENTSTOATTAINPRACTICABILITY,SUCHASTHEVOLUMOFHARDWARE,THEACCURACYOFDISPLAY,THEADJUSTABLESCOPEETCTOREALIZETHESEFUNCTIONSNEEDCONTINUOUSLYIMPROVEHARDWAREANDSOFTWAREIIIKEYWORDSDC/DCTRANSFORMATION,MCU,A/DCONVERSION,LEDDISPLAYIV目录前言1第1章程控升压开关电源设计的总体技术方案211程控升压开关电源的主要性能指标212程控升压开关电源的硬件设计总体结构方案2121整流、滤波和DC/DC变换电路3122单片机控制电路613程控升压开关电源的软件设计总体结构方案8第2章程控升压开关电源的软件电路设计1021主程序模块1022A/D转换模块设计1123PWM波模块设计1524键盘扫描和LED显示模块程序设计18241键盘扫描18242LED显示23结论26参考文献27致谢28附录129附录2300前言直流直流变换器(DC/DC变换器)是将一个固定的直流电压变换为可变的直流电压,它广泛的应用于数据通讯、计算机、自动化设备、工业仪器仪表、军事、航天等领域。DC/DC变换器具有加速平稳、快速响应的性能,并同时体现了节约电能的效果。传统的DC/DC变换器采用滑动变阻器来改变输出电压,不能实现DC/DC变换高效、高速及环境保护的目的。本“程控升压开关电源”的设计正是针对传统的DC/DC变换器存在的缺点,利用单片机技术,采用软件设计的方法来改变输出电压。本设计首先是根据实际需要制定出程控升压开关电源的性能指标和功能要求,然后由此具体设计出了硬件电路原理及其相关软件。系统中的硬件设计和软件设计均采用当前设计领域中广泛使用的模块化设计思想,它把一个复杂的设计过程分成若干模块分别加以解决,这样就大大简化设计难度,也便于执行检查错误。根据各个芯片的内部逻辑结构及其工作原理进行了硬件电路连接设计,并通过一些仿真软件对连接后的电路进行仿真,确保各个参数的设置以及部分性能指标符合设计要求;软件设计采用汇编语言编写,先在通用学习板上进行模块化设计,再将相关模块组合调试;最后软硬件进行联合调试。本设计要达到实用,还有许多的工作要做。由于经验不足,知识面窄等因素,设计中还存在许多不足之处,如显示延时的不合适,在调用显示时点亮的发光二极管会影响灭的二极管,还需要进一步的修改与调试,不足之处还请各位老师加以批评指正。1第1章程控升压开关电源设计的总体技术方案11程控升压开关电源的主要性能指标本设计的重要性能指标(1)电源220V,50HZ。(2)DC/DC升压电路的输入电压18V26V。(3)输出电压32V,输出电流2A。(4)输出电压可通过单片机进行调整,调整范围为10。(5)可直接与微机串行口连接,将程序下载到单片机。(6)A/D转换精度8位。(7)用户可编程实现单片机对输出电压和电流的LED显示。(8)单片机工作电压5V。12程控升压开关电源的硬件设计总体结构方案本系统硬件主要是由DC/DC升压电路、键盘、LED数码显示等电路组成,其核心部件是STC12C5410AD单片机。设计出的程控升压开关电源可以实现以下功能(1)通过软件编程实现输出电压和电流的显示;(2)通过键盘实现输出电压可调,调整范围为10。硬件系统的设计思路如下计算机通过UART接口与RS232连接,并由RS232实现计算机与单片机的串口通讯,本设计中用RS232的11、12口与单片机的P30、P31口连接,RS232的13、14口与计算机UART连接。计算机USB口为单片机提供电源。本系统先通过电压变换电路将市电转化为合适的电压,在将此电压作为DC/DC升压电路的输入,DC/DC升压电路的输出经过采样送到STC12C5410AD单片机,利用STC12C5410AD单片机自带的A/D转换功能,将DC/DC升压电路2输出的模拟信号转换成数字信号,并用LED数码管显示电路实现对DC/DC升压电路输出电压和电流的显示。STC12C5410AD单片机具有PWM波输出的功能,由于本设计需要程序控制输出电压可调,用PWM波就可以实现输出电压的调整。该程控升压开关电源电路原理框图如图11所示。电源变压器整流电路滤波电路DC/DC升压电路220V50JZ36V(A)SCT12C5410AD单片机RS232转换电路A/D采样键盘扫描电路数码管显示电路(B)图11原理框图(A)整流、滤波和DC/DC变换框图(B)单片机控制框图121整流、滤波和DC/DC变换电路1整流、滤波电路变压器副边电压通过电流整流电路又交流电压转化为直流电压,即将正弦波电压转化为单一方向的脉动电压。半波整流电路和全波整流电路的输出波形如图11中所画。可以看出,它们都含有较大的交流分量,会影响负载电路的正常工3作,因而不能直接作为电子电路的供电电源,需经过滤波电路滤波,使输出电压平滑。理想情况下,应将交流分量全部滤掉,使滤波电路的输出电压仅为直流电压。整流后的输出电压,平均值为TUOSIN220290I1UTDAVLLAVORI2在单相桥式整流电路中,因为每只二极管只在变压器副边电压的半个周期通过电流,所以每只二极管的平均电流只有负载电阻上电流平均值的一半,即LAVODRUII2450二极管承受的最大反向电压等于变压器副边的峰值电压,即2MAXR这样便可以根据流过二极管的平均电流值和它所承受的最大反向电压来选择二极管的型号。实际滤波后的输出电压平均值为21UAVO2DC/DC变换电路经过整流、滤波后的电压做为DC/DC升压电路的输入电压,DC/DC升压电路的输入电压范围在本系统中为18V26V;DC/DC升压电路的输出电压为32V。DC/DC升压电路的组成如图12所示。(MC34063的框图及工作原理见附录2)4RSC002CT511PFDRI8IPK7VCC6FS5SC1SE2TC3GND4L3406334063DL1534UHRQ97RR41888KRR322KRR25KQ2IRF5307VINVOUT图12DC/DC升压电路DC/DC升压电路的参数计算VOUT36VIOUT2AF(MIN)50KHZVIN(MIN)1825OR135VVRIPPLE(PP)05VOUTOR180MV(PP)(1)71305186MINISATFOUTTFN(2)LC振荡周期等于TONTOFF(其中TON是开关管导通时间,TOFF是开关管截止时间),也就是开关管开关频率的倒数,即SFOTN6310250MIN1AX由前两步可以求出TON和TOFF分别是SON66127102STOF610782(3)定时电容为PFTONC51027404655(4)检测电流为5ATOFNIUTIPK0817212(5)电感HNIPKVSATINL661057812035M(6)ATOLTII784X6602781430PKIRSC(7)正常的输出电压是由R1和R2来驱动的,即125RVOUT当R1为22K时驱动电流有,所以A50KR2165032122单片机控制电路1主体电路单片机要工作首先要将程序的下载到单片机内,下载是通过计算机的UART口与MAX232连接来完成的。当然,复位电路及晶振电路也是单片机正常工作的保障。使用者需要知道单片机是否在正常工作,这就要求有个发光二极管来指示单片机工作与否。本系统就是实现单片机控制输出电压变化的功能,并将输出电压和电流显示出来。由于单片机自带有A/D,这样就使得硬件变的简单,只需将A/D接口直接接到被测点,就可以完成A/D的功能;而输出电压变化的控制可以通过单片机自带的PWM波来完成,通过按键控制PWM波占空比来改变输出电压,再经过6A/D采样,最后通过输出设备输出即可。电路如图13所示。1234USB232PCTXDPCRXDUSBVCCUSBGNDUSBGNDPCRXDVCCPCTXD12345611128714151091316U5_232232CR2R1T2T1TXDARXDAC1601UC1701UC1901UC1801UP221P232RST3RXD/P304TXD/P315XTAL26XTAL17INTO/P328INT1/P339ECI/TO/P3410PWM1/T1/P3511PWM3/PCA3/P2412P2513VSS16P2614P2715P37/PCA0/PWM017P10/ADC018P11/ADC119P12/ADC220P13/ADC321P14/SS/ADC422P15/MOSI/ADC523P16/MISO/ADC624P17/SCLK/ADC725P20/PCA2/PWM226P2127VDD32P0331P0230P0129P0028STC12C5410ADRXDTXDPWMP17P16VCCP11P12P13P10R_LEDRES1YC133PFC233PFRR110KC310UFVCCD_LEDVCCS_POWER图13单片机电路2显示电路显示器是最常用的输出设备。特别是发光二极管显示器(LED)和液晶显示器(LCD),由于结构简单、价格廉价和接口容易,而得到广泛的应用。本设计中LED显示是用移位寄存74HC164来控制的,采用五个数码管进行静态显示,74HC164的级连方式为前一个74HC164的QH与后一个74HC164的输入端相连。74HC164的输出端QAQH通过电阻连到LED上,控制数码管选通的信号为P12口通过电阻、三极管与数码管的共阳极连接P11口控制CLOCK脉冲信号。74HC164的CLEAR端都始终接高电平,74HC164的A、B两输入端共同连接到P10口上。LED显示电路图如图14所示。71234568910111213U11234568910111213U21234568910111213U31289U41289U574LS164L11L12L13L14L15L16L17L18L21L22L23L24L25L26L27L28L31L32L33L34L35L36L37L38L41L42L43L44L45L46L47L48L51L52L53L54L55L56L57L58P11P10VCCABFCGDEVCCABCDEFGDPDP83VCCDS1ABFCGDEVCCABCDEFGDPDP83VCCDS2ABFCGDEVCCABCDEFGDPDP83VCCDS3ABFCGDEVCCABCDEFGDPDP83VCCDS4ABFCGDEVCCABCDEFGDPDP83VCCDS5Q1PNPR4330KVCCP12L18L17L16L15L14L13L12L11L28L27L26L25L24L23L22L21L38L37L36L35L34L33L32L31L48L47L46L45L44L43L42L41L58L57L56L55L54L53L52L51COMCOMCOMCOMCOMR8100COMCOMARR1ARR2ARR3ARR4ARR5ARR6ARR7ARR8124567910124567910124567910124567910124567910345610111213345610111213QAQBQCQDQEQFQGQHQAQBQCQDQEQFQGQHQAQBQCQDQEQFQGQHQAQBQCQDQEQFQGQHQAQBQCQDQEQFQGQHABCLKCLRABCLKCLRABCLKCLRABCLKCLRABCLKCLR图14LED显示电路图3键盘电路键盘连接方式有两种独立式按键和行列式按键。本键盘模块采用行列式按键,具有八个按键输入。其工作原理为单片机通过运行程序不断扫描键盘,检查是否有键按下,当扫描到有键按下时。经过程序处理找出按下的键值,并调用相应键功能程序完成相应的键操作。其电路原理图如图15所示。S3SWPBS1SWPBS4SWPBS5SWPBS6SWPBS7SWPBS8SWPBS2SWPBP13R4210KVCCARR1ARR2ARR3ARR4ARR5ARR6ARR7ARR8图15按键电路13程控升压开关电源的软件设计总体结构方案8程控升压开关电源的应用软件系统包括主程序模块、A/D转化模块、PWM波输出、键盘和显示模块。主程序的内容包括主程序的起始地址,有关内存单元及相关部件的初始化和一些子程序。A/D转化模块主要是对DC/DC升压电路的输出电压和输出电流进行转化,并将转化的数据的进行存储。键盘作为人机交流的接口,通过键盘可以实现对输出电压的调整。显示模块将A/D转化模块的数据进行显示。软件设计模块图如图16所示。主程序A/D转换键盘数码管显示DC/DC升压变换图16软件设计模块图9第2章程控升压开关电源的软件电路设计21主程序模块本系统主程序完成的功能如下系统初始化和子程序的调用。其中子程序的调用包含A/D采样与转换、PWM波输出、键盘扫描和LED显示。接通电源后,STC12C5410AD单片机自动复位,开始运行该程序。初始化后给出A/D采样结果的显示,接着判断是否有键按下,若没有键按下,显示上次A/D采样的结果,再判断是否有键按下;若有键按下,则继续下一步操作,即通过键盘改变PWM波的占空比,再将A/D采样的结果显示出来,然后继续扫描键盘,重复上述过程。具体工作的流程图如图21所示。开始初始化是否有键按下改变PWM波占空比显示结果A/D采样YESNOA/D采样并显示图21主流程图10在主流程图的思路下,采用模块化设计,将整个软件系统分成几个模块,先完成各个模块的设计,再将各模块组合起来进行调试,这样做实现软件的完善比较方便。22A/D转换模块设计硬件电路产生的信号是模拟信号,而单片机处理的是数字信号,这就需要将模拟信号转化成数字信号,完成这种功能就需要一个硬件电路或采用自带A/D的单片机,由于外接A/D电路存在误差,所以本系统采用自带A/D的STC12C5410AD单片机。本设计采用的STC12C5410AD单片机具有输出八路A/D转换的功能,可任选其一。本设计用第六路A/D和第七路A/D(第六路A/D作为输出电流采样用,第七路A/D作为输出电压采样用)。作为A/D转换的口需先将其设置为高阻输入或开漏模式,在P1M0和P1M1中对相应的位进行设置。A/D转换正常工作还需对一些特殊功能寄存器进行设置,和A/D转换有关的特殊功能寄存器包含ADC_CONTR,ADC_DATA和ADC_LOW2。(1)P1M0和P1M1的设置P1M0和P1M1的地址分别是91H和92H。P1M0设置为1,P1M1设置为1或0均可(0为高阻输入模式,1为开漏模式)。(2)表21是ADC_CONTR寄存器(地址C5H)表21ADC_CONTR寄存器位76543210符号ADC_POWERSPEED1SPEED0ADC_FLAGADC_STARTCHS2CHS1CHS0表22是模拟输入通道选择。表22模拟输入通道选择CHS2CHS1CHS0模拟输入通道选择000选择P10作为A/D输入001选择P11作为A/D输入11010选择P12作为A/D输入011选择P13作为A/D输入100选择P14作为A/D输入101选择P15作为A/D输入110选择P16作为A/D输入111选择P17作为A/D输入ADC_START为1时开始A/D转换,结束后为0。ADC_FLAGA/D转换结束标志位。A/D转换完ADC_FLAG1,用软件清0。表23是A/D转换速度控制位表23A/D转换速度控制位SPEED1SPEED0A/D转换一次所需时间00840个时钟周期01630个时钟周期10420个时钟周期11210个时钟周期,A/D转换速度约为100KHZADC_POWERA/D电源控制位。(3)ADC_DATA是A/D转换结果寄存器(地址C6H)八位全有效。A/D转换精度是十位时,为A/D转换结果高八位(4)ADC_LOW2是A/D转换结果寄存器(地址BEH)只有低二位有效。A/D转换精度是十位时存A/D转换结果低二位A/D转换作为子程序被调用,转换完需返回。A/D流程如图22所示。12开始初始化A/D采样A/D转换是否结束NO返回YES显示A/D转换结果A/D转换结果存储图22A/D转换流程图P17作为A/D转换的部分程序如下MAINMOVSP,7FHACALLINITIATE_RS232;初始化RS232ACALLADC_POWER_ON;开A/D转换电源ACALLSET_P17_OPEN_DRAIN;设置P17为开漏ACALLSET_ADC_CHANNEL_7;设置P17为A/D转换通道ACALLGET_AD_RESULT;测量电压并且取A/D转换结果13WAIT_LOOPSJMPMAININITIATE_RS232CLRESMOVTMOD,20HMOVSCON,50HMOVTH1,0FBHMOVTL1,0FBHSETBTR1RETADC_POWER_ONPUSHACCORLADC_CONTR,80HMOVA,20HACALLDELAY;调延时POPACCRETSET_P17_OPEN_DRAINPUSHACCMOVA,10000000BORLP1M0,AORLP1M1,APOPACCRETSET_ADC_CHANNEL_7MOVADC_CONTR,ADC_POWER_ON_SPEED_CHANNEL_7;P17作为A/D输入,ADC_POWER_ON_SPEED_CHANNEL_711100111BMOVA,05HACALLDELAY14RETGET_AD_RESULTPUSHACCMOVADC_DATA,0HORLADC_CONTR,00001000BWAIT_AD_FINISHEMOVA,00010000BANLA,ADC_CONTRJZWAIT_AD_FINISHEANLADC_CONTR,11100111BMOVA,ADC_DATAMOVADC_CHANNEL_7_RESULT,A;7通道A/D转换结果POPACCRET23PWM波模块设计本设计的要求是通过单片机控制输出电压变化的,而PWM波是通过改变占空比来实现电压有效值的变化,这样就可以实现通过PWM波来控制输出电压的变化的目的。本设计采用的STC12C5410AD单片机具有输出四路PWM波的功能,可任选其一。本设计的PWM波从单片机的P37脚输出,即采用PWM0输出。PWM波要正常输出需要对一些特殊功能寄存器进行设置,和PWM波输出有关的特殊功能寄存器包含CCON,CL,CH,CCAPMN,PCA_PWMN,EPCA_LVD,CCAPNH。(1)表24是CCON寄存器的位分配(地址D8H)表24CCON寄存器的位分配位76543210符号CFCRCCF3CCF2CCF1CCF015由于设计中只用到CCON寄存器的CCON6位,所以只对此位描述,CCON6位的含义PCA计数器阵列运行控制位。该位通过软件置位,用来起动PCA计数器阵列计数。该位通过软件清零,用来关闭PCA计数器。(2)表25是CCAPMN寄存器的位分配(CCAPM0地址DAH)表25CCAPMN寄存器的位分配位76543210符号ECOMNCAPPNCAPNNMATNTOGNPWMNECCFN本设计中用到CCAPMN1和CCAPMN6。CCAPMN1位的含义使能比较器。为1时使能比较器功能。CCAPMN6位的含义脉宽调节模式。为1时使能CEXN脚用作脉宽调节输出。(3)CH和CL的地址分别是F9H和E9H,含义分别是PCA计数器的高八位和低八位。(4)EPCA_LVD的地址为IE6,是PCA中断和LVD中断共享的总中断控制位。(5)CCAPNH寄存器含义PCA模块N捕获/比较寄存器的高八位。本设计采用CCAP0H,地址为FAH。(6)PCA_PWMN是PCA模块N(N可以取0到5之间任意一个数)PWM寄存器。表26是PCA_PWMN寄存器表26PCA_PWMN寄存器位76543210符号EPCNHEPCNLPCA_PWMN0位含义在PWM模式下,与CCAPNL组成9位数。PCA_PWMN1位含义在PWM模式下,与CCAPNH组成9位数。本系统采用PCA_PWM0,其地址为F2H。采用8位数。设置还特殊寄存器后,PWM波就可以输出了。PWM波程序如下MAINMOVSP,0E0H16ACALLPCA_INIT;初始化MAIN_LOOPACALLPWMSJMPMAIN_LOOPPCA_INITMOVCCON,00H;关PCA计数器MOVCL,00H;放初值MOVCH,00HMOVCCAPM0,42HMOVPCA_PWM0,00HSETBEPCA_LVDSETBEA;开中断SETBCR;开计数器RETPWMMOVA,PULSE_WIDTH_MINMOVPULSE_WIDTH,APWM_LOOP1;占空比由小变大MOVA,PULSE_WIDTHCLRCSUBBA,PULSE_WIDTH_MAXJNCPWM_AMOVA,PULSE_WIDTHMOVCCAP0H,A;输出波形,可用示波器观察LCALLDISPLAY;LED显示MOVA,PULSE_WIDTHADDA,STEP2;步进加MOVPULSE_WIDTH,AACALLDELAY;调延时17SJMPPWM_LOOP1PWM_AMOVA,PULSE_WIDTH_MAXMOVPULSE_WIDTH,APWM_LOOP2;占空比由大变小MOVA,PULSE_WIDTHCLRCSUBBA,PULSE_WIDTH_MINJCPWM_BJZPWM_BMOVA,PULSE_WIDTHMOVCCAP0H,A;输出波形,可用示波器观察LCALLDISPLAYMOVA,PULSE_WIDTHCLRCSUBBA,STEP2;步进减MOVPULSE_WIDTH,AACALLDELAYSJMPPWM_LOOP2PWM_BRET24键盘扫描和LED显示模块程序设计241键盘扫描1软件消除键抖动按键的合断都存在一个抖动的暂态过程,图23是按键抖动示意图,这种暂态的抖动过程大约经过510MS的时间,人的肉眼是觉察不到的,但对高速的18CPU是有反应的,可能产生误差处理,所以必须采取措施以消除抖动。图23按键抖动示意图消除抖动的措施有两种硬件消抖和软件消抖。本系统采用软件消抖的方式,消除抖动的方法就是用延时来躲过暂态抖动过程,执行一段大于10MS的延时程序后,再读取稳定的键状态。2键编码及键值一组按键或键盘都要通过I/O线查询按键的开关状态。由于按键的结果就是要转换成为与累加器中的数值相对应的键值,以实现按键功能程序的散转,所以需要对键盘进行功能定义。键码可按下式形成键码首行键码列号3键盘扫描键盘采用动态扫描的方式,键盘扫描电路输出端和LED显示器段码控制端口共用74HC164的输出Q0Q7。键盘扫描的原理按键设置在行、列线的交点,行、列线分别连接到按键开关的两端。行线(即单片机的P13口)通过软件设置为高电平。当无按键时P13为高电平,若有按键则P13就变为低电平,只要不停的检测P13的电平就可以判断是否有键按下。若有键按下,接下来就是查询键码,可选择从左到右的顺序来查询,将扫描字送给输出再将P13置为高电平,单片机读P13的状态就可以了。键盘扫描的工作过程当调用键盘扫描子程序时先判断是否有键按下,没有的话继续扫描键盘,当有键按下先调用延时程序去抖动,再判断是否有键按下,没有的话继续扫描键盘,当有键按下时,查键号并完成相应功能,定义键盘的0号键为PWM波负占空比的加,1号键为PWM波负占空比的减,加减的变化量是相等的,其他按键暂时不用。流程图如图24所示。19开始是否有键按下调用延时是否有键按下查键号返回JMPADPTRYESYESNONO0键功能子程序1键功能子程序A00HA01H图24键盘扫描流程图键盘扫描程序如下SCANKEYSETBKEYROW置P13为高电平MOVDATA_OUTPUTBUF,00H20LCALLDATA_OUTPUTMOVA,P1JBACC3,NOKEY判断是否有键按下,没有的话继续扫描,当有的话延时LCALLDELAY45MS软件消抖MOVA,P1JBACC3,NOKEY键盘行还为0,则取键值MOVARRANGENUM,00H将键盘列号置为0MOVSCANVALUE,07FH列扫描MOVSCANVALUE,0FEHGETKEY1SETBKEYROWMOVA,SCANVALUE扫描字中介寄存器MOVDATA_OUTPUTBUF,ALCALLDATA_OUTPUT列扫描MOVA,P1JNBACC3,GETKEYVALUEMOVA,SCANVALUERRAMOVSCANVALUE,AINCARRANGENUMJBACC7,GETKEY1LJMPNOKEYGETKEYVALUEMOVDPTR,KEYVALUE;KEYVALUE放显示的段值MOVA,ARRANGENUMXORA,00H;判断是否是00号键按下JZKEY0;是00号按下则跳到其功能子程序处XORA,01H;判断是否是01号键按下21JZKEY1;是01号按下则跳到其功能子程序处NOKEYAJMPSCANKEY;无按键继续扫描DELAY45MS;延时MOVR7,150TMMOVR6,150TM6DJNZR6,TM6DJNZR7,TMRETKEY0;00号键实现步加的功能MOVDPTR,KEYVALUE;KEYVALUE放显示的段值MOVA,DATA_OUTPUTBUF1MOVCA,ADPTRMOVKEYVALUEBUF,AMOVDATA_OUTPUTBUF,KEYVALUEBUFLCALLDATA_OUTPUT1;用来显示加的结果LCALLDELAY1SMOVDATA_OUTPUTBUF2,DATA_OUTPUTBUF1;DATA_OUTPUTBUF1里面放加后的结果MOVA,DATA_OUTPUTBUF2SUBBA,STEPMOVDATA_OUTPUTBUF2,AMOVA,DATA_OUTPUTBUF1ADDA,STEP;STEP为步进值MOVDATA_OUTPUTBUF1,AAJMPSCANKEYKEY1;01号键实现步减的功能MOVDPTR,KEYVALUEMOVA,DATA_OUTPUTBUF2MOVCA,ADPTR22MOVKEYVALUEBUF,AMOVDATA_OUTPUTBUF,KEYVALUEBUFLCALLDATA_OUTPUT1;用来显示减的结果LCALLDELAY1SMOVDATA_OUTPUTBUF1,DATA_OUTPUTBUF2;DATA_OUTPUTBUF2里面放减后的结果MOVA,DATA_OUTPUTBUF1ADDA,STEPMOVDATA_OUTPUTBUF1,AMOVA,DATA_OUTPUTBUF2SUBBA,STEP;STEP为步进值MOVDATA_OUTPUTBUF2,AAJMPSCANKEY242LED显示LED显示是由若干个发光二极管组成显示的字段。当二极管导通时相应的一个点或一个笔划发光,这样就能显示各种字符,常用的七段LED显示器的结构如图25所示。ABFCGDEVCCABCDEFGDPDP83VCC124567910图25LED数码的管脚配置用LED显示器显示十六进制数和空白及DP的显示段码。从LED显示器的显示原理可知,为了显示字母数字,必须最终转换成相应段选码,组成一个“8”23字形的7段,再加上一个小数点位,共计8段,因此提供LED显示器的显示段码为一个字节。各段码的对应关系如表27所示。表27段码与显示段对应表段码位D0D1D2D3D4D5D6D7显示段ABCDEFGDPLED显示字样对应十六进制数如表28所示。表28LED显示字样与十六进制数对应表LED显示字样01234567十六进制数EEH28HCDH6DH2BH67HE7H2CHLED显示字样89ABCDEF十六进制数EFH6FHAFHE3HC6HE9HC7H87H显示一般是为其他子程序服务,完成显示后返回。显示程序如下DISPLAYMOVA,00HMOVR1,20H;R1计数用LCALLJUDGE;前三句实现后面四个LED管灭MOVA,DATA_OUTPUT;DATA_OUTPUT放要显示的数字。MOVR1,08HLCALLJUDGERET;完成显示后返回JUDGEJBACC0,JJCLRP1024AJMPCLK;传输数据JJSETBP10CLKCLRP11;上升沿时钟SETBP11RRA;A累加器里面数右移DJNZR1,JUDGERET25结论本设计主要包括两大部分硬件设计部分和软件设计部分。硬件系统主要包括以下模块DC/DC升压变换模块、A/D模块键盘控制PWM波模块、显示模块以及RS232转换模块。软件系统包括软件总体框图的构想、软件设计的原理、软件流程图的绘制以及部分程序。毕业设计现已接近尾声,设计出的程控升压开关电源达到了预期的效果,任务书中要求设计功能已经基本实现,可以进行输出电压和电流的LED显示,能够对输出电压进行一定范围的调节。设计期间,需要把大学几年所学的理论知识应用到实践中,这不但是对课本上所学的知识有了更进一步的了解,而且有助于提高动手能力、理论联系实际能力。在这次毕业设计中,从选题到收集资料,再到软硬件的设计,明显感觉到还有很多地方需要完善,单凭已有的知识还是不够的。由于个人能力有限,难免有漏洞和不足之处,希望各位老师多提些宝贵的意见和建议。我今后会继续努力,争取能够在此基础上设计出更先进、功能更强大、结构更简单的智能化仪器。26参考文献1华成英,童诗白模拟电子技术基础第三版北京高等教育出版社,200442阎石数字电子技术基础第四版北京高等教育出版社,200443邱关源电路第四版北京高等教育出版社,200444SEMICONDUCTORCOMPONETSINDUSTRIES,LLCPUBLICATIONORDERNUMBERAN910/DHTTP/ONSEMICOM,APRIL,2002REV35莫力PROTEL电路设计北京国防工业出版社,200516姚四改PROTEL99SE电子线路设计教程上海上海交通大学出版社,200417蔡惟铮常用电子元器件手册哈尔滨哈尔滨工业大学出版社,19988邸春红VISIO2003图形设计实用教程北京清华大学出版社,200699李建忠单片机原理及应用西安西安电子科技大学出版社,2002210马家辰,孙玉德,张颖MCS51单片机原理及接口技术哈尔滨哈尔滨工业大学出版社,1998911何莉微机原理与接口技术北京机械工业出版社,2004112丁元杰单片微机原理及应用北京机械工业出版社,2004513沈伟慈通信电路西安西安电子科技大学出版社,2004114丁志刚,李刚民单片机微型计算机原理与应用北京北京电子工业大学出版社,1990515张友德单片机原理与实验上海复旦大学出版社,199116张俊谟单片机中级教程北京北京航空航天大学出版社,199917王树勋MCS51单片微型计算机原理与开发北京机械工业出版社,199818张国良汇编语言基础北京国防工业出版社,200119齐志儒、高福祥汇编语言程序设计沈阳东北大学出版社,199420求是科技单片机典型模块设计实例导航北京人民邮电出版社27附录1硬件设计原理图YC133PFC233PFR110KC310UFVCRSC002CT51PFVINDRI8IPK7VC6FS5SC1SE2TC3GND4L3406334063VOUTDL1534UHP221P232RST3RXD/P304TXD/P315XTAL26XTAL17INTO/P328INT1/P339ECI/TO/P3410PWM1/PCA1/T1/P3511PWM3/PCA3/P2412P2513VS16P2614P2715P37/PCA0/PWM017P10/ADC018P11/ADC119P12/ADC220P13/ADC321P14/S/ADC422P15/MOSI/ADC523P16/MISO/ADC624P17/SCLK/ADC725P20/PCA2/PWM226P2127VD32P0331P0230P0129P0028U_STC12C5410ADSTC12C5410AD1234D_BRIDGEBRIDGE1TRTRANS3VINR101KR91KR110K321411U2LMALM324R810KR191KR1810K1098U4_LM324CLM324VOUT1234USB232CON4PCTXDPCRXDUSBVCUSBGNDUSBVCUSBGNDUSBGNDVCRXDATXDAGND12345678910111213141516J2J8VC485SVSVGND485RXDTXDTXDRXDPCRXDVCPCTXD12345611128714151091316U5_232232CR2R1T2T1TXDRXDC1601UC1701UC1901UC1801URXDTXDPWMD_LEDVCR_LEDRES1S_POWERP17P17P16P16VOUTVCA1B2QA3QB4QC5QD6CLK8CLR9QE10QF11QG12QH13U174LS164A1B2QA3QB4QC5QD6CLK8CLR9QE10QF11QG12QH13U274LS164A1B2QA3QB4QC5QD6CLK8CLR9QE10QF11QG12QH13U374LS164A1B2QA3QB4QC5QD6CLK8CLR9QE10QF11QG12QH13U474LS164A1B2QA3QB4QC5QD6CLK8CLR9QE10QF11QG12QH13U574LS164L1L12L13L14L15L16L17L18L21L2L23L24L25L26L27L28L31L32L3L34L35L36L37L38L41L42L43L4L45L46L47L48L51L52L53L54L5L56L57L58P11P10S3SWPBS1SWPBS4SWPBS5SWPBS6SWPBS7SWPBS8SWPBS2SWPBVCP10P11P12P13VCGNDABFCGDEVC1245679ABCDEFG10DPDP83VCDS1GRENCAABFCGDEVC1245679ABCDEFG10DPDP83VCDS2GRENCAABFCGDEVC1245679ABCDEFG10DPDP83VCDS3GRENCAABFCGDEVC1245679ABCDEFG10DPDP83VCDS4GRENCAABFCGDEVC1245679ABCDEFG10DPDP83VCDS5GRENCAQ1PNPR4330KVCP12L18L17L16L15L14L13L12L11L28L27L26L25L24L23L22L21L38L37L36L35L34L33L32L31L48L47L46L45L44L43L42L41L58L57L56L55L54L53L52L51P13R4210KVCCOMCOMCOMCOMCOMR412KR110R210R310R410R510R610R710R810R910R1010R1110R1210R1310R1410R1510R1610R1710R1810R1910R2010R2110R2210R2310R2410R2510R2610R2710R2810R2910R3010R3110R3210R3310R3410R3510R3610R3710R3810R3910R4010VCS17SWPBRESETRESETCOMCOMLED1LEDARR1ARR2ARR3ARR4ARR5ARR6ARR7ARR8ARR1ARR2ARR3ARR4ARR5ARR6ARR7ARR8VC1234567J1CON7P11P12P13LINDUCTORC_LVBO14700UFC_LVBO22350UFRQ97R41888KR322KR25KQ2IRF5307123456JP9GNDRLVOUT7GNDVIN123456JP7123456JP8VOUTVOUTVOUTRLRLRL33311113R12002P1028附录2MC34063简介1MC34063具有以下特点(1)能在3040V的输入电压下工作(2)短路电流限制(3)低静态电流(4)输出开关电流可达15A(无外接三极管)(5)输出电压可调(6)工作振荡频率从100HZ到100KHZ2MC34063电路原理MC34063是一单片双极型线性集成电路,专用于直流直流变换器控制部分。片内包含有温度补偿带隙基准源、一个占空比周期控制振荡器、驱动器和大电流输出开关。MC34063的封装形式为塑封双列8引线直插式,内部电路原理框图如图24所示。EDBT1T2SRQACT振荡器CIS比较器125VREF参考源开关管集电极口开关管发射极口定时电容地1234V比较器反向输入电流检测驱动管集电极口5678图24MC34063的内部电路原理框图工作过程如下振荡器通过恒流源对外接在CT管脚3脚上的定时电容不断地充电和放电以产生振荡波形。充电和放电电流都是恒定的,振荡频29率仅取决于外接定时电容的容量。与门的C输入端在振荡器对外充电时为高电平,D输入端在比较器的输入电平低于阈值电平时为高电平。当C和D输入端都变成高电平时触发器被置为高电平,输出开关管导通反之当振荡器在放电期间,C输入端为低电平,触发器被复位,使得输出开关管处于关闭状态。电流限制通过检测连接在VCC和5脚之间电阻上的压降来完成功能。当检测到电阻上的电压降接近超过300MV时,电流限制电路开始工作,这时通过CT管脚3脚对定时电容进行快速充电以减少充电时间和输出开关管的导通时间,结果是使得输出开关管的关闭时间延长。PWMSTEPUPDC/DCCONVERTERWITH30VOLTAGEREGULATORANDDETECTOROUTLINETHERS5RMSERIESARECMOSBASEDSTEPUPDC/DCCONVERTERICSEQUIPPEDWITHAVOLTAGEREGULATORVRANDAVOLTAGEDETECTORVDEACHOFTHESESTEPUPDC/DCCONVERTERICSCONSISTSOFAPWMDC/DCCONVERTER,ALINEARREGULATORANDAVOLTAGEDETECTORTHESEICSAREOUTPUTVOLTAGEFIXEDTYPEREGULATORSWHICHFUNCTIONASALINEARREGULATORWHENINPUTVOLTAGEISHIGH,ANDASSTEPUPDC/DCCONVERTERLINEARREGULATORWH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论