欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    毕业设计论文数控直流稳压电源.doc

    • 资源ID:4027263       资源大小:1.10MB        全文页数:38页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    毕业设计论文数控直流稳压电源.doc

    毕业设计数控直流稳压电源摘要本设计以直流电压源为核心,AT89C51单片机为主控制器,通过按键来设置直流电源的输出电压,设置步进等级可达0.1V,输出电压范围为09.9V,最大电流为1000mA,并可由LED数码显示管显示实际输出电压值。系统有过流保护电路,当输出电流过大时功率管自动截至。本设计由单片机程控输出数字信号,经过D/A转换器(DAC0832)输出模拟量,再经过运算放大器隔离放大,控制输出功率管的基极,随着功率管基极电压的变化而输出不同的电压。实际测试结果表明,本系统实际应用于需要高稳定度小功率恒压源的领域。关键词:数字控制;直流稳压电源;单片机AbstractThis system to dc voltage source as the core, mainly AT89C51SCM, through the keyboard controller to install dc power supply output voltage, setting stepping class can reach.01v output voltage, the range of 0-9.9 V, the maximum current1000mA for, and can show the actual pipe by digital output voltage values. This system consists of microcontroller program output digital signal, through D/A converter (DAC0832) output analog amplifier, through isolating amplifier output power, control of base, with the power to change the passive tube voltage output of different voltage. Test results show that this system application in need of high stability of small power constant-voltage source fields.Keywords: Digital control;Regular power supply of direct current;Single-chip microcomputer目录摘要.1ABSTRACT .目录 .第一章 引言 . 11.1设计背景和意义. 11.2设计任务要求. 2第二章 方案设计与论证 . 82.1方案比较 .92.2设计思想. 4第三章 系统硬件设计53.1系统硬件原理框图 .53.2单片机最小系统 .53.2.1 单片机53.2.2 按键电路83.2.3 时钟电路和复位电路 83.3数模转换电路 .93.3.1 DAC0832芯片 .93.3.2 四运放放大器LM324.113.3.3数模转换电路123.4数字显示电路 . 123.5放大与功率输出模块 . 143.6直流稳压电源电路. 14第四章 系统软件设计.164.1程序流程图. 164.2源程序.17第五章 系统仿真及调试 235.1系统仿真 .235.2仿真电压显示 . 245.3系统调试 . 255.4调试结果 . 26总结.30参考文献 31致谢 32附录.33第一章 引言1.1设计背景和意义直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。普通直流稳压电源品种很多, 但均存在以下二个问题: 1、稳压方式均是采用串联型稳压电路,对过载进行限流或截流型保护,电路构成复杂,稳压精度也不高。2、输出电压是通过粗调(波段开关) 及细调(电位器)来调节。这样, 当输出电压需要精确输出,或需要在一个小范围内改变时(如1. 05 1. 07V ) ,困难就较大。另外, 随着使用时间的增加,波段开关及电位器难免接触不良,对输出会有影响。在家用电器和其他各类电子设备中,通常都需要电压稳定的直流电源供电。但在实际生活中,都是由220V 的交流电网供电。这就需要通过变压、整流、滤波、稳压电路将交流电转换成稳定的直流电。滤波器用于滤去整流输出电压中的纹波,一般传统电路由滤波扼流圈和电容器组成,若由晶体管滤波器来替代,则可缩小直流电源的体积,减轻其重量,且晶体管滤波直流电源不需直流稳压器就能用作家用电器的电源,这既降低了家用电器的成本,又缩小了其体积,使家用电器小型化。传统的直流稳压电源通常采用电位器和波段开关来实现电压的调节,并由电压表指示电压值的大小。因此,电压的调整精度不高,读数欠直观,电位器也易磨损。而基于单片机控制的直流稳压电源能较好地解决以上传统稳压电源的不足。几乎所有的电子设备都需要稳定的直流电源,因此直流稳压电源的应用非常的广泛。随着科学技术的不断发展,特别是计算机技术的突飞猛进,现代工业应用的工控产品均需要有低纹波、宽调整范围的高压电源,而在一些高能物理领域,更是急需电脑或单片机控制的低纹波、宽调整范围的电源。直流稳压电源的电路形式有很多种,有串联型、开关型、集成电路、稳压管直流稳压电源等等。在电子设备中,直流稳压电源的故障率是最高的(长期工作在大电流和大电压下,电子元器件很容易损坏)但在直流稳压电源中,通过整流、滤波电路所获得的直流电源的电压往往是不稳定的。输出电压在电网电压波动或负载电流变化时也会随之有所改变。电子设备电源电压的不稳定,将会引起很多问题,比如:测量仪器的准确度降低,交流放大器的噪声增大,直流放大器的零点漂移等等。设计出质量优良的直流稳压电源,才能满足各种电子线路的要求。因此,直流稳压电源的研究就颇为重要。目前产生直流稳压电源的方法大致分为两种:一种是模拟方法,另一种是数字方法。前者的电路均采用模拟电路控制,而后者则是通过数字电路进行自动控制。直流稳压电源朝着数字化方向发展。因此对于数控恒压源的研究是必要的。从上世纪九十年代末起,随着对系统更高效率和更低功耗的需求,电信与数据通讯设备的技术更新推动电源行业中直流/直流电源转换器向更高灵活性和智能化方向发展。在80年代的第一代分布式供电系统开始转向到20世纪末更为先进的第四代分布式供电结构以及中间母线结构,直流/直流电源行业正面临着新的挑战,即如何在现有系统加入嵌入式电源智能系统和数字控制。早在90年代中,半导体生产商们就开发出了数控电源管理技术,而在当时,这种方案的性价比与当时广泛使用的模拟控制方案相比处与劣势,因而无法被广泛采用。由于板载电源管理的更广泛应用和行业能源节约和运行最优化的关注,电源行业和半导体生产商们便开始共同开发这种名为“数控电源”的新产品。现今随着直流电源技术的飞跃发展,整流系统由以前的分立元件和集成电路控制发展为微机控制,从而使直流电源智能化,具有遥测、遥信、遥控的三遥功能,基本实现了直流电源的无人值守。目前, 国外直流稳压电源已朝着多功能和数字化的方向发展。M atthew等提出了采用多路DöA分别设定多路输出电压,以及以多路A öD进行输出检测的微机数控电源。随着科学技术飞速发展,对电源可靠性、输出精度和稳定性要求越来越高,利用D/ A 转换器的高分辨率和单片机的自动检测技术设计程控电源就显示出其优越性。程控电源既能方便输入和选择预设电压值又具有较高精度和稳定性,而且还可程控实现对电源的可编程监控,如模拟电压跌落、间断或起伏等情况,即可编程电源也可以看作一种功率型的低频信号发生器。程控电源可以任意设定输出电压或电流,所有功能由板上的键盘或通过RS-232C串口连接的上位微机实现,给电路实验带来极大的方便,提高了工作效率。1.2设计任务要求 输出电压:099V步进可调,调整步距01;V 输出电流:1000mA; 精 度:静态误差1%FSR,纹波10mV; 显 示:输出电压值用LED数码管显示; 电压调整:由“+”、“-”两键分别控制输出电压的步进增减; 输出电压预置:输出电压可预置在099V之间的任意一个值; 其 它:自制电路工作所需的直流稳压电源,输出电压为±12V,+5V;第二章 方案设计与论证2.1方案设计方案一:采用单片机的数控电压源的设计采用常用的AT89C51单片机作为控制器,P0口和DAC8032的数据口直接相连,DA的各个端口连接后接P3.4,和接单片机的端,让DA工作在单缓冲方式下。DA的8脚接参考电压,DA的基准电压接-10V电源,所以在DAC的8脚输出电压的分辨率为约等于0.1V,也就是说DA输入数据端每增加1,电压增加0.1V。通过运放LM324将DA的输出电流转化为电压,再通过运放LM324将电压反相并放大输出电压并稳压,最后通过示波器观察其波纹,其硬件框图如图2.1所示:A/D转换键盘电压预置单片机 显示电压输出数码显示D/A转换 图2.1 方案一硬件框图方案二:采用传统的调整管方案,主要特点在于使用一套双计数器完成系统的控制功能,其中二进制计数器的输出经过D/A变换后去控制误差放大的基准电压,以控制输出步进。十进制计数器通过译码后数码管显示输出电压值,为了使系统工作正常,必须保证双十计数器同步工作。其硬件框图如图2.2所示过流保护调整管整流滤波输出二进制计数器十进制计数器电源误差放大时钟控制译码显示步进加电压预置步进减D/A转换图2.2 方案二硬件框图方案三:采用调整管的十进制计数器的数控电压源的设计。此方案不同于方案之二处在于使用一套十进制计数器,一方面完成电压的译码显示,另一方面其作为EPROM的地址输入,而由EPROM的输出经D/A变换后控制误差放大的基准电压来实现输出步进,只使用了一套计数器,回避了方案二中必须保证双计数器同步的问题,但由于控制数据烧录在EPROM中,使系统设计灵活性降低。其硬件框图如图2.3所示调整管过流保护整流滤波 输出误差放大电压预置十进制计数器译码显示步进加D/A转换EPROM步进减图2.3 方案三硬件框图2.2 方案比较2.2.1 数控部分的比较方案二、三中采用中、小规模器件实现系统的数控部分,使用的芯片很多,造成控制电路内部接口信号繁琐,中间相互关联多,抗干扰能力差。在方案一中采用了AT89C51单片机完成整个数控部分的功能,同时,AT89C51作为一个智能化的可编程器件,便于系统功能的扩展。2.2.2 输出部分的比较方案二、三中采用线性调压电源,以改变其基准电压的方式使输出步进增加或减少,这不能不考虑整流滤波后的纹波对输出的影响,而方案一中使用运算放大器放大电压,由于运算放大器具有很大的电源电压抑制化,可以大大减少输出端的纹波电压。2.2.3 显示部分的比较方案二、三中的显示输出是对电压的量化值直接进行译码显示输出,显示值为D/A变化输入量,由于D/A变换与功率驱动电路引入的误差,显示值与电源实际输出值之间可能出现较大偏差,而方案一中采用三位一体的数码管直接对电压值进行显示。总之,方案一的优点是具有精度高,使用方便,硬件电路简单等特点,它使用了单片机,使得进一步扩展功能较为方便;方案二、三的优点是电路结构简单,其缺点是使用比较复杂,精度没有那么高。考虑到各种因素,本设计采用方案一。第三章 硬件设计3.1硬件原理框图时钟电路、复位电路和按键电路组成单片机最小系统,时钟电路提供时钟信号,复位电路可以实现复位功能,按键电路作为用户对波形和频率的选择。单片机AT89S51输出所需波形和频率的二进制数据,经过数模转换器DAC0832将数字信号转换为模拟信号,经过LM324集成运放放大后输出所需的方波、三角波、正弦波。电源电路为电路供电。电压显示按键控制 单 片 机D/A转换放大电路电源 ±12v ±5v功率输出电压输出图3-1 硬件原理框图3.2单片机最小系统3.2.1 单片机AT89S51 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。AT89S51具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S51 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。本设计只需要P1和P2口只对其介绍:P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2 的触发输入(P1.1/T2EX)。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能: P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个 TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR) 时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用 8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。 在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。下图为AT89S51引脚图:图3-2 AT89S51引脚图3.2.2 时钟电路和复位电路时钟可以有内部方式产生或外部方式产生。此电路用内部方式产生,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体的频率为12MHz,电容值为30pF,电容大小可以对频率起微调作用。在RESET输入端出现高电平时实现复位和初始化,所以我们采用开关复位电路。电容采用30pF的,电阻采用10K的。Proteus模拟效果图如下:图3-4 时钟电路和复位电路3.2.3 按键电路按键通过改变单片机引脚高低电平而发挥它改变频率和波形的作用。在具体电路中,高电平需要经过一个10K电阻接5V电源,此时开关为断开状态;低电平状态需要开关闭合从而接地。输出电压的调节是通过“+,-” 两键操作,步进电压精确到 0.1V 控制可逆计数器分别作加,减计数,可逆计数器的二进制数字输出分两路运行:一路用于驱动数字显示电路,精确显示当前输出电压值;另一路进入数模转换电路(D/A 转换电路),数模转换电路将数字量按比例,转换成模拟电压,然后经过射极跟随器控制,调整输出级,输出稳定直流电压。开关“加”是电压“+”增大的,连接单片机的P3.0口即10引脚。开关“减”是电压“-”减小的,连接单片机的P3.1口即11引脚。Proteus模拟效果图如下:图3-3 按键电路3.3数模转换电路3.3.1 DAC0832芯片DAC0832引脚功能电路应用原理图DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。数模转换电路采用的是DAC0832芯片。D0D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错); ILE:数据锁存允许控制信号输入线,高电平有效; CS:片选信号输入线(选通数据锁存器),低电平有效; WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存; XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效; WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。 IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化; IOUT2:电流输出端2,其值与IOUT1值之和为一常数; Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度; Vcc:电源输入端,Vcc的范围为+5V+15V; VREF:基准电压输入线,VREF的范围为-10V+10V; AGND:模拟信号地 DGND:数字信号地DAC0832有如下3种工作方式: 缓冲方式。单缓冲方式是控制输入寄存器和DAC寄存器同时接收资料,或者只用输入寄存器而把DAC寄存器接成直通方式。此方式适用只有一路模拟量输出或几路模拟量异步输出的情形。 双缓冲方式。双缓冲方式是先使输入寄存器接收资料,再控制输入寄存器的输出资料到DAC寄存器,即分两次锁存输入资料。此方式适用于多个D/A转换同步输出的情节。 直通方式。直通方式是资料不经两级锁存器锁存,即 CS,XFER ,WR1 ,WR2均接地,ILE接高电平。此方式适用于连续反馈控制线路和不带微机的控制系统,不过在使用时,必须通过另加I/O接口与CPU连接,以匹配CPU与D/A转换。本次设计采用直通方式。下图为DAC0832引脚图:图3-5 DAC0832引脚图DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。DAC0832引脚功能说明:DI0DI7:数据输入线,TLL电平。 数字信号输入端。ILE:数据锁存允许控制信号输入线,高电平有效。 CS:片选信号输入线,低电平有效。 WR1:为输入寄存器的写选通信号。 写信号1,低电平有效。XFER:数据传送控制信号输入线,低电平有效。 ILE允许锁存信号。WR2:为DAC寄存器写选通输入线。 写信号2,低电平有效。Iout1:电流输出线。当输入全为1时Iout1最大。 Iout2: 电流输出线。其值与Iout1之和为一常数。 Rfb:反馈信号输入线,芯片内部有反馈电阻. Vcc:电源输入线  (+5v+12v) Vref:基准电压输入线  (-10v+10v) AGND:模拟地,摸拟信号和基准电源的参考地. DGND:数字地,两种地线在基准电源处共地比较好. 采用ADC0809实现A/D转换。3.3.2 四运放放大器LM324LM324系列器件为价格便宜的带有真差动输入的四运算放大器。与单电源应用场合的标准运算放大器相比,它们有一些显著优点。该四放大器可以工作在低到3.0伏或者高到32伏的电源下,静态电流为MC1741的静态电流的五分之一。共模输入范围包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。每一组运算放大器可用图1所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的位相反;Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。本设计共用其中三个运算放大器,两个运算放大器用于双极性输出,一个运算放大器用于调幅电路。LM324的引脚排列如下:图3-6 LM324管脚图3.3.3 数模转换电路DAC0832与第一级集成运放组成数模转换电路。当DAC0832和第一级运算放大器组成单极性输出电路,单极性模拟输出电压为 (3-1)(3-1)中,为基准电压。由(3-1)式看出,如果为正,则为负;为负,则为正。单极性的模拟输出量。Proteus模拟效果图如下:图3-7 数模转换电路3.4数字显示电路如图所示,74HC573锁存器是驱动共阳数码管的译码驱动器。运行仿真,"拨动开关"数码管的显示结果会随之变化,电阻在实际应用电路中是一个较为有用的器件。如果没有这只电阻,数码管极易受损坏。按动按键就能观察显示值的变化并记录。Proteus模拟效果图如下:图3-8 数码管显示电路图3.5放大与功率输出模块的设计 此放大电路放大倍数为2倍,输出是很稳定的,不会因为温度升高而导致输出电压Vo对输入电压产生变化的。跟后面的达林顿管相连使得输出电压误差更小。Proteus模拟效果图如下:图3-9 放大与功率输出模块图3.6直流稳压电源电路本设计采用+5V、±12v直流稳压电源为单片机、数模转换器以及集成运放供电。经变压器降压后,通过四只IN4007整流二极管整流后,再经过100uf的C6滤波电容滤波后,由LM7805三端稳压器稳压后输出稳定的5V。C6、C7为100uf、10uf电容起到稳定的作用。三端稳压器的3端口输出的为5V电压。同理,由LM7805输出稳定的±12v电压。Proteus模拟效果图如下:图3-10 直流稳压电源电路图第四章 软件设计4.1程序流程图本文中子程序的调用是通过按键选择来实现,在取得按键相应的高低电平后,启动定时器和相应的中断服务程序,在直接查询程序中预先设置数据值,通过转换出相应的电压,从而形成所需各种波形。主程序流程图如下:开始系统初始化读取电压键盘扫描是否KEY2按下是否KEY3按下调用显示处理子程序调用显示处理子程序YYN电压显示+0.1v电压显示-0.1vN允许定时器中断显示把电压数据送到D/A是否KEY2按下Y复位程序N图4-1 主程序流程图4.2源程序#include <reg51.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned int#define DataPort P2sbit LCM_RS=P15;sbit LCM_RW=P16;sbit LCM_EN=P17;sbit K1=P34;sbit K2=P32;sbit K3=P30;sfr P1ASF=0x9D;sfr ADC_CONTR = 0xbc;sfr ADC_RES = 0xbd;sfr ADC_RESL= 0xbe;void GET_AD_Result();void AD_init( );extern void WriteCommandLCM(uchar CMD,uchar Attribc);extern void InitLcd();extern void DisplayoneChar(unsigned char X,unsigned char Y,unsigned char DData);extern void DisplayListChar(uchar X,uchar Y,uchar code *DData);unsigned char code dispcode=0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39;unsigned char dispbuf8=0,0,16,0,0,16,0,0;uchar AD_value,key,Vd=60;unsigned char i,j,temp8,temp9,temp10,temp11;float tt=0.0;uchar tt1=0,tt2=0,tt3=0,m=0;uchar code str0="by 20111018"/uchar code str1="beyond"void delay5ms() unsigned int i=5552; while(i-); void delay400ms() unsigned char jj=5; unsigned int jjj; while(jj-); jjj=7269;while(jjj-);void delay(unsigned int k) unsigned int i,j; for(i=0;i<k;i+) for(j=0;j<121;j+) ; /-AD convert-void AD_init( )/void AD_init(uchar AD_port_sel ) /ADC初始化ADC_CONTR|=0x80; /开ADC电源 P1ASF=0x01; /设置P1.0高阻输入方式ADC_CONTR|=0x08; /启动AD转换 START=1 void GET_AD_Result()/启动AD转换并返回转换值 uchar temp;temp=0x10; /判转换结束标志 ADC_FLAGtemp&=ADC_CONTR;if ( temp )AD_value=ADC_RES;/读取AD数据ADC_CONTR&=0xe4;/清转换结束标志ADC_FLAGelseADC_RES=0;/清转换数据高8位ADC_RESL=0;/清转换数据低2位ADC_CONTR|=0xe8;/启动AD转换 ADC_START/LCD display/void WaitForEnable(void)DataPort=0xff;LCM_RS=0;LCM_RW=1;_nop_();LCM_EN=1;_nop_();_nop_();while(DataPort&0x80);LCM_EN=0;void WriteCommandLCM(uchar CMD,uchar Attribc)if(Attribc)WaitForEnable();LCM_RS=0;LCM_RW=0;_nop_();DataPort=CMD;_nop_();LCM_EN=1;_nop_();_nop_();LCM_EN=0;void WriteDataLCM(uchar dataW)WaitForEnable();LCM_RS=1;LCM_RW=0;_nop_();DataPort=dataW;_nop_();LCM_EN=1;_nop_();_nop_();LCM_EN=0;void InitLcd()P2=0;WriteCommandLCM(0x38,0);delay5ms();WriteCommandLCM(0x08,0); delay5ms(); WriteCommandLCM(0x08,0); delay5ms();WriteCommandLCM(0x38,1);WriteCommandLCM(0x08,1);WriteCommandLCM(0x01,1); WriteCommandLCM(0x06,1); WriteCommandLCM(0x0C,1);void DisplayoneChar(unsigned char X,unsigned char Y,unsigned char DData)Y&=1;X&=15;if(Y)X|=0x40;X|=0x80;WriteCommandLCM(X,0);WriteDataLCM(DData);void DisplayListChar(uchar X,uchar Y,uchar code *DData)uchar ListLength=0;Y&=0x1;X&=0xf;while(X<=15)DisplayoneChar(X,Y,DDataListLength)

    注意事项

    本文(毕业设计论文数控直流稳压电源.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开