高精度数控稳压电源设计报告
- 格式:doc
- 大小:829.16 KB
- 文档页数:24
数控稳压电源南通职业大学数控稳压电源实验报告学院:电子信息工程学院班级:电子112姓名:张欣学号:110202227指导老师:陈卫兵目录一、摘要 (3)二、作品介绍 (3)三、芯片和部分模块介绍 (4)1.TLC1543简介及其应用 (4)2.TLC5615 器件的引脚图及各引脚功能 (4)3.功能框图 (5)四、作品功能 (7)五、作品结构 (9)六、原理图和pcb图的绘制 (11)七、心得体会 (12)一、摘要本系统由单片机控制模块、按键、液晶、LM324系列芯片、TLC1543,TLC5615,集成运放搭建构成,放大器、交流变压器来提供稳定电压输出;在以单片机为主控芯片、运算放大器及外围电路的部分,用按键控制步进可调电压输出,液晶显示输出电压值。
整个系统结构紧凑,电路简单。
二、作品介绍学校实验室使用的直流稳压电源,大多是通过电位器来调整输出电压,使用并不方便,并且步进幅度大难以精确调整。
而我们制作的这款数控稳压电源,可以实现步进调整电压,预设值快捷调整电压,使用更为方便、准确。
其次,在学生做实验的过程中,往往有人随意调整电压,稍不注意,就会造成实验失败、器件损毁。
为此,我们制作了“锁定输出电压”功能,“锁定输出电压”后需要按键解锁后才能改变输出电压,否则无法改变,以此来避免同学的误操作。
我们以单片机作为主控芯片,将数电、模电有效的结合起来运用,使用按键作为输入,用数码管和LED灯显示电源工作状态和模式,实现良好的人机界面效果。
技术指标:输出电压:3~12V。
电压调整方法:1.普通调整,步进=0.1V;2.快捷调整,按预设电压值快速切换。
限流:当输出过电流超过0.1秒后,切断输出,同时过流指示灯点亮。
开机模式:开机时调出预设电压,但不输出,需要按下输出键后才输出。
精度:输出与真实输出不高于5%。
锁定模式:在不锁定输出,可以自由调整输出电压;在锁定输出后,则输出电压不可调整,需要重修按下锁定键才可以重新调整电压。
数控直流稳压电源设计人员:鲍官牛马彪吴汉国指导老师:邱森友葛浩摘要:本数控直流稳压电源系统采用AT89S52单片机为主控模块,由DAC0832数模转换模块输出电压,经过由高精度运算放大器OP07组成的电压放大模块进行电压放大,引入由功率三极管TIP41C 组成的扩流模块进行电流扩大,采用7107进行电压测量式输出显示,能自动切换电源档位,提高本电源系统的效率。
基于可靠的硬件设计,和高效的软件设计,本系统具有电压输出稳定,负载能力好,精度高,人机界面友好,操作方便等特点。
关键词:数控数模转换扩流纹波电压AT89S52 DAC0832 OP07 7107Abstract:The direct voltage source of numerical control uses MCU AT89S52 as controller kernel,and DAC0832,the DA conversion module to outputVoltage,which enlarged by the voltage expansion module basing on accurateAmplifier OP07 Output display bases on IC 7107,with the method of voltage meauring.The system can automatically chooses appropriate power source supply ,which improves system’s efficiency,and has funtions of current overfloat selt-protecting,and saving the lastest settings.Base on reliable hardware and effectual software design, this system is qualified with quite high performs.Keyword: Numerical Control DA Conversion Current ExpansionCurrent Overfloat Selt-protectingVoltage Ripple AT89S52 DAC0832 OP07 7107目录第一章总论1.1设计任务和要求 (4)1.2 作品介绍 (4)1.3方案论证与比较 (6)1.3.1 微控制器的选择 (6)1.3.2 显示部分方案论证 (6)1.3.3 数据存储保存部分方案论证 (7)1.3.4 数模转换部分方案论证 (8)1.3.5 电压显示部分方案论证 (9)第二章电路原理分析和设计2.1 数模转换模块设计 (11)2.2 输出电压显示模块设计 (12)2.3 人机交互模块设计 (13)2.3.1 LED显示部分 (13)2.3.2 键盘输入部分 (13)2.3.3 按键输入数据处理设计 (14)2.4 提高电源效率和提压扩流模块.....................................................17第三章系统软件设计.. (20)3.1 系统设计总思路 (20)3.单片机资源优化处理 (20)3.2.1 单片即IO口安排 (20)3.2.2 提高CPU效率措施 (20)3.2.3 对于“+”“-“步进的处理 (20)3.2.4 对于抖动和干扰的处理 (20)3.3系统软件流程图 (21)第四章故障分析与系统测试 (22)4.1故障分析 (22)4.2系统测试与数据分析...............................................................23附录 (24)附1:整机电路图 (24)附2:程序源代码 (27)第1章总论1.1设计任务和要求:1.设计任务:设计一个数控稳压电源,可由按键直接输入电压值,还具有加、减调节的功能。
高效数控恒流电源摘要随着低碳经济时代的到来,提高能源利用率对工业和社会发展起着重要的作用。
基于此本文描述了高效率数控恒流电源的设计原理和实现方法,本系统采用DC/DC变换器芯片TPS5430,它是一款高效的电源开关控制芯片,输入电压范围宽,输出电流高达3A。
以MSP430F247单片机为主控制器,通过键盘来设置电源的输出电流,设置步进等级为1mA,并可由液晶显示器显示实际输出电流值和负载功率。
本系统还具有开路检测和过压保护功能,可广泛应用于需要高效恒流源的领域。
关键词:MSP430F247单片机DC/DC变换器高效恒流源AbstractThispaper describesthedesign of high-power LEDpower supply princi ple and method toMSP430F247 microcontroller-based controller, DC power through thekeyboard toset theoutputcurrent, set the step levelas 1mA, andthe actualoutput current valueandloadpower can be displayed by theLCD. Thissystem uses DC /DC converter chipTPS5430,theoutput power MOStubecan expansionthe current.Single Chip Programmable output digitalsignal, through D/ Aconverter (TLV5618) output analog, through the operational amplifier isolation amplifier, andprecision voltage sampling resistorcollectionenlarged compared to control DC / DCconverter's feedbackside, toachieve the outputcurrent control.Output current throughthe current / voltagechanges,theadoption ofA / D converter chip,real-time into the analog data, and then analyzed bymicrocomputer processing, thefeedbackthrough the form of data links, sothat current ismore stable,it constitutes a stable voltage-controlled current source.Actual testresult sshow thatthe systemoutputcurrent stability, with theloadand a mbient temperature changes and highJingDu,output current error of± 5mA, output current at 20mA~2000mA Fan Weican bearbitrarilysetwithin,output efficiency up to 90%, and thusthe actual applications requiring highstability and high efficiency constant current field.Keywords: MSP430F247 MCUDC/DC converter efficiencyconstant cur rent source目录一:方案设计与论证1.1总体设计方案与比较:方案一:采用以89C51为核心的单片机系统来控制12位AD7521的数据的输入并将其转换成模拟量输出同时单片机把输入的预值电流送数码管显示,再根据输出的电压量来控制电流的变化,此方案的优点是输入的预值电流信号稳定且避免了大量的数据存储,缺点是电路效率低。
数控稳压电源报告 Document serial number【KKGB-LBS98YT-BS8CB-BSUT-BST108】数控直流稳压电源设计人员:鲍官牛马彪吴汉国指导老师:邱森友葛浩摘要:本数控直流稳压电源系统采用AT89S52单片机为主控模块,由DAC0832数模转换模块输出电压,经过由高精度运算放大器OP07组成的电压放大模块进行电压放大,引入由功率三极管TIP41C组成的扩流模块进行电流扩大,采用7107进行电压测量式输出显示,能自动切换电源档位,提高本电源系统的效率。
基于可靠的硬件设计,和高效的软件设计,本系统具有电压输出稳定,负载能力好,精度高,人机界面友好,操作方便等特点。
关键词:数控数模转换扩流纹波电压AT89S52 DAC0832 OP07 7107Abstract:The direct voltage source of numerical control uses MCU AT89S52 as controller kernel,and DAC0832,the DA conversion module to outputVoltage,which enlarged by the voltage expansion module basing on accurate Amplifier OP07 Output display bases on IC 7107,with the method of voltage system can automatically chooses appropriate power source supply ,which improves system’s efficiency,and has funtions of current overfloat selt-protecting,and saving the lastest settings.Base on reliable hardware and effectual software design, this system is qualified with quite high performs.Keyword: Numerical Control DA Conversion Current ExpansionCurrent Overfloat Selt-protectingVoltage Ripple AT89S52 DAC0832 OP07 7107目录第一章总论设计任务和要求 (4)作品介绍 (4)方案论证与比较 (6)1.3.1 微控制器的选择 (6)1.3.2 显示部分方案论证 (6)1.3.3 数据存储保存部分方案论证 (7)1.3.4 数模转换部分方案论证 (8)1.3.5 电压显示部分方案论证 (9)第二章电路原理分析和设计数模转换模块设计 (11)输出电压显示模块设计 (12)人机交互模块设计 (13)2.3.1 LED显示部分 (13)2.3.2 键盘输入部分 (13)2.3.3 按键输入数据处理设计 (14)提高电源效率和提压扩流模块.....................................................17第三章系统软件设计.. (20)系统设计总思路 (20)3.单片机资源优化处理 (20)3.2.1 单片即IO口安排 (20)3.2.2 提高CPU效率措施 (20)3.2.3 对于“+”“-“步进的处理 (20)3.2.4 对于抖动和干扰的处理 (20)系统软件流程图 (21)第四章故障分析与系统测试 (22)故障分析 (22)系统测试与数据分析...............................................................23附录 (24)附1:整机电路图 (24)附2:程序源代码 (27)第1章总论设计任务和要求:1.设计任务:设计一个数控稳压电源,可由按键直接输入电压值,还具有加、减调节的功能。
延安大学西安创新学院本科毕业论文(设计)题目:数控直流稳压电源的设计专业:电子信息工程姓名:学号:指导教师:毕业时间:数控直流稳压电源的设计摘要:本设计针对对普通直流电源一般不可以调节或调节范围小的缺点设计出了一种可调节,宽调节范围的直流稳压电源。
该直流稳压电源系统以STC单片机公司的89C52RC单片机为核心,利用10位DA芯片TLC5615作为DA输出,由单片机由采样电阻对输出电压进行采样处理,采用C语言进行程序控制,输出0~9.9V,步进0.1V的精确稳压输出关键词:直流电流源;单片机;89C52RC;TLC5615High precision DC current source based on 51 MCUAbstract:For regular direct current voltage stabilizer accuracy is not high, and the adjusting range is small, we designed a direct voltage stabilizer with high precision and wide adjusting range. This system is based on the MCU of 89C52RC which product by STC. Using a chip TLC5615 which with 10 bit as DA output. By using the resister to process the output voltage. Use the C language to control the system. So that it can output 0~+9.9V, and stepping for 0.1V adjustment function.Key words: DC current;MCU;89C52RC;TLC5615目录1 引言 (1)2 设计原理 (1)3 单元电路的设计 (2)3.1DA的选择与论证 (2)3.2稳压输出方案选择与论证 (2)3.3显示模块的选择与论证 (3)3.4输入按键的选择与论证 (3)4 本系统核心器件简介 (3)4.1STC89C52单片机 (3)4.2TLC5615芯片 (4)4.3TLC431芯片 (5)4.4LM324芯片 (5)5 硬件电路设计 (6)5.1电源电路 (6)5.2DA输出电路 (6)5.3稳压输出电路 (7)5.4数码管显示电路 (7)5.5整体电路原理设计 (8)6 系统软件设计 (9)6.1主程序流程图 (9)6.2DA转换流程图 (9)7 系统调试与仿真 (10)7.1系统仿真 (10)7.2DA输出仿真: (11)7.3PCB制作 (12)7.4硬件调试 (14)7.5软件调试 (14)8 结束语 (15)参考文献 (17)致谢 (18)附录一程序清单 (19)1 引言当今社会人们极大的享受着电子设备带来的便利,但是任何电子设备都有一个共同的电路--电源电路。
2007级电子信息工程模拟、数字电路课程设计报告书设计题目简易数控稳压电源姓名正中、毕轶学号、学院物理与电子信息工程学院专业电子信息工程班级2007级3班指导教师胡仲秋2009年12 月19日目录1设计任务、要求及方案选择11.1设计任务11.2设计要求11.3设计方案的比较与选定21.3.1方案一(如图2所示)21.3.2方案二(如图3.所示)21.3.3方案三(如图4.所示)31.4电路工作原理32单元电路设计参数计算与元器件选择42.1数字控制部分42.1.1单脉冲产生42.1.2计数部分62.1.3显示部分72.2D/A变换部分92.3可调稳压部分102.4辅助电源部分133在调试及组装电路过程中出现的问题及解决方法153.1辅助电源的安装调试153.2单脉冲及计数器调试153.3D/A变换器电路调试153.4可调稳压电源部分调试153.5调试中发现的其他问题163.6调试中原始数据记录164心得与体会165致17附录:181原理图182 PCB图193作品照片204元件清单20参考文献:221设计任务、要求及方案选择1.1设计任务设计出有一定输出电压围和功能的数控电源。
其原理示意图1.如下:图1.原理方框图1.2设计要求1.基本要求①输出电压:0~+9.9V,步进量0.1V;②输出纹波:<10mV;③最大输出电流:500mA;④由“+”、“-”两键分别控制输出电压步进增减;错误!未找到引用源。
数码显示输出电压。
2.发挥部分①自制所用直流电源:±15V,+5V;②拨码开关预置输出电压。
1.3设计方案的比较与选定根据题目要求,提出以下三种设计方案:1.3.1方案一(如图2所示)图2 方案一方框图在此方案中,其电路结构简单,能完成所要求功能。
但存在的不足之处是:D/A转换要求输入二进制数但是显示却要求输入BCD码。
实现这种转换的电路并不是一个简单的电路。
所以虽然这是最容易想到的一种方案。
数控直流稳压电源设计预报告1、设计任务设计并制作有一定输出电压调节范围和功能的数控直流稳压电源。
2、基本要求(1)输出直流电压调节范围0~15V ,纹波小于20mV 。
(2)输出电流0~500mA 。
(3)稳压系数小于0.2。
(4)输出直流电压能步进调节,步进值为1V 。
(5)由“+”、“-”两键控制输出电压步进值的增或减。
(6)用数码管显示输出电压值,当输出电压为15V 时,数码管显示为“15”。
3、工作原理数控直流稳压电源主要由流稳压电源通常是由电源变压器、整流电路、滤波电路和稳压电路四个部分构成,其中稳压电路由调整管、采样电路、基准电压电路和比例放大部分构成,(1) 数控基准电压源:单脉冲产生电路:产生记数的脉冲信号,实现电压步进值的增或减。
“+”键控制步进增,“-”键控制步进减。
可逆计数器:对单脉冲产生电路的信号进行 “+”或“-”计数,或从预置数端直接输入所需的数值。
D/A 转换电路:将计数器输出的数字量转换成模拟量U'O ,控制稳压电源的输出。
译码显示电路:将计数器的输出译码,显示当前稳压电源的输出。
单脉冲产生电路:工作原理:按键闭合:C 充电,1R C τ充= 按键断开:C 放电,2R C τ放= G :施密特触发器,有V T+、V T-LU O 图2-7-1 串联型稳压电路原理图Z O U R R U ⎪⎪⎭⎫⎝⎛+=211图2-7-2 数控基准电压源框图输出图2-7-3 单脉冲产生电路1u c 与0u 的波形为图1.3.2,即按键一下,输出一个负脉冲器件选择:施密特触发器CD40106 手按键时间> 2w =12t R C lnR R TU U V -+1R =10k Ω 2R =50k Ω Vcc =5V C=100nF若阈值电压为1.7V ,则手充电时间为0.55ms ,小于手按键时间。
可逆计数器:选择器件:74LS193 16进制计数器D/A 转换电路DAC0832完全直通方式连接图 器件选择:DAC0832 运放LF353若选取低4位,R E F V 选择-2.56V 则步进电压为0.01V数控基准电源输出电压范围:若选择第四位,则:数控基准电源输出电压范围是0~-0.15V比较放大模块设计指标 运放输出电流:参数计算 2212R C CR U V R R =+256R E F OV U '∆=-76576508(2222)2256R E FOREFV DU d d d d V '=-++++=-150~256OREFU V '=-max 0~500L I mA=max 0~500L I mA =0~15O U V =m ax m ax /500/L I I m A ββ>=放max max 1max max 500C E R L L I I I I I mA≈=+≈=器件选择:NPN 硅三极管13005取样电路R1、R2R1=99K ,R2=1K 放大倍数为100输入电压UI考虑电源电压波动10% 所以 所以 又由于实验室电压源有限,所以U I 选择与运放电源一致为18V总电路图max Im min I 1.10 1.12022CE ax O U U U U V =-=-=⨯=max max max 5002211C C C E P I U m A V W ==⨯=max1.1CM C I I >max1.1C EO C E U U >max1.1C M C P P >Im m ax inO C ES U U U >+m ax 15O U V =2C ESU V=I 0.917U V >I 18.9U V >器件清单。
一、项目背景数控直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。
传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。
普通直流稳压电源品种很多, 在家用电器和其他各类电子设备中,通常都需要电压稳定的直流电源供电。
但在实际生活中,都是由220V 的交流电网供电。
这就需要通过变压、整流、滤波、稳压电路将交流电转换成稳定的直流电。
滤波器用于滤去整流输出电压中的纹波,一般传统电路由滤波扼流圈和电容器组成,若由晶体管滤波器来替代,则可缩小直流电源的体积,减轻其重量,且晶体管滤波直流电源不需直流稳压器就能用作家用电器的电源,这既降低了家用电器的成本,又缩小了其体积,使家用电器小型化。
电源技术尤其是数控电源技术是一门实践性很强的工程技术,服务于各行各业。
电力电子技术是电能的最佳应用技术之一。
当今电源技术融合了电气、电子、系统集成、控制理论、材料等诸多学科领域。
随着计算机和通讯技术发展而来的现代信息技术革命,给电力电子技术提供了广阔的发展前景,同时也给电源提出了更高的要求。
随着数控电源在电子装置中的普遍使用,普通电源在工作时产生的误差,会影响整个系统的精确度。
电源在使用时会造成很多不良后果,世界各国纷纷对电源产品提出了不同要求并制定了一系列的产品精度标准。
只有满足产品标准,才能够进入市场。
随着经济全球化的发展,满足国际标准的产品才能获得进出的通行证。
数控电源是从80年代才真正的发展起来的,期间系统的电力电子理论开始建立。
这些理论为其后来的发展提供了一个良好的基础。
在以后的一段时间里,数控电源技术有了长足的发展。
但其产品存在数控程度达不到要求、分辨率不高、功率密度比较低、可靠性较差的缺点。
因此数控电源主要的发展方向,是针对上述缺点不断加以改善。
单片机技术及电压转换模块的出现为精确数控电源的发展提供了有利的条件。
新的变换技术和控制理论的不断发展,各种类型专用集成电路、数字信号处理器件的研制应用,到90年代,己出现了数控精度达到0.05V的数控电源,功率密度达到每立方英寸50W的数控电源。
数控直流稳压电源的设计与制作1、设计目的本设计以STC89C52单片机为核心,设计并制作直流电源。
其中,控制回路我们采用了电压、电流双重闭环反馈控制电路,达到电压、电流稳定输出同时,进行过流保护,使该系统更加的完善。
本系统输入交流电压范围:200-240V;输出电压可调范围:0-- +12V、输出电流可调范围:0—1A;过电流保护动作电流:1.1A。
2、功能要求(1)、通过“+”、“-”键步进调整输出电压的上升、电压的下降。
(2)、输出电压和电流值通过4为LED数码管显示,显示精度分别为0.1V和0.01A。
(3)、通过“F1”键视线电压/电流显示切换,开机默认显示电压,按“F1”键转换为显示电流,再按显示电压。
(4)、过流保护与报警功能。
一、系统组成及工作原理本系统由硬件和软件两大部分组成。
硬件部分主要完成数字显示、输出信号的采集、数控电源的调节,A/D和D/A转换等电路组成,数控电源的系统图1-1所示。
软件主要完成信号的扫描和处理、芯片的驱动和输出控制、调节等功能。
我们通过调节“+、- ”两个按键从而达到控制输出电压的升降。
该系统采用了电压电流反馈控制双闭环控制电路,一方面可实现反馈稳定电压、电流的同时,进行过流保护;另一方面将输出电压、电流通过四位七段的数码管显示。
1、输出部分方案选择输出采集可以有以下方案供参考:方案一、采用运算放大器、可调三端(LM317)电路组成;方案二、采用运算放大器、三极管功率放大电路组成;方案三、采用调整管TIP122电路,滤波电路组成。
2、数控部分方案选择数控部分可以采用以下方案供参考:采用单片机、外围逻辑器件和D/A转换器实现,图1-1.数控系统图外围逻辑器件主要是用于对A/D,D/A等器件的读写控制和片选控制3、数字显示部分方案选择显示部分用四个七段的LED数码管,可以有以下方案供参考:方案一、(动态扫描显示)采用数码管显示。
七段译码由软件查表完成,段驱动可用2片74LS06等芯片,位驱动用1片MC1413等驱动芯片,显示位数较多端口资源少,硬件电路简单;蛋显示亮度较低,占用CPU时间多。
《电子线路仿真》课程设计报告DESIGN REPORT ON SIMULATIONOFELECTRONIC CIRCUIT题目数控直流稳压电源学科部、系:信息学科部专业班级:071电子信息工程学号:学生姓名:指导教师:起讫日期:2009-12-24第一部分设计任务1.1 设计题目及要求设计一个有一定输出电压调节范围和功能的数控直流稳压电源。
假定+5V和+15V电源给定。
设计要求:(1)输出直流电压调节范围5~15V,纹波小于10 mV;(2)输出电流为500mA;(3)稳压系数小于0.2;(4)由“+”、“-”两键分别控制输出电压的步进增减,步进值为1V,输出电压值用L ED数码管显示。
第二部分设计方案2.1总体设计方案说明根据设计任务要求,数控直流稳压电源的工作原理框图如图1所示。
主要包括三大部分:数字控制部分,D/A变换器及可调稳压电源。
数字控制部分用+,-按键控制一可逆二进制计数器,二进制计数器的输出输入到D/A变换器,经D/A变换器转化为相应的电压。
此电压经过相应的放大后去控制电源的输出,使稳压器输出的电压为1V的步进增加。
2.2模块结构与方框图UiUo第三部分单元电路设计与参数计算3.1可逆计数器模块3.1.1 模块电路及参数计算3.1.2 工作原理和功能说明因为要求是输出5-15V的电压,只十一个电压值,而计数器74193是一个16进制的可逆计数器。
我们只要用从0计数到10的几个状态,这可以通过反馈的方法实现。
当74193输出0时,最后输出为5V。
不能再减小了。
所以通过一个四输入的或门输入到与非门U10使减“-”失效,计数器不能减计数,只能加。
当加到6时或门反馈的数为1,通过U10后计数器就可以减计数了。
同理,当输出15V时,74193输出为10,电压不能再加了。
通过反馈输出一个0使加计数失效,电压停在15V。
此时电压只能减,只有按“-”的按键减小电压。
3.2 D/A转换模块3.2.1 模块电路及参数计算3.2.2 工作原理和功能说明这一模块是最主要的一个模块,左下方从左到右依次接74193输出端的Q1Q2Q3Q4,输入端依次接入的是0000~1010,这个电路的作用就是把这些数字信号转换成模拟信号。
数控直流稳压电源的设计数控直流稳压电源是一种用于供应直流电子设备的电源装置,其主要功能是将市电转换为稳定的直流电,并通过控制电路对输出电压进行调节和稳定。
在设计数控直流稳压电源时,需要考虑电源的输入特性、输出特性、保护功能和控制电路等方面。
首先,我们需要确定数控直流稳压电源的输入电压范围。
大多数电子设备的工作电压为12V、24V或48V等,因此输入电压范围通常选择110V 至230V的交流电源。
在选择输入电压范围时,需要考虑所处地区的电网电压波动范围,以及用户对电源的要求。
其次,数控直流稳压电源的输出电压范围也需要确认。
根据电子设备的需求,输出电压通常为可调范围内的恒定值,例如0-30V或0-60V等。
同时也要考虑输出电流的范围,以满足电子设备对电流的需求,常见输出电流范围为0-2A或0-5A等。
在设计数控直流稳压电源的输出电路时,可以采用开环控制电路或闭环控制电路。
开环控制电路的简单,但稳定性较差,难以保证输出电压的精度和稳定性。
闭环控制电路通过反馈控制,可以实现对输出电压的精确控制和稳定性。
为了保护电源装置和电子设备的安全,数控直流稳压电源通常需要具备过压保护、过流保护和短路保护等功能。
过压保护可以防止输出电压超过设定范围,过流保护可以防止输出电流超过设定范围,短路保护可以防止输出端短路时对电源装置和电子设备造成损害。
在控制电路方面,可以使用微处理器或单片机进行数控调节。
通过采集输入输出电压信号,经过对比和计算,控制电路可以实现对输出电压的调节并保持在设定范围内。
此外,还可以添加显示屏或数码管等显示装置,以实时显示输入输出电压和电流的数值。
最后,在设计数控直流稳压电源时,还需要考虑散热和尺寸等问题。
电源装置的散热设计要充分考虑电源内部的热量产生和散发,以保证电源的长时间稳定工作。
同时,电源装置的尺寸要适度,以适应不同的应用场合和安装空间。
总的来说,设计数控直流稳压电源需要综合考虑输入特性、输出特性、保护功能和控制电路等方面,以满足电子设备对电源的需求,并提供稳定的直流电源供应。
数控直流稳压电源的设计数控直流稳压电源是一种常用的电源设备,用于提供稳定的电压和电流,以供电子设备工作。
在电子行业和各种制造业中广泛使用。
本篇文档将着重介绍数控直流稳压电源的设计。
一、需求分析在设计数控直流稳压电源时,需要对实际需求进行分析,以选择合适的电源参数。
通常,需要考虑以下因素:1. 输入电压范围2. 输出电压范围3. 输出电流范围4. 稳定性要求在以上因素中,输入电压范围和输出电压范围是最关键的因素。
输入电压应该能够满足设备需要的电源,而输出电压应该与设备所需的直流电压匹配。
二、设计要点在设计数控直流稳压电源时,需要考虑以下要点:1. 电源拓扑结构2. 运算放大器的选择3. 稳定性设计4. 容量和功率需求5. 保护措施1. 电源拓扑结构数控直流稳压电源的设计通常采用基于反馈电路的电源拓扑结构。
其中,最常用的电源拓扑结构是基于线性稳压器的设计。
此外,还有基于开关稳压器的设计。
两种设计各有优劣,需要根据具体需求进行选择。
2. 运算放大器的选择在反馈电路中,运算放大器是一个非常关键的因素。
运算放大器为反馈电路提供放大器,并将反馈信号传递给反馈节点。
当电压或电流发生变化时,运算放大器可以快速检测到并调整输出,以保持恒定的电压和电流。
3. 稳定性设计为保证电源稳定性,需要进行稳定性设计。
在基于线性稳压器的设计中,输出电压稳定性可以通过选择合适的线性稳压器电路进行实现。
在基于开关稳压器的设计中,可以采用PID反馈控制实现稳定性。
4. 容量和功率需求容量和功率需求应该根据设备需要的功率和电流选择。
需要选择合适的电源变压器和其他元件,并计算合适的功率。
5. 保护措施在电源设计中需要加入保护措施,以防止故障和损坏。
常见的保护措施包括过载保护、过压保护和过流保护,等等。
三、实施步骤通过实施步骤可以设计出稳定且可靠的数控直流稳压电源:1. 确定功率、电压和电流需求2. 选择最合适的电源拓扑结构3. 选择合适的运算放大器4. 进行稳定性设计5. 计算容量和功率需求6. 加入保护措施7. 编写电源控制程序8. 调试并测试电源四、结论在本篇文档中,我们介绍了数控直流稳压电源的设计要点和实施步骤。
数控稳压电源设计报告专业班级:电子1101班姓名:肖潇学号:1130010201232014年5月12日摘要直流稳压电源是电子技术领域的常用仪器设备之一,能在电网电压产生波动或发生负载发生变化时提供稳定的直流输出电压。
常规的直流稳压电源由电源变压器、整流、滤波和稳压电路等部分组成,大多采用串联反馈式稳压原理,通过调节输出取样支路中的电位器来改变输出电压值。
由于电位器阻值变化的非线性和调节范围限制,普通直流稳压电源的输出电压精度不高。
随着使用时间的增加,由于粗调的波段开关和用于细调的电位器的接触不良也会对输出电压产生较大影响,且调节较为繁琐。
针对常规直流稳压电源的上述缺点,设计了一款数控可调直流稳压电源,其额定输出电压0-30V可调,额定输出电流0-4A可调,其输出电压精度高且稳定性强,参数设置操作简单,带有掉电数据保护、过热保护、过流保护、过压保护功能,还可以实时检测并显示实际的电压/电流输出值。
关键词:数控;稳压电源;A/D转换;D/A转换;过流保护一、设计任务设计制作具有一定电压范围和功能的数控电源。
二、设计要求基本要求:a 输出电压:范围0~15V ,步进0.1V,纹波不大于10mv b输出电流: 500mAc 输出电压由数码显示d 用”+”.”-”键控制输出电压进行增/减调整发挥部分:a 自动扫描输出电压b 扩展输出三角波等电压种类c 输出电压可预置在0~15V之间的任意值三、系统方案论证与选择根据题目要求,本设计的系统可以划分为如下十个部分:辅助电源部分、单片机控制部分、D/A转换部分、A/D转换部分、电压基准部分、电压电流反馈调节部分、输出显示部分、输入调节设定部分、过热保护部分、过流保护部分。
系统方框图如下:A/D转换电压/电流取样及放大编码器/按键温度采样散热器(风扇散热)误差比较放大输出双层硬件过流保护单片机D/A转换液晶显示过热保护220V输入变压器降压(绕组切换)整流滤波稳压电路辅助电源稳压电路3.1 系统的基本方案在本设计中,为了尽可能提高实验成品各方面的性能指标,对几个比较重要的模块分别进行了几种不同的设计方案论证,并选取最优方案。
数控稳压直流电源设计报告1、数控直流稳压电源设计指标及设计1.1设计技术指标本设计是线性数控直流电源,设计要求如下:1、电压变化范围+5%~-5%条件;2、输出电压可调范围为0~10V;1.2本课题研究方法和目标数控电源的主要研究思路:1、硬件部分(1)单片机采用STC89C52最小系统方案,采用数码管和按键做人机界面,采用DA 芯片作为主要的单片机系统。
(2)电压调整靠调整输入到DA的数字量来改变输出电压大小,再通过电压功率放大器将其放大,得到输出电压。
2、软件部分(1)键盘输入程序用键盘扫描程序,将按键设置的电压交给D/A芯片产生输出电压。
(2)单片机通过A/D芯片读取当前输出电压值,通过显示程序,显示在数码管上。
2硬件电路详细设计2.1单片机系统外围电路设计在本次设计中,使用AT89C52单片机,其外围电路有复位电路、晶振电路、按键电路、数码管显示和D/A芯片接口电路。
以下是电路的详细设计。
2.1.1 复位电路设计单片机在启动的时候都需要复位,使单片机系统处于初始状态,然后开始工作。
89系列的单片机的RET引脚是复位信号的输入端,当系统处于正常工作状态,振荡器稳定,RET引脚上出现2个机器周期以上的高电平时,单片机就进入数位状态,但是如果引脚RET出现持续的高电平,单片机就处于循环复位状态[9]。
复位通常有两种基本形式:上电复位和手动复位。
本次设计采用上电复位。
电路图如图2-1所示。
图2-1复位电路2.1.2 时钟振荡电路设计单片机的CPU实质上是一个复杂的同步时序电路,它的工作都是必须在时钟控制下进行的。
CPU工作发出的控制信号在时间上的相互关系就是CPU的时序问题[9]。
CPU的时序需要外部硬件电路来实现,既振荡器和时钟电路。
51单片机内部都有一个高增益反向放大器,用于构成振荡器,但是构成时钟,外部还需要加一些附加电路。
本次设计采用单片机外部加晶振构成振荡电路,如图4-2所示。
图2-2单片机振荡电路该振荡电路时采用的单片机内部时钟方式,是直接在引脚XTAL1和XTAL2两端接晶振,就构成了稳定的自激振荡器,振荡器产生的脉冲信号直接送入内部时钟电路。
基于单片机的高精度数控稳压电源系统设计
本文介绍了一种基于单片机的高精度数控稳压电源系统设计。
该系统采用了单片机控制和数字化设计,实现了高精度稳压和数字化调节功能。
系统的主要组成部分包括电压稳定器、反馈调节电路、直流稳压电源、单片机控制模块和LCD显示模块。
其中,电压稳定器和反馈调节电路保证了电源输出电压的稳定性和精确性;直流稳压电源提供了高质量的直流电源;单片机控制模块实现了对电源输出电压的数字化调节,有效地提高了系统的稳定性和可靠性;LCD显示模块实时显示了电源输出电压和电源状态信息。
实验结果表明,该系统具有高精度、可靠性和稳定性等优点,其电源输出电压稳定性和精确性达到了非常高的水平,实现了对电源输出的高度控制和监测。
数控稳压电源设计报告专业班级:电子1101班姓名:肖潇学号:1130010201232014年5月12日摘要直流稳压电源是电子技术领域的常用仪器设备之一,能在电网电压产生波动或发生负载发生变化时提供稳定的直流输出电压。
常规的直流稳压电源由电源变压器、整流、滤波和稳压电路等部分组成,大多采用串联反馈式稳压原理,通过调节输出取样支路中的电位器来改变输出电压值。
由于电位器阻值变化的非线性和调节范围限制,普通直流稳压电源的输出电压精度不高。
随着使用时间的增加,由于粗调的波段开关和用于细调的电位器的接触不良也会对输出电压产生较大影响,且调节较为繁琐。
针对常规直流稳压电源的上述缺点,设计了一款数控可调直流稳压电源,其额定输出电压0-30V可调,额定输出电流0-4A可调,其输出电压精度高且稳定性强,参数设置操作简单,带有掉电数据保护、过热保护、过流保护、过压保护功能,还可以实时检测并显示实际的电压/电流输出值。
关键词:数控;稳压电源;A/D转换;D/A转换;过流保护一、设计任务设计制作具有一定电压范围和功能的数控电源。
二、设计要求基本要求:a 输出电压:范围 0~15V ,步进 0.1V,纹波不大于10mvb输出电流: 500mAc 输出电压由数码显示d 用”+”.”-”键控制输出电压进行增/减调整发挥部分:a 自动扫描输出电压b 扩展输出三角波等电压种类c 输出电压可预置在0~15V之间的任意值三、系统方案论证与选择根据题目要求,本设计的系统可以划分为如下十个部分:辅助电源部分、单片机控制部分、D/A转换部分、A/D转换部分、电压基准部分、电压电流反馈调节部分、输出显示部分、输入调节设定部分、过热保护部分、过流保护部分。
系统方框图如下:A/D转换电压/电流取样及放大编码器/按键温度采样散热器(风扇散热)误差比较放大输出双层硬件过流保护单片机D/A转换液晶显示过热保护220V输入变压器降压(绕组切换)整流滤波稳压电路辅助电源稳压电路3.1 系统的基本方案在本设计中,为了尽可能提高实验成品各方面的性能指标,对几个比较重要的模块分别进行了几种不同的设计方案论证,并选取最优方案。
3.1.1 单片机的选取方案一:选用PIC、或AVR等作为控制核心;这些单片机资源比较丰富,可以实现复杂的逻辑功能,功能强大,完全可以实现对本系统的控制。
但对于本题目而言,其优势资源无法得以体现,且成本稍高。
方案二:采用片STC公司的STC12C5A系列单片机,该系列单片机外设资源丰富,IO口比传统单片机多,并且由于其功耗低、体积小、技术成熟和成本低等优点,比较适用于本系统。
本设计中,最终选择方案二,采用STC12C5A60S2单片机。
3.1.2 变压器的选择系统需要多路辅助电源,单片机STC12C5A60S2、数模转换器TLV5618、电压基准源REF5020等均需要5V的电压为之供电;散热器、继电器等均需要12V的电压为之供电;运放还需要双电源±12V供电。
方案一:采用普通变压器来给电路供电,变压器输出直接整流滤波然后分别稳压到所需电压给系统各个模块供电,但是这样会导致低压稳压芯片压差较大,效率非常低,容易烧毁稳压片。
主电源输出时,如果要输出较低的电压也会导致电路效率极低,发热严重,对散热器有较高要求。
此方案优点是普通变压器价格便宜易于购买。
方案二:采用多抽头变压器,对于各路辅助电源采用对应电压的抽头输出进行整流滤波稳压,这样提高了辅助电源模块的工作效率,降低了发热量。
主电源输出也采用多抽头,根据设定输出电压控制继电器切换到不同抽头来将稳压电路的输入输出压差降到比较小,这样提高了电源的效率,降低了发热量,增加了电路可靠性。
但是此方案需要订做专用变压器,且成本较高。
本设计中,最终选择方案二,采用多抽头变压器。
3.1.3 D/A转换器的选取方案一:采用DAC0832作为D/A转换器。
它是采用CMOS工艺制成的单片直流输出型8位数模转换器,有两路输出,它价格低廉,接口简单,但是它需要占用单片机较多的IO口,并且对于本系统其位数也显得不够。
方案二:采用TLC5618芯片作为D/A转换器。
它是具有串行接口的12位数模转换器,其输出为电压型,有两路输出。
只需要通过3根串行总线就可以完成对它的控制,但是其控制程序稍微复杂一些,价格也较高。
本设计中,最终选择方案二,采用TLV5618芯片作为D/A转换器。
3.1.4 A/D转换器的选取方案一:采用单片机自带A/D转换器。
单片机自带的是10位A/D转换器,有8个输入通道,其A/D转换速度可以达到几十千赫兹。
此方案优点是不增加额外成本,控制也更简单,但是由于其不能外接基准电压,其精度相对较差。
方案二:采用AD7705作为A/D转换器。
AD7705是16位双通道差分输入A/D,在输入范围内它可以检测电路任意两点间的电压,不需要复杂的采样电路,其缺点是A/D转换速度较慢,仅几十赫兹。
本设计中,最终选择方案二,采用AD7705芯片作为A/D转换器。
3.1.5 电压基准芯片的选取方案一:采用TL431作为电压基准芯片。
TL431最小可以输出2.5V电压,精度有8位,但是其温飘较大,容易受温度影响。
其价格比较便宜。
方案二:采用REF5020作为电压基准芯片。
REF5020是TI公司生产的12位的电压基准芯片,输出2.048V,温飘很小,在本设计中它很适合作为A/D、D/A 芯片的电压基准。
本设计中,最终选择方案二,采用REF5020芯片作为电压基准。
3.1.6 显示器件的选取方案一:采用LED数码管显示。
使用多个数码管动态显示,由于显示的内容较多,过多的增加数码管的个数显然不可行,并且比较占用单片机资源。
方案二: 采用LCD12864液晶显示。
可以显示英文及数字,利用单片机来驱动液晶显示模块,设计简单,显示信息量较多,且容易控制。
但是其成本较高。
方案三:采用2.4英寸TFT彩色液晶屏显示。
该屏幕分辨率320*240,可以显示图片、动画等,它对单片机速度要求比较高,占用IO口较多,控制程序相对复杂,用STC12C5A60S2只能显示一些文字自字符等静态画面,但是其价格较低,显示效果很好。
本设计中,最终选择方案三,采用2.4英寸TFT彩色液晶屏作为显示器件。
3.1.7 功率控制方案的选取方案一:选用三极管来实现功率控制,它是电流控制型器件。
在该设计中,由于驱动电路工作频率较高,若采用三极管实现功率控制,会需要较大的驱动电流。
方案二:选用场效应管来实现功率控制,它是电压控制型器件。
其功率比三极管更大,驱动电路也比较简单,响应速度快,比较适合用于大功率的场合。
本设计中,最终选择方案二,采用IRFP450场效应管来实现功率控制。
3.2 系统的最终方案经过仔细分析和论证,决定了系统各模块的最终方案如下:主要器件:(1)单片机:STC12C5A60S2(2)变压器:多抽头变压器(3)D/A转换器:TLV5618(4)A/D转换器:AD7705(5)电压基准芯片:REF5020(6)显示器件:2.4英寸TFT彩色液晶(7)功率管:IRFP450其它主要器件:OPA2227运放,OPA2228运放,EC11编码器,五脚继电器,LM35温度传感器,CPU散热器,78/79系列稳压芯片四、系统硬件设计与实现4.1.1系统硬件的基本组成基于单片机STC12C5A60S2设计的高精度数控直流稳压电源,数控部分采用双路12位高精度D/A转换器 TLV5618控制稳压电路的输出电压和输出电流; 采用16位高精度 A / D 转换器AD7705测量输出电压和输出电流; 采用EC11带按键编码器作为电压电流的设定装置;采用2.4英寸TFT彩色液晶屏显示设定的电压电流和实际输出电压电流;电源以电压串联负反馈稳压电路为基础来进行稳压和恒流输出。
4.2.1 电压串联负反馈稳压电路(稳压、恒流/过流保护)4.2.2 电压取样及放大电路电流取样及放大电路原理与该电路一样。
4.2.3 变压器绕组切换电路4.2.4 辅助电源电路4.2.5 电源整流滤波电路4.2.6 编码器驱动电路4.2.7 电压基准源电路4.2.8 A/D转换及D/A转换电路4.2.9 单片机最小系统4.2.10 温度采集电路五、系统软件设计5.1 程序流程图六、系统性能测试6.1 电压设定精度以及检测精度 检测电压 设置电压(V) 实测电压(V) 设置相对误差 检测相对误差 (V) 0.092 0.099 0.092 0.00% 7.61% 0.192 0.196 0.193 0.52% 1.55% 0.292 0.302 0.293 0.34% 3.07% 0.392 0.408 0.394 0.51% 3.55% 0.492 0.494 0.494 0.41% 0.00% 0.592 0.595 0.593 0.17% 0.34% 0.692 0.704 0.692 0.00% 1.73% 0.792 0.804 0.793 0.13% 1.39% 0.792 0.801 0.793 0.13% 1.01% 0.892 0.893 0.892 0.00% 0.11% 0.992 0.996 0.993 0.10% 0.30% 1.092 1.097 1.091 -0.09% 0.55% 2.012 2.016 2.007 -0.25% 0.45% 3.012 3.013 3.010 -0.07% 0.10% 4.012 4.013 4.009 -0.07% 0.10% 5.012 5.009 5.010 -0.04% -0.02% 6.012 6.016 6.013 0.02% 0.05% 7.012 7.017 7.015 0.04% 0.03% 8.012 8.022 8.024 0.15% -0.02% 9.000 8.999 8.998 -0.02% 0.01% 10.00 9.992 9.999 -0.01% -0.07% 12.00 12.010 12.060 0.50% -0.41% 14.00 14.000 14.009 0.06% -0.06% 16.01 16.000 16.010 0.00% -0.06% 18.01 18.010 18.017 0.04% -0.04% 20.01 20.000 20.009 0.00% -0.04% 25.00 25.000 25.005 0.02% -0.02% 30.00 30.000 30.015 0.05% -0.05% 35.01 34.990 35.011 0.00% -0.06% 40.01 40.010 40.020 0.02% -0.02%6.2 电流设定精度以及检测精度设置电流 (A) 0.021 0.051 0.101 0.202 0.302 0.403 0.503 0.603 0.704 0.804 0.9 1 1.1 1.201 1.301 1.402 1.502 1.602 1.703 1.803 1.904 2.004 2.2 2.401 2.602 2.802 3.003 3.204 3.4 3.601 3.801 4.002 4.203 4.404检测电流 (A) 0.026 0.057 0.104 0.206 0.306 0.405 0.505 0.604 0.706 0.805 0.902 1.002 1.104 1.203 1.304 1.404 1.504 1.604 1.705 1.804 1.906 2.007 2.201 2.401 2.605 2.802 3.005 3.206 3.403 3.604 3.805 4.005 4.203 4.402实测电流 (A) 0.023 0.053 0.102 0.203 0.302 0.403 0.502 0.602 0.704 0.803 0.899 1 1.101 1.201 1.302 1.402 1.503 1.604 1.704 1.805 1.905 2.007 2.202 2.402 2.606 2.806 3.007 3.208 3.407 3.606 3.806 4.006 4.205 4.406设置相对误差 检测相对误差 9.52% 3.92% 0.99% 0.50% 0.00% 0.00% -0.20% -0.17% 0.00% -0.12% -0.11% 0.00% 0.09% 0.00% 0.08% 0.00% 0.07% 0.12% 0.06% 0.11% 0.05% 0.15% 0.09% 0.04% 0.15% 0.14% 0.13% 0.12% 0.21% 0.14% 0.13% 0.10% 0.05% 0.05% 13.04% 7.55% 1.96% 1.48% 1.32% 0.50% 0.60% 0.33% 0.28% 0.25% 0.33% 0.20% 0.27% 0.17% 0.15% 0.14% 0.07% 0.00% 0.06% -0.06% 0.05% 0.00% -0.05% -0.04% -0.04% -0.14% -0.07% -0.06% -0.12% -0.06% -0.03% -0.02% -0.05% -0.09%6.3 稳压系数 设置电压(V) 负载电流(A) 负载电压(V) 0.00 5.011 5.012 1.00 5.005 4.23 4.987 0.00 10.000 10.000 1.60 9.991 4.00 9.976 0.00 20.009 20.010 1.90 19.996 4.23 19.983 0.00 30.015 30.000 2.10 29.994 4.23 29.989 6.4 纹波稳压系数 0.48%0.24%0.09%0.04%输出 空载 30V/4A稳压模式 恒流模式 纹波<1mV 纹波<1mV 纹波<8mV 纹波<3mV七、参考文献[1] 邱关源,罗先觉,电路(第五版) ,高等教育出版社,2006.5 [2] 铃木雅臣(日) ,晶体管电路设计(下) ,科学出版社,2004 [3] 陶桓奇,张小华,彭其圣,模拟电子技术,华中科技大学出版社,2007.3 [4] 佘新平,数字电子技术(第二版) ,华中科技大学出版社,2009.8 [5] 郭天祥,51 单片机 C 语言教程,电子工业出版社,2009.1 [6] 高吉祥,唐朝京,全国大学生电子设计竞赛电子仪器仪表设计,电子工业出 版社,2007.8 [7] 黄智伟,全国大学生电子设计竞赛系统设计(第 2 版) ,北京航空航天大学 出版社,2011.2 [8] 黄智伟, 全国大学生电子设计竞赛常用电路模块制作,北京航空航天大学出 版社,2011.1 [9] Stephen prata(美),C primer plus(第五版)中文版,人民邮电出版社, 2005.2 [10] 高飞飞,高文才,C 语言程序开发范例宝典(第 2 版) ,人民邮电出版社, 2012.6 [11] / IC 资料网 [12] / 21IC 中国电子网八、附录8.1 调整输出板原理图成换已换成8.2 控制板原理图8.3 部分程序代码 #include<stc12c5a.h> #include<stdio.h> #include<intrins.h> #include"AD7705.H" #include"TLV5618.H" #include"STCAD.H" #include"LCD_driver.h" #include"EEPROM.H" #include"delay.h" int I=196,U=2; float ADI,ADV,ADV1,ADV2,ADV3,ADI1,ADI2,ADI3,Temp,U_U; uchar buffer[14]={0},nU,nI; uchar Step=1,Step_flag=0,U_RL=14; uchar IU_Step[2]={1,1}; uint time=0,time_key=0,Ref=0,time_AD=0,time0=0,time1=0,time2=0,time3=0; uint i1=0,i2=0,i3=0,U_buffer[15]={0},I_buffer[15]={0}; bit t_flag=0,IU_flag=0,AD_delay=0,AD_flag=0; void Timer0Init(void) { AUXR &= 0x7F; // TMOD &= 0xF0; // TMOD |= 0x01; // TL0 = 0x5D; TH0 = 0xFD; TF0 = 0; TR0 = 1; ET0=1; EA=1; } void Timer0() interrupt { TL0 = 0x5D; TH0 = 0xFD; time++; //// // // //1 // //if(OK==0)t_flag=1; else if(OK==1) { t_flag=0; if(time_key<=20)_nop_();else if(time_key<=400)Step_flag++; else if(time_key>400) { IU_Step[IU_flag]=Step_flag; IU_flag=~IU_flag; Step_flag=IU_Step[IU_flag]; } time_key=0; } if(Step_flag>=3)Step_flag=0;} void Timer1() interrupt 3 { TL1 = 0x36; TH1 = 0xF7; time_AD++; time0++; time1++; time2++; time3++; if(time_AD>=100)AD_delay=1,time_AD=0; if(t_flag)time_key++; if(IU_flag==0) { if(Step_flag==0)Step=1; else if(Step_flag==1)Step=5; else if(Step_flag==2)Step=50; } if(IU_flag) { if(Step_flag==0)Step=1; else if(Step_flag==1)Step=2; else if(Step_flag==2)Step=20; }}void Timer1Init(void) { AUXR &= 0xBF; TMOD &= 0x0F; TMOD |= 0x10; TL1 = 0x36; TH1 = 0xF7; TF1 = 0; TR1 = 1; ET1=1; }//1ms@27.000MHzvoid INT00() interrupt 0 { if(P37==0) { if(IU_flag==0)U+=Step; else if(IU_flag)I+=Step; } if(P37==1) { if(IU_flag==0)U-=Step; else if(IU_flag)I-=Step; } if(I>=880)I=880; if(I<=0)I=0; if(U>=2000)U=2000; if(U<=0)U=0;} void main() {P4SW |= 0x70; LCD_Init(); Timer0Init(); Timer1Init(); DA_Init(); rset_ad();AD_Init();EX0=1;IT0=1;EA=1;P3M1=0x00;P3M0=0x21;FS = 0;RL1 = 0;RL2 = 0;RL3 = 0;RL4 = 0;ON = 0;Step_flag = IU_Step[IU_flag];// Pant(0xff,0xff); //Pant(0xf8,0x00); //// Pant(0X07,0xE0); //// Pant(0x00,0x1f); //Pant(0x00,0x00); //LCD_CS =0; //ChineseChar(20,10,2,colors[2],colors[4],1); // ChineseChar(38+14,10,2,colors[2],colors[4],2); // ChineseChar(38+46,10,2,colors[2],colors[4],3); // ChineseChar(70+46,10,2,colors[2],colors[4],4); // ChineseChar(102+46,10,2,colors[2],colors[4],5); //ChineseChar(134+46,10,2,colors[2],colors[4],6); //U = Read_EEPROM(0x00);I = Read_EEPROM(0x02);Temp = result(3);sprintf(buffer,"Temp:%.1f'C ",Temp);LCD_ShowString(0,50,M,colors[7],colors[4],buffer);U_RL = ((U<<1)/100+2)>>1;if(U==0)U_RL=0;if(U_RL>=0x0f)U_RL=0x0f;P1 = (P1&0x0F)|(U_RL<<4);write_da_U(U);write_da_I(I);sprintf(buffer,"SetI:%.3fA",(float)I*0.005+0.0210+0.018*(float)I/ 880);LCD_ShowString(0,150,M,colors[5],colors[4],buffer);nI=sprintf(buffer," %.3fA",Step*0.005);LCD_ShowString(240-nI*M,296,M,colors[5],colors[4],buffer);while(1){if(IU_flag==0){U_RL = ((U<<1)/100+2)>>1;if(U==0)U_RL=0;if(U_RL>=0x0f)U_RL=0x0f;P1 = (P1&0x0F)|(U_RL<<4);write_da_I(I);write_da_U(U);if(U<400)U_U = (float)U*0.02+0.052;else if(U<550)U_U = (float)U*0.02+0.06;else if(U<719)U_U = (float)U*0.02+0.065;else if(U<1200)U_U = (float)U*0.02+0.071;else if(U<1500)U_U = (float)U*0.02+0.083;else if(U<1585)U_U = (float)U*0.02+0.10;else U_U = (float)U*0.02+0.11;if(U_U<10.000)sprintf(buffer,"SetU:%.3fV ",U_U);else sprintf(buffer,"SetU:%.2fV ",U_U);LCD_ShowString(0,100,M,colors[1],colors[4],buffer);nU=sprintf(buffer," %.2fV",Step*0.02);LCD_ShowString(240-nU*M,296,M,colors[1],colors[4],buffer);}if(IU_flag){write_da_U(U);write_da_I(I);sprintf(buffer,"SetI:%.3fA",(float)I*0.005+0.0210+0.018*(f loat)I/880);LCD_ShowString(0,150,M,colors[5],colors[4],buffer);nI=sprintf(buffer," %.3fA",Step*0.005);LCD_ShowString(240-nI*M,296,M,colors[5],colors[4],buffer); }if((AD_delay==1)&&(AD_flag==0)){U_buffer[i1]=AD_V(1);i1++;if(i1==10)i1 = 0;AD_delay=0;time_AD=0;AD_flag = 1;}if((AD_delay==1)&&(AD_flag==1)){I_buffer[i2]=AD_V(2);i2++;if(i2==10)i2 = 0;AD_delay=0;time_AD=0;AD_flag = 0;}if(time0>=200){time0=0;for(i3=0;i3<10;i3++)ADV += U_buffer[i3];ADV1=ADV;ADV2=ADV1;ADV3=ADV2;ADV = (ADV1+ADV2/2.0+ADV3/4.0)/1.75;ADV /= 10.0;ADV = ADV*20.00*2.048/65536.000+0.009;if(ADV<10)sprintf(buffer,"OutU:%.3fV ",ADV);else sprintf(buffer,"OutU:%.2fV ",ADV);LCD_ShowString(0,200,M,colors[1],colors[4],buffer);ADV = 0;}if(time3>=200){time3=0;for(i3=0;i3<10;i3++)ADI += I_buffer[i3];ADI1=ADI;ADI2=ADI1;ADI3=ADI2;ADI = (ADI1+ADI2/2.0+ADI3/4.0)/1.75;ADI /= 10.0;ADI = ADI*5.025*2.048/65536.000;sprintf(buffer,"OutI:%.3fA ",ADI);LCD_ShowString(0,250,M,colors[5],colors[4],buffer);ADI = 0;}if(time1>=1000){time1=0;Temp = result(3);sprintf(buffer,"Temp:%.1f'C ",Temp);LCD_ShowString(0,50,M,colors[7],colors[4],buffer);if(Temp>=33.0)FS = 1;else if(Temp<=28)FS = 0;Write_EEPROM(0x00,U,I);}}}。