《基于单片机程控精密直流电源的设计电气自动化毕业设计(22页).doc》由会员分享,可在线阅读,更多相关《基于单片机程控精密直流电源的设计电气自动化毕业设计(22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于单片机程控精密直流电源的设计电气自动化毕业设计毕业课题(设计)(2015届)题 目 基于单片机程控精密直流电源的设计 指导教师 陈 振 伟 老师 院 系 自动化与信息工程系 班 级 电气自动化1203班 学 号 125802020023 姓 名 张强 二一五年五月十四日摘 要随着电子信息产业的迅速发展,推动了电源行业朝着更高灵活性和智能化的方向发展。稳压直流电源在各种电子产品和电子实验中都扮演着越来越重要的角色。 本文设计了一款稳定性好、精度高、输出可程控的线性直流电源。该电源功能实现设计包含硬件部分和软件部分两大块。其中硬件部分由电源变压器、整流电路、滤波电路、稳压电路、保护电路、程控
2、电路、显示电路以及支持单片机运行的电路。交流电网的220V流入变压器变压后,经过整流、滤波电路成为近似的直流电压,再通过稳压电路获得稳定的直流输出。整个设计是一个模块化的设计方法,每个模块电路功能的基础上,综合考虑,选择最佳的组合来实现设计的目的。 此方案的控制部分采用8031单片机,输出部分也不再采用传统的调整管方式,而是在D/A转换之后,经过稳定的功率放大而得到。因为使用了单片机,整个系统可编程,使得系统的灵活性大大增加。该直流稳压电源输出范围0V10V的直流电压,输出分辨率为0.01V,采用键盘预置电压值的控制方式,输出电压的实际值与计算编程得出的理论值之误差的绝对值不超过0.05V。本
3、设计具有线路简单、响应迅速、稳定性好等特点,由于采用直接对输出电压进行采样并显示输出实际电压值,一旦系统工作异常,出现预置值与输出值偏差过大,用户可以根据该信息予以处理。本文详细分析了电源的拓朴图及工作原理。关键词: 直流稳压电源 ;8031单片机;程控 ;精密;功率放大 -第 - 17 - 页安徽矿业职业技术学院目 录第一章 绪 论1 1.1 研究背景1 1.2研究目的和意义2 1.3 总体设计方案3第二章 系统硬件部分设计4 2.1 稳定电源模块4 2.2 整流电路 2.3 滤波电路 2.4 单片机最小控制模块 2.5 按键控制模块 2.6 显示器模块 2.7 D/A数模转换模块 2.8
4、稳压控制模块第三章 系统软件部分设计 3.1系统软件设计的原则 3.2 程序设计流程图 3.3 按键设置流程图 3.4 D/A转换流程图 3.5显示模块流程图第四章 结 论参看文献致 谢附 录绪 论1.1 研究背景伴随着改革开放的步伐,我国的电子信息产业从90年代开始有了非常迅猛的发展。随着各种高新技术的引进与飞速更新,电源产业也经历了从无到有,从有到高端的发展路程。从最原始的低端化学电源,到之后高端数控电源,电源行业跟随着科技发展的步伐,朝着越来越灵活,越来越智能的方向发展。由于国家对科学技术的重视与资金支持,我们的电力电子技术的研究已经能紧紧跟随国外先进技术的步伐,可以生产出技术含量高,达
5、到国际先进水平的产品。从国内外目前已掌握的技术来看,完全由硬件实现的电流源多采用固定值的控制,而数控电流源的电流可任意设定,且控制精度较高。然而同发达国家相比,仍然存在很大的差距和不足:在电源产品的质量、可靠性、开发投入、生产规模、工艺水平、先进检测设备、智能化、网络化、持续创新能力等方面的差距为1015年,尤其在实现直流恒流的智能化、网络化方面的研究不是很多。目前国内在这两方面研究比较多的是成都电子科技大学和广州华南理工大学,主要是利用单片机和可编程系统器件来控制开关直流稳压电源或数字化电压达到数控的目的,但和国外的比较起来,效果不是很理想,还存在很大的差距和不足。总的来说,国内直流恒流源技
6、术在实现智能化等方面相对落后,面对激烈的国际竞争,是个严重的挑战。1.2 研究目的和意义电源作为电子设备的核心部分,其性能的好坏直接影响到电子设备的可靠性。所涉及到的电源技术应用十分广泛,服务于很多行业和产品之中。时下的电源技术融合了电气、电子、系统集成、控制理论、材料等诸多领域。随着社会的发展和科技的进步,对电源技术的发展提供了广阔的空间,同时也相应的提出了更高的要求。时下市场上许多数控电流源存在的问题主要表现在:输出精度不是很高,负载能力不是太强,性价比不高,操作程序复杂,工作状态不太稳定等方面。此次研究就是想通过AT89C51单片机作为控制系统来提升输出精度,再加上采用模块组合优化稳压电
7、路的方法来提升整个电源的负载能力,设计出所需要的符合标准的可以程控、输出电压数码显示的线性稳压直流电源,努力优化组合现有的先进技术,不断推动直流稳压电源行业的进步,为将来更先进的技术和目的的实现打下坚实的基础。1.3 总体设计方案单片机技术的运用,不仅可以达到纯数字电路的效果,还可以大大简化电路,利用软件对电路进行保护,使得整体上能够保证高精度、高性能、低功耗等优点。图1.1 总体方案电路框图2 系统的硬件部分设计2.1 稳压电源模块在电子电路中,通常都需要电压稳定的直流电源供电。小功率稳压电源的组成可以用图2-1表示,它是由变压器,整流,滤波,和稳压电路等四个部分组成。图 2.1直流稳压电源
8、组成框图电源变压器是将交流电网220V的电压变为所需要的电压值,然后通过整流电路将电压变成脉动的直流电压。由于此脉动的直流电压还含有较大的纹波,必须通过滤波电路加以滤除,从而得到平滑的支流电压。但这样的电压还随电网电压波动(一般有正负10%左右的波动),负载和温度的变化而变化。因而在整流、滤波电路之后,还需接稳压电路。稳压电路的作用是当电网电压波动、负载和温度变化时,维持输出直流电压的稳定。当负载要求功率较大,效率较高时,常采用开关稳压电源1。方案一:半波整流电路。半波整流电路原理图如图2.2所示它由电源变压器T整流二极管D和负载电阻组成,变压器的初级接交流电源,次级所感应的交流电压为其中为次
9、级电压的峰值, 为有效值。电路的工作过程是:在的正半周(),二极管因加正向偏压而导通,有电流流过负载电阻。由于将二极管看作理想器件,故上的电压与的正半周电压基本相同。在的负半周(),二极管D因加反向电压而截止, 上无电流流过, 上的电压= 0。半波整流电路结构简单,元件少,但是输出电压直流成分较小(只有半个波),脉动程度较大,整流效率低,所以仅适用于输出电流小、允许脉动程度大、要求较低的场合2。二极管半波整流电路实际上利用了二极管的单向导电特性。方案二:全波整流电路。原理图如图2.3所示。图2.3 全波整流原理图它是由次级具有中心抽头的电源变压器Tr、两个整流二极管、和负载电阻组成。变压器次级
10、电压和大小相等,相位相反,即 式中,是变压器次级半边绕组交流电压的有效值。全波整流电路的工作过程是:在的正半周()正偏导通,反偏截止,上有自上而下的电流流过,上的电压与相同。在的负半周(),反偏截止,正偏导通,上也有自上而下的电流流过,上的电压与相同3。全波整流输出电压的直流成分(较半波)增大,脉动程度减小,但变压器需要中心抽头、制造麻烦,整流二极管需承受的反向电压高,故一般适用于要求输出电压不太高的场合。方案三:桥式整流电路。原理图如图2.4所示,是使用非常多的一种整流电路。这种电路,只要增加两只二极管口连接成桥式结构,便具有全波整流电路的优点,同时还能在一定程度上克服了它的不足。 图2.4
11、 桥式整流电路原理图桥式整流电路的工作原理如下:E2为正半周时,对、和方向电压,导通;对、加反向电压,、截止。电路中构成、通电回路,在,上形成上正下负的半波整洗电压,为负半周时,对、加正向电压,、导通;对、加反向电压,、截止。电路中构成、通电回路,同样在上形成上正下负的另外半波的整流电压。 如此重复下去,结果在上便得到全波整流电压。其波形图和全波整流波形图是一样的4。 桥式整流电路的整流效率和直流输出与全波整流电路一样,而且变压器的利用率最高。所以本设计就采用的是桥式整流电路。 2.2 滤波电路滤波电路常用于滤去整流输出电压中的纹波,一般由电抗元件组成,如在负载电阻两端并联电容器C,或与负载串
12、联电感器L,以及由电容,电感组成而成的各种复式滤波电路。对于滤波电路有两种方案。方案一:桥式整流电路。桥式整流电感滤波电路如图2.5所示。图2.5 桥式整流电感滤波电路根据电感的特点,当输出电流发生变化时,电感L中将感应出一个反电势,使整流管的导电角增大,其方向将阻止电流发生变化。在桥式整流电路中,当正半周时,、导电,电感中的电流将滞后不到90。当超过90后开始下降,电感上的反电势有助于、继续导电。当处于负半周时,、导电,变压器副边电压全部加到、两端,致使、反偏而截止,此时,电感中的电流将经由、提供。由于桥式电路的对称性和电感中电流的连续性,四个二极管、;、的导电角都是180,这一点与电容滤波
13、电路不同。已知桥式整流电路二极管的导通角是180,整流输出电压是半个正弦波,其平均值约为。电感滤波电路,二极管的导通角也是180,当忽略电感器L的电阻时,负载上输出的电压平均值也是。如果考虑滤波电感的直流电阻R,则电感滤波电路输出的电压平均值为 (1)要注意电感滤波电路的电流必须要足够大,即不能太大,应满足L,此时可用下式计算由于电感的直流电阻小,交流阻抗很大,因此直流分量经过电感后的损失很小,但是对于交流分量,在L和上分压后,很大一部分交流分量降落在电感上,因而降低了输出电压中的脉动成分。电感L愈大,RL愈小,则滤波效果愈好,所以电感滤波适用于负载电流比较大且变化比较大的场合。采用电感滤波以
14、后,延长了整流管的导电角,从而避免了过大的冲击电流5。方案二:电容滤波电路当电路采用电容滤波,输出端空载,如图2.6所示。图2.6 桥式整流电容滤波电路设初始时电容电压为零。接入电源后,当在正半周时,通过、向电容器C充电;当在的负半周时,通过、向电容器C充电,充电时间常数为。式中包括变压器副边绕组的直流电阻和二极管的正向导通电阻。由于 一般很小,电容器很快就充到交流电压的最大值。此后,开始下降,由于电路输出端没接负载,电容器没有放电回路,所以电容电压值不变,此时,二极管两端承受反向电压,处于截止状态,电路的输出电压,电路输出维持一个恒定值6。实际上电路总要带一定的负载,有负载的情况如下。接通交
15、流电源后,二极管导通,整流电源同时向电容充电和向负载提供电流,输出电压的波形是正弦形。在时刻,即达到90峰值时,开始以正弦规律下降,此时二极管是否关断,取决于二极管承受的是正向电压还是反向电压。先设达到90后,二极管关断,那么只有滤波电容以指数规律向负载放电,从而维持一定的负载电流。但是90后指数规律下降的速率快,而正弦波下降的速率小,所以超过90以后有一段时间二极管仍然承受正向电压,二极管导通。随着的下降,正弦波的下降速率越来越快,的下降速率越来越慢。所以在超过90后的某一点,例如图5(b)中的时刻,二极管开始承受反向电压,二极管关断。此后只有电容器C向负载以指数规律放电的形式提供电流,直至
16、下一个半周的正弦波来到,再次超过,如图5(b)中的时刻,二极管重又导电。以上过程电容器的放电时间常数为电容滤波一般负载电流较小,可以满足较大的条件,所以输出电压波形的放电段比较平缓,纹波较小,输出脉动系数S小,输出平均电压大,具有较好的滤波特性7。2.3单片机最小控制模块单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单
17、片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。英特尔的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳8。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16
18、位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片
19、机甚至可以直接使用专用的Windows和Linux操作系统。单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的综合,甚至比人类的数量还要多9。2.3单片机最小控制模块单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分
20、功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。英特尔的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理
21、器的发展便分道扬镳8。早期的单片机都是8位或4位的。其中最成功的是INTEL的8031,因为简单可靠而性能不错获得了很大的好评。此后在8031上发展出了MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。而传统的8位单片机的性能也得到了飞速提高,处理能力比起80年代提高了数百倍。目前,高端的32位单片
22、机主频已经超过300MHz,性能直追90年代中期的专用处理器,而普通的型号出厂价格跌落至1美元,最高端的型号也只有10美元。当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows和Linux操作系统。单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有
23、为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的综合,甚至比人类的数量还要多9。2.4 按键控制模块方案一:采用矩阵键盘,由于按键多可实现电压值的直接键入。AT89C51单片机的并行口P1接44矩阵键盘,以P1.0P1.3作输入线,以P1.4P1.7作输出线;P1口输出按键信息,在数码管上显示每个按键的“0F”序号。实际电路图连接如图2.8所示。图2.8 矩阵键盘电路方案二:采用一般的电平判键按钮,实现方法很简单,但一个端口最多只实现8个按键。由于本数控电源需要用的按键不多,要实现步进为1V的设
24、计要求,只需用一个“+”和一个“-”按键,另外再加两个按键用于实现固定电压输出,按键时可直接输出相应电压。4个按键就可实现本题的设计要求,固采用方案二。该部分主要由四个键组成,分别实现的是“+”、“-”、“开始”、“切换”功能,与单片机的P3.0、P3.1、P3.2、P3.3口连接,控制AT89C51单片机,达到对数字的控制,可以通过按键对电压进行调整,按照实际需要可以通过按键得到所需的电压,调节范围是09.9 V,步进0.1V11。4个独立按键S1S4分别与C51的p1.0p1.3相连接,独立按键S1为电压调整按钮,S2为电压加一按钮,S3为电压减一按钮,S4为D/A转换确认键。S1S3按键
25、的作用是通过程序控制对输入的电压随时可调,且步进值能够为0.1V增加或者减少。S4键的作用是按下启动D/A转化,将单片机的预设值转化为模拟量输出。按键与单片机的连接图见图2.9。图2.9 键盘电路2.5 显示器模块相比于市场上常用的数码管,本次设计采用的LCD1602液晶显示器有着更高清晰度与更多显示空间的优势。其所用到的字符型液晶显示模块式专门用于显示字母、数字、符号的点阵型液晶显示模块。LCD1602是工业字符型液晶,能够同时显示16x02即32个字符。LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表2-1所示:表2-1 XX表编号符号引脚说明编号符号引脚
26、说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表2.1 LCD1602引脚接口说明液晶LCD1602与STC单片机的连接电路图如图2.10。LC1602D的8位数据接口与单片机的P0口相连,由于STC单片机P0口没有内接电阻,为此外接了10K上拉排阻。这是因为单片机P口的输出电流非常微弱,不足以驱动液晶显示数据而连接的。1602的控制端RS、R/W、E端分别与STC的P20、P21、P22连接。VCOM为液晶显
27、示亮度调整端,外接10K的电位器。BLA-和BLA+分别为液晶背光源正极和负极,BLA-接地,BLA+接+5V。液晶的显示由单片机的程序去控制12。图2.10 LCD1602与单片机连接电路图2.6 D/A数模转换模块对于这一模块的选择,本次设计思考了两种方案。方案一:采用MX7541 。MX7541是美国MAXIM公司生产的高速高精度12位数字/模拟转换器芯片,由于MX7541转换器件的功耗特别低,而且其线性失真可低达0.012%,因此,该D/A转换器芯片特别适合于精密模拟数据的获得和控制。此外,由于MX7541器件内部带有激光制作的精密晶片电阻和温度补偿电路以及NMOS开关,因而可充分保证
28、MX7541具有12位的精度。还有一个重要特点是:MX7541的所有输入均与CMOS和TTL电平兼容。MX7541的管脚图如图2.11所示。图2.11 MX7541管脚图由于MX7541是12位数字输入,因此它必须与16位以上的单片机相连。当其与MCS-96单片机进行连接时,其电路非常简单,只需把单片机的数据线直接与MX7541的输入线相连即可。程序也很简单,只要不停地向其送数据即可。方案二:采用DAC0832。DAC0832是常用的8位电流输出型并行低速数模转换芯片,当需要转换为电压输出时,可外接运算放大器,运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。内部集成两级输入寄存器,使得
29、数据输入可采用双缓冲、单缓冲或直通方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。DAC0832的管脚图如图2.12所示:图2.12 DAC0832管脚图管脚的具体名称和用法 D0 D7:数字量输入端; :片选信号,低电平有效; ILE:数据锁存允许信号,高电平有效; :第1写信号,低电平有效; :第2写信号,低电平有效; :数据传送控制信号,低电平有效; :电流输出端1; :电流输出端2; RFB:反馈电阻端; :基准电压,基电压范围为-10V +10V; GND:数字地; AGND:模拟地 ; 单片机与DAC0832的接口可按二级缓冲器方式、单缓冲器方式和直通方式联接
30、。DAC0832为8位D/A转换器。单电源供电,范围为+5V +15V,基准电压范围为 。电流的建立时间为1us。CMOS工艺功耗20mw。 输入设有两级缓冲锁存器13。 图2.13为D/A与单片机的连接图。图2.13 DA0832与单片机的连接图2.7 稳压控制模块由于DA0832芯片为电流输出型,为了得到输出电压,必须经过运放转化为电压。设计采用运放LM324放大器放大。LM358芯片的主要特性有:可单双电源工作,单电源工作范围为3V32V,双极性电源工作范围为16V,设计采用双极性电源,且电源电压为12V;每个集成LM324芯片内装4个运放器。采用反向输入,放大和稳压电路。如图2.14。
31、图2.14 放大电路第一级只是转化DA0832输出的电流为电压,没有进行放大。LM358第一级的输出端14经过1K的电阻接第二级放大的输入端2(IN-),也是反向输入,两次反向后最终输出的电压为正向。图2.15 电流放大及稳压电路图2.15为电流放大电路。三端稳压LM317的工作电压范围为1.2637V,达不到输出为0V的设计要求,为此在第二级放大采用求和反向放大,-12V的电压经过10K的电位器分压后输出反向电压为-1.25V,在液晶显示为0的情况下使其LM317调整稳压后的电压达到0V。LM317主要特性有基准电压标准值为1.25V,ADJ调整端电流标准值为50uA,最大为100uA14。
32、第三章 系统软件部分设计控制系统设计的另一重要组成就是软件设计,跟系统的要求和功能紧密相连。在保持硬件结构不变的情况下,修改相应的软件就可以实现一些不同的功能,完成不同的任务。一般来说,软件的功能分为两大类。一类是执行软件,它能完成各种实质性的功能,如测量、计算、显示、打印、输出控制等;另一类是监控软件,它是专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度的角色。在本系统中,软件结构采用模块化设计,各功能程序分别编写和调试。各模块调试成功后,再将所有模块连接起来,构成系统的软件。这样的设计有利于程序代码的优化,而且便于编程、调试和维护。3.1系统软件设计的原则应用系统中的应用软件
33、是根据系统功能要求设计的,应可靠实现系统的各种功能在本系统中,软件设计要求做到以下几点:(1)根据软件功能要求,将系统软件分成若干个相对独立的部分,设计出合理的软件总体结构,使软件结构清晰、简捷、流程合理。(2)各功能程序实行模块化、子程序化。既便于调试、连接,又便于移植、修改。(3)在编写应用软件之前,应绘制出程序流程图。多花一些时间来设计程序流程图,就可以节约几倍于源程序的编辑和调试时间。(4)程序存储区,数据存储区要合理规划,既能节约内存容量,又使操作方便。(5)运行状态实现标志化管理。这个功能程序运行状态,运行结果以及运行要求都要设置状态标志以便查询,程序的转移、运行、控制都可通过状态
34、标志条件来控制。(6)经过调试修改后程序应进行规范化,出去修改的痕迹,以便于交流和借鉴,也为以后的软件模块化、标准化打下基础。(7)实现全面软件抗干扰设计。软件抗干扰是单片机应用系统提高可靠性的有利措施15。3.2 程序设计流程图程序设计流程图如图3.1所示。 程序开始以后,首先液晶初始化,显示液晶初试的预设电压值。然后进行按键检测,如果没有按键按下,显示液晶当前的初试电压;如果有按键按下,进入电压检测中断程序,确认当前液晶的调整值。接着检测D/A是否启动,启动以后进行数模转换,将转换后的模拟量送给系统最终输出端。图3.1 程序流程图3.3 按键设置流程图虽然把按键子程序直接放在了主程序中,但
35、是作为控制模块,按键程序仍然是比较重要的模块。按键设置过程中,流程如下图3.2所示:图3.2 按键设置流程图3.4 DA转换流程图D/A转换设置过程中,程序写入D/A中,D/A转换对数据进行转换,其流程图见图3.3。图3.3 D/A转换流程图3.5 显示模块流程图液晶显示设计过程中,对液晶进行初始化清0等操作,其流程图见图3.4。图3.4 液晶显示流程图第四章 结论此次设计,运用到了单片机技术、DA0832芯片、LM324运算放大,很好的实现了课题要求,达到了预期的设计目的,使得直流电源的输出电压可程控调节,输出功率在1W以上,输出电压的值能够液晶显示,且输出的电压值很稳定,程控调节的精度也很
36、高,操作也很方便,获得了范围010V、步进0.1V的电压输出,有着不错的实用价值。通过对此次设计的学习与探索,接触了大量的直流稳压电源的相关知识,知道了一块芯片、一个硬件的变动都会对电源的性能产生很大的影响,所以如何选择合适的硬件、芯片和电路就显得尤为重要。本设计的电路与器件的选择就是依据课题要求参考了大量相关资料而做出的。最终的设计成果达到预期目的也很好的证明了之前选择的正确。在设计过程中,也意识到对整体流程的梳理的重要,这样的体会在模块分析与程序流程图的制作中深有所感。而且模块化分析能很快清楚自己在哪个设计环节出现问题,这样也就有利于自己迅速想办法,通过自己查阅资料或者跟老师同学请教来解决
37、问题。本次设计中也还存在着一些不足,如不能达到很高精度步进、更大范围的输出电压等问题,这是由于硬件条件的限制所致,随着现代工业与集成技术的发展,这些硬件上的问题也会逐渐得到解决。而且在此次设计的过程中,对于直流稳压电源的发展有了比较深入的了解,它的未来发展潜力是巨大的。未来的直流稳压电源必将朝着模块化、数字化、高性能的方向发展。参 考 文 献1侯建军. 数字电子技术基础M. 北京:高等教育出版社,2007:349361.2康华光,陈大钦. 电子技术基础模拟部分M. 北京:高等教育出版社,2006:4865133张毅刚,彭喜元.单片机原理与应用设计M.北京:电子工业出版社,2008:267284
38、.4王增福.新编线性直流稳压电源M.北京:电子工业出版社,2004.5董辉,庞晓风,张威. 数控直流电流源D. 北京:人民邮电出版社,2005.6陈健,王宝杰,耿胜男,王应吉. 数控直流电源J. 科技论文在线,2008年9月,1(10).7陈明杰,王向乔,蔡忠见.一种高精度数控直流电流源的设计J.微计算机信息,2008(04)8胡桂阳,卢月琼,李昌禧.用单片机制作的直流稳压可调电源J.电子世界,2005(12):2425.9何希才,张名莉.新型稳压电源及应用实例,电子工业出版社,2004.5,15410邱关源.电路M.北京:高等教育出版社,2006.511李祥臣.模拟电子技术基础教程M.北京:
39、高等教育出版社,2005.312童诗白,华成英.模拟电子技术基础M.北京:高等教育出版社,2006.113周润景,张丽娜.基于Proteus的电路及单片机毕业设计设计与仿真M.北京:航空航天大学出版社,2006.14李海鲲,Proteus在单片机课程设计中的应用J.电脑知识与技术,2006年35期15楼然苗,51单片机设计实例M.北京:北京航空航天技术出版社,2003致 谢从论文选题到搜集资料,从提纲的完成到正文的反复修改,我经历了喜悦、聒噪、痛苦和彷徨,在写作论文的过程中,心情是如此复杂。如今,伴随着这篇毕业论文的最终成稿,复杂的心情烟消云散,自己甚至还有一点成就感。我要感谢我的导师陈振伟老
40、师。他为人随和热情,治学严谨细心。从选题、定题、撰写提纲,到论文的反复修改、润色直至定稿,老师始终认真负责地给予我深刻而细致地指导。正是有了老师的无私帮助与热忱鼓励,我的毕业论文才得以顺利完成。我还要感谢我在大学四年中给我们授课的所有老师们,是他们让我学到了很多很多知识,让我看到了世界的精彩,让我学会了做人做事。最后感谢三年里陪伴我的同学、朋友们,有了他们我的人生才丰富,有了他们我在奋斗的路上才不孤独,谢谢他们。附录A:系统仿真图附 录B3.6 源程序代码#includereg52.h#define uchar unsigned char#define uint unsigned intsbi
41、t key1=P10; /* 端口定义*/sbit key2=P11;sbit key3=P12;sbit key4=P13;sbit rs=P14;sbit en=P15;sbit w1=P16;sbit w2=P17;sbit DAC_CS=P32;sbit DAC_WR=P36;uchar code table1=“ Zhang Qing Design”; /* 显示英文张青设计 */uchar code table2=“ Voltage0.0V”; /* 显示英文伏特 */ uchar ge,shifen,keynum,volt;void delay(uint z) /* 延时函数 *
42、/ uint x,y; for(x=z;x0;x-) for(y=110;y0;y-);void write_com(uchar com) /* 写指令到1602 */ rs=0; en=0; P0=com; delay(5); w1=1; en=1; delay(5); en=0;void write_date(uchar date) /* 写数据到1602 */ rs=1; en=0; P0=date; delay(5); w1=1; en=1; delay(5); en=0;void Init() /* 初始化 */ uchar num; en=0; write_com(0x38);wr
43、ite_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80); for(num=0;num16;num+)write_date(table1num);delay(50);write_com(0x80+0x40);for(num=0;num14;num+)write_date(table2num);delay(50);void write_voltage(uchar add,uchar dat) /* 写电压到1602*/ write_com(0x80+0x40+add); write_date(0x30+dat); void da0832out(uchar dadata) /* 写电压的数据到DAC0832*/ w1=0; w2=1; DAC_CS=0;