数字控制直流电压源设计.doc_第1页
数字控制直流电压源设计.doc_第2页
数字控制直流电压源设计.doc_第3页
数字控制直流电压源设计.doc_第4页
全文预览已结束

下载本文档

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

文档简介

河南理工大学毕业设计(论文)说明书摘 要随着时代的发展,数字电子技术已经普及到我们生活,工作,科研,各个领域,直流稳压电源作为电子技术常用的设备之一,广泛的应用于教学、科研等领域。直流稳压电源主要分为线性稳压电源和开关稳压电源两种。开关稳压电源相比普通的线形稳压电源,具有非常多的优点。它的开关管以开关方式工作,功耗小,效率高,稳压范围宽,安全可靠,对电网电压及频率的变化适应性强,能够提供不同数值的输出电压。开关稳压电源是当今电源应用的主角,已经广泛地被以信息化产业为主体的各种终端显示器、电子计算机、通讯装置、办公自动化仪器、家用电器、电视机等设备采用。本文将介绍一种数控直流稳压电源,本电源由模拟电源、数码显示电路、模数转换控制电路、数模转换放大电路四部分组成.准确说就是模拟电源提供各个芯片电源、数码管、放大器所需电压;数码显示电路由8个数码管和串行输入/输出共阴极显示驱动器MAX7221组成,用于显示电源输出电压的大小;模数转换及控制电路主要由AT89C52,模数转换器ADC0804等芯片组成;D/A转换放大电路主要由数/模转换器DAC0832及OPAMP差分放大器等芯片组成。通过软件程序控制输出电压值的大小。与传统的稳压电源相比具有操作方便,电源稳定性高以及其输出电压大小采用数码显示的特点。关键词:AT89C52;DAC0832;ADC0804;MAX7221;LM317AbstractWith the development of digital electronic technology has spread to our lives,work,research in various fields, DC regulated power supply of electronic technology as one ofcommonly used equipment, widely used in teaching, research and other fields. DC regulated power supply regulated power supply is divided into linear and two types of switching power supply. Switching power supply compared to ordinary linear regulated power supply with an awful lot of advantages. Its switch to switch mode power consumption of small, high efficiency, wide range of regulators, safety and reliability of power grid voltage and frequency changes in adaptable, able to provide different output voltage values. Switching power supply is the main character in todays power applications, has been widely use information technology to a variety of industries as the main display terminal, computer, communication devices, office automation equipment, household appliances, television sets and other equipment used.This article will introduce a digital DC power supply, the power supply from the analog power, digital display circuit, analog-to-digital conversion control circuit, digital-to-analog converter amplifier composed of four parts. Accurate simulation of power that is provided by the various chip power, digital control , amplifier voltage required; digital display circuit 8 by the digital control and serial input/output common cathode display driver MAX7221 component, used to display the size of power supply output voltage; analog-digital conversion and control circuits by AT89C52, analog-to-digital conversion ADC0804 chip devices and other components; D/A conversion by amplifier D/A converter DAC0832 and OPAMP chip components, such as differential amplifier. Through software control the size of the output voltage value. And compared to the traditional regulated power supply with easy to operate, high power stability, as well as the size of the output voltage characteristics of the use of digital display.Key words: AT89C52;DAC0832;ADC0804;MAX7221;LM31751目录1 绪论11.1 研究背景及意义11.2 国内外研究现状11.3 课题研究方法22基础知识32.1 芯片的原理及应用32.1.1 AT89C5232.1.2 ADC080482.1.3 MAX7221112.1.4 DAC0832122.1.5 三端可调式集成稳压器Lm317142.1.6 数码管LED162.2 多位LED显示的串口实现原理163 控制系统的硬件实现173.1 电路框图173.2 内部电路及原理分析173.2.1 数码显示电路173.2.2 电源电路183.2.3 D/A转换放大电路193.2.4 A/D转换及控制电路204 软件设计224.1 软件程序设计224.2 模块程序设计234.2.1 数码显示234.2.2 A/D转换254.2.3 D/A转换274.2.4 键盘处理305 控制系统仿真356 结论37参考文献38附录39附录A:39附录B:40致谢491 绪论1.1 研究背景及意义直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。传统的多功能直流稳压电源功能简单、难控制、可靠性低、干扰大、精度低且体积大、复杂度高。普通直流稳压电源品种很多, 但均存在以下二个问题: 1.输出电压是通过粗调(波段开关) 及细调(电位器)来调节。这样, 当输出电压需要精确输出, 或需要在一个小范围内改变时(如1.051.07V) ,困难就较大。另外, 随着使用时间的增加, 波段开关及电位器难免接触不良, 对输出会有影响。2.稳压方式均是采用串联型稳压电路, 对过载进行限流或截流型保护,电路构成复杂,稳压精度也不高。 在家用电器和其他各类电子设备中,通常都需要电压稳定的直流电源供电。但在实际生活中,都是由220V 的交流电网供电。这就需要通过变压、整流、滤波、稳压电路将交流电转换成稳定的直流电。滤波器用于滤去整流输出电压中的纹波,一般传统电路由滤波扼流圈和电容器组成,若由晶体管滤波器来替代,则可缩小直流电源的体积,减轻其重量,且晶体管滤波直流电源不需直流稳压器就能用作家用电器的电源,这既降低了家用电器的成本,又缩小了其体积,使家用电器小型化。传统的直流稳压电源通常采用电位器和波段开关来实现电压的调节,并由电压表指示电压值的大小。因此,电压的调整精度不高,读数欠直观,电位器也易磨损。而基于单片机控制的直流稳压电源能较好地解决以上传统稳压电源的不足。随着科学技术的不断发展,特别是计算机技术的突飞猛进,现代工业应用的工控产品均需要有低纹波、宽调整范围的高压电源,特别是在一些高能物理领域,急需电脑或单片机控制的低纹波、宽调整范围的电源。1.2 国内外研究现状从上世纪九十年代末起,随着对系统更高效率和更低功耗的需求,电信与数据通讯设备的技术更新推动电源行业中直流/直流电源转换器向更高灵活性和智能化方向发展。在80年代的第一代分布式供电系统开始转向到20世纪末更为先进的第四代分布式供电结构以及中间母线结构,直流/直流电源行业正面临着新的挑战,即如何在现有系统加入嵌入式电源智能系统和数字控制。早在90年代中,半导体生产商们就开发出了数控电源管理技术,而在当时,这种方案的性价比与当时广泛使用的模拟控制方案相比处与劣势,因而无法被广泛采用。由于板载电源管理的更广泛应用和行业能源节约和运行最优化的关注,电源行业和半导体生产商们便开始共同开发这种名为“数控电源”的新产品。现今随着直流电源技术的飞跃发展, 整流系统由以前的分立元件和集成电路控制发展为微机控制, 从而使直流电源智能化, 具有遥测、遥信、遥控的三遥功能, 基本实现了直流电源的无人值守。1.3 课题研究方法直流稳压电源是最常用的仪器设备, 在科研及实验中都是必不可少的。针对以上问题, 我们设计了一套以单片机为核心的智能化直流电源。该电源采用薄膜轻触键盘,可对输出电压及报警阈值以快慢两种方式进行设置, 输出由单片机通过D/A ,控制驱动模块输出一个稳定电压。同时稳压方法采用单片机闭环控制,单片机通过A/D 采样输出电压, 与设定值进行比较, 若有偏差则调整输出,越限则输出报警信号并截流。工作过程中, 稳压电源的工作状态(输出电压、电流等各种工作状态) 均由单片机输出驱动LED 显示,多种显示模式间,由键盘控制进行动态逻辑切换。本课题研究一种以单片机为核心的智能化高精度简易直流电源的设计, 该电源采用数字调节、闭环实时监控、输出精度高, 且兼备双重过载保护及报警功能, 特别适用于各种有较高精度要求的场合。2基础知识2.1 芯片的原理及应用2.1.1 AT89C52 AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。AT89C52外形及引脚排列如图2-1所示:主要功能特性: 兼容MCS51指令系统 8k可反复擦写(1000次)Flash ROM 32个双向I/O口 256x8bit内部RAM 3个16位可编程定时/计数器中断 时钟频率0-24MHz 2个串行中断 可编程UART串行通道 2个外部中断源 共6个中断源 2个读写中断口线 3级加密位 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能 图2-1AT89C52外形及引脚排列AT89C52为40 脚双列直插封装的8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和VSS(20 脚)为供电端口,分别接+5V电源的正负端。P0P3 为可编程通用I/O 脚,其功能用途由软件定义,在本设计中,P0 端口(3239 脚)被定义为N1 功能控制端口,分别与N1的相应功能管脚相连接,13 脚定义为IR输入端,10 脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12 脚、27 脚及28 脚定义为握手信号功能端口,连接主板CPU 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。P0 口:P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口:P1 是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。Flash 编程和程序校验期间,P1 接收低8 位地址。与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表2-1:表2-1 P1.0和P1.1的第二功能P2 口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX RI 指令)时,P2 口输出P2 锁存器的内容。Flash 编程或校验时,P2亦接收高位地址和一些控制信号。P3 口:P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I/O 口线外,更重要的用途是它的第二功能:P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG: 当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000HFFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。定时器0和定时器1:AT89C52的定时器0和定时器1 的工作方式与AT89C51 相同。定时器2:定时器2 是一个16 位定时/计数器。它既可当定时器使用,也可作为外部事件计数器使用,其工作方式由特殊功能寄存器T2CON的C/T2 位选择。定时器2 有三种工作方式:捕获方式,自动重装载(向上或向下计数)方式和波特率发生器方式,工作方式由T2CON 的控制位来选择。定时器2 由两个8 位寄存器TH2 和TL2 组成,在定时器工作方式中,每个机器周期TL2 寄存器的值加1,由于一个机器周期由12 个振荡时钟构成,因此,计数速率为振荡频率的1/12。在计数工作方式时,当T2 引脚上外部输入信号产生由1 至0 的下降沿时,寄存器的值加1,在这种工作方式下,每个机器周期的5SP2 期间,对外部输入进行采样。若在第一个机器周期中采到的值为1,而在下一个机器周期中采到的值为0,则在紧跟着的下一个周期的S3P1 期间寄存器加1。由于识别1 至0 的跳变需要2 个机器周期(24 个振荡周期),因此,最高计数速率为振荡频率的1/24。为确保采样的正确性,要求输入的电平在变化前至少保持一个完整周期的时间,以保证输入信号至少被采样一次。时钟振荡器:AT89C52 中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1 和XTAL2 分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器, 外接石英晶体(或陶瓷谐振器)及电容C1、C2 接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2 虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF10pF,而如使用陶瓷谐振器建议选择40pF10F。用户也可以采用外部时钟。这种情况下,外部时钟脉冲接到XTAL1 端,即内部时钟发生器的输入端,XTAL2 则悬空。由于外部时钟信号是通过一个2 分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。2.1.2 ADC0804ADC0804是用CMOS集成工艺制成的逐次比较型摸数转换芯片。分辨率8位,转换时间100s,输入电压范围为05V,增加某些外部电路后,输入模拟电压可为5V。该芯片内有输出数据锁存器,当与计算机连接时,转换电路的输出可以直接连接在CPU数据总线上,无须附加逻辑接口电路。ADC0804芯片外引脚图如图2-2所示:图2-2 ADC0804引脚图引脚功能及应用特性如下:CS 、RD 、WR (引脚1、2、3):是数字控制输入端,满足标准TTL 逻辑电平。其中CS 和WR 用来控制A/D 转换的启动信号。CS 、RD 用来读A/D 转换的结果,当它们同时为低电平时,输出数据锁存器DB0DB7 各端上出现8 位并行二进制数码。CLKI(引脚4)和CLKR(引脚19):ADC08010805 片内有时钟电路,只要在外部“CLKI”和“CLKR”两端外接一对电阻电容即可产生A/D 转换所要求的时钟,其振荡频率为FCLK1/1.1RC。其典型应用参数为:R=10K,C=150PF,FCLK640KHZ,转换速度为100。若采用外部时钟,则外部FCLK可从CLKI 端送入,此时不接R、C。允许的时钟频率范围为100KHZ1460KHZ。INTR (引脚5):INTR 是转换结束信号输出端,输出跳转为低电平表示本次转换已经完成,可作为微处理器的中断或查询信号。如果将CS 和WR 端与INTR 端相连,则ADC0804 就处于自动循环转换状态。CS 0 时,允许进行A/D 转换。WR 由低跳高时A/D 转换开始,8 位逐次比较需88=64个时钟周期,再加上控制逻辑操作,一次转换需要6673个时钟周期。在典型应用FCLK640KHZ 时,转换时间约为103114。当FCLK 超过640KHZ,转换精度下降,超过极限值1460KHZ 时便不能正常工作。VIN()(引脚6)和VIN()(引脚7):被转换的电压信号从VIN()和VIN()输入,允许此信号是差动的或不共地的电压信号。如果输入电压VIN的变化范围从0V到Vmax,则芯片的VIN()端接地,输入电压加到VIN()引脚。由于该芯片允许差动输入,在共模输入电压允许的情况下,输入电压范围可以从非零伏开始,即Vmin 至Vmas。此时芯片的VIN()端应该接入等于Vmin 的恒值电码坟上,而输入电压VIN仍然加到VIN()引脚上。AGND(引脚8)和DGND(引脚10):A/D 转换器一般都有这两个引脚。模拟地AGND 和数字地DGND 分别设置引入端,使数字电路的地电流不影响模拟信号回路,以防止寄生耦合造成的干扰。VREF2(引脚9):参考电压VREF/2 可以由外部电路供给,从“VREF/2”端直接送入,VREF/2 端电压值应是输入电压范围的二分之一。所以输入电压的范围可以通过调整VREF/2 引脚处的电压加以改变,转换器的零点无需调整。ADC0804 转换器的工作时序如图2-3 所示:图2-3 ADC0804 转换器的工作时序图由图2-3可见各控制信号时序关系为:当CS与WR同时为低电平时,A/D转换器被启动且在WR上升沿后模数完成转换,转换结果存入数据锁存器,同时,INTR自动变为低电平,表示本次转换已结束。如CS、RD同时来低电平,则数据锁存器三态门打开,数字信号送出,而在RD高电平到来后三态门处于高阻状态。2.1.3 MAX7221MAX7221是一种集成化的串行输入/输出共阴极显示驱动器,它连接微处理器与8位数字的7段数字LED显示,也可以连接条线图显示器或者64个独立的LED。其上包括一个片上的B型BCD编码器、多路扫描回路,段字驱动器,而且还有一个8*8的静态RAM用来存储每一个数据。只有一个外部寄存器用来设置各个LED的段电流。MAX7221与SPI、QSPI以及 MICROWIRE相兼容,同时它有限制回转电流的段驱动来减少EMI(电磁干扰)。 一个方便的四线串行接口可以联接所有通用的微处理器。每个数据可以寻址在更新时不需要改写所有的显示。MAX7221同样允许用户对每一个数据选择编码或者不编码。MAX7221芯片外引脚图如图2-4所示:图2-4 MAX7221引脚图整个设备包含一个150A的低功耗关闭模式,模拟和数字亮度控制,一个扫描限制寄存器允许用户显示1-8位数据,还有一个让所有LED发光的检测模式。对于MAX7221来说,/CS必须为低电平才能开始输入资料。串列资料通过DIN输入到寄存器,并且在16.5的时钟周期开始从DOUT输出。D0-D15为资料位元,其中D0-D7为资料,D8-D11为寄存器位,置D12-D15没有使用。第一个被接收到的资料位元是D15。位数寄存器是一个片内的8*8双口SRAM,它们可以直接定址查找,因此只要V+保持2V以上,资料就可以随时更新。控制寄存器由解码器、显示密度、扫描限制、关机、显示测试组成。2.1.4 DAC0832DAC0832是美国资料公司研制的8位双缓冲器D/A转换器。芯片内带有资料锁存器,可与数据总线直接相连。电路有极好的温度跟随性,使用了COMS电流开关和控制逻辑而获得低功耗、低输出的泄漏电流误差。芯片采用R-2RT型电阻网络,对参考电流进行分流完成D/A转换。转换结果以一组差动电流IOUT1和IOUT2输出。DAC0832主要性能参数:分辨率8位;转换时间1us;参考电压10V;单电源+5V+15v;功耗20mw。1.DAC0832的结构DAC0832的内部结构如图2-5所示.在DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号 /XFER。因为有两级锁存器,DAC0832可以工作在双缓冲器方式,即在输出模拟信号的同时采集下一个数字量,这样能有效地提高转换速度。此外,两级锁存器还可以在多个D/A转换器同时工作时,利用第二级锁存信号来实现多个转换器同步输出。由图25可知,当ILE为高电平,片选信号 /CS 和写信号 /WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。此后,当 /WR1由低电平变高时,控制信号成为低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化。对第二级锁存来说,传送控制信号 /XFER 和写信号 /WR2同时为低电平时,二级锁存控制信号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当 /WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。图25 DAC0832的内部结构图2.DAC0832的引脚特性DAC0832是20引脚的双列直插式芯片。8位数模转换器DAC0832引脚图如图2-6所示,各引脚的功能定义如下:DI7DI0 :8位的数据输入端,DI7为最高位。IOUT1 :模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当DAC寄存器中数据全为0时,输出电流为0。IOUT2 :模拟电流输出端2, IOUT2与IOUT1的和为一个常数,即IOUT1IOUT2常数。RFb:反馈电阻引出端,DAC0832内部已经有反馈电阻,所以 RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端之间。Vref :参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,Vref范围为(+10-10)V。VREF端与D/A内部T形电阻网络相连。图2-6 DAC0832引脚图Vcc :芯片供电电压,范围为(+5 15)V。AGND :模拟量地,即模拟电路接地端。DGND :数字量地。ILE:数据锁存允许控制信号输入线,高电平有效。 CS:片选信号输入线,低电平有效。 WR1:为输入寄存器的写选通信号。 XFER:数据传送控制信号输入线,低电平有效。 WR2:为DAC寄存器写选通输入线。 2.1.5 三端可调式集成稳压器Lm317LM317是美国国家半导体公司的三端可调正稳压器集成电路。我国和世界各大集成电路生产商均有同类产品可供选用,是使用极为广泛的一类串连集成稳压器。 LM317 的输出电压范围是 1.2V 至 37V,负载电流最大为 1.5A。它的使用非常简单,仅需两个外接电阻来设置输出电压。此外它的线性调整率和负载调整率也比标准的固定稳压器好。LM317 内置有过载保护、安全区保护等多种保护电路。通常 LM317 不需要外接电容,除非输入滤波电容到 LM317 输入端的连线超过 6 英寸(约 15 厘米)。使用输出电容能改变瞬态响应。调整端使用滤波电容能得到比标准三端稳压器高的多的纹波抑制比。LM317的三个端子为输入端Ui,输出端U0,可调端ADJ。图2-7 LM317引脚图LM317的特性:可调整输出电压低到 1.2V。保证 1.5A 输出电流。典型线性调整率 0.01%。典型负载调整率 0.1%。80dB 纹波抑制比。输出短路保护。过流、过热保护。调整管安全工作区保护。标准三端晶体管封装。 电压范围 LM117/LM317 1.25V 至 37V 连续可调 。2.1.6 数码管LED数码管是一种半导体发光器件,其基本单元是发光二极管。数码管按段数分为七段数码管和八段数码管,按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。驱动时将所有数码管的8个显示笔划为“a、b、c、d、e、f、g、dp”的同名端连在一起,另外为每个数码管 的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,通过单片机对位选通COM端电路的控制来觉得数码管显示的字形。其管脚图见2-8所示。 图2-8 数码管脚图2.2 多位LED显示的串口实现原理该实现方式是通过AT89C52串行输入,再串行输出经过MAX7221并行输出到数码显示管.单片机89C52的串行口设定工作在方式0状态.在方式0时,89C52的串行口起到一个一位寄存器的作用.一个字节输出完毕AT89C52自动发送中断标志TI置位.这种显示方式的优点是可以显示位数多,显示亮度大,显示程序简单,主程序不必扫描显示接口,因此有更多的时间用于完成其它任务。3 控制系统的硬件实现3.1 电路框图图31 系统原理框图3.2 内部电路及原理分析本电路由模拟电源、数码显示电路、A/D转换及控制电路、D/A转换放大电路四部分组成。准确说就是模拟电源提供各个芯片电源、数码管、放大器所需电压;显示电路用于显示电源输出电压的大小。3.2.1 数码显示电路显示电路由8个数码管和串行输入/输出共阴极显示驱动器MAX7221组成。前4个数码管组成输入电压值的十位、个位、小数点位,后4个数码管组成输出电压值的十位、个位、小数点位。由于数码管的数量多需要多根I/O线,为节约资源,采用串行输入/输出共阴极显示驱动器MAX7221来驱动LED显示。AT89C52的p2.0,p2.2分别作为信号输出口和时钟控制信号,P2.1作为串行输入/输出共阴极显示驱动器MAX7221的片选输入端。采用单片机的P3.0、P3.3作为电压值的设置和确认控制口,P3.1、P3.2作为控制加减的控制口。12M晶振为单片机提供时钟信号。根据电压输出范围及步进要求,显示电路需要8个数码管组成:一个具有输入电压值和输出电压值的显示器。这几个数码管为带小数点的七段LED数码管。驱动这几位数码管,至少需要56条驱动线,为了节省CPU的I/O口线,显示电路采用CPU的串行口p2.0、p2.1和p2.2通过MAX7221进行输出口线扩展。如图32:图33数码显示电路3.2.2 电源电路220 V市电经220 V18 V变压器降压后得到的双18 V交流电压,经过一个全桥整流滤波后可得到15V两路电压,经LM7812稳压后得到+12V的稳定电压,再由LM7805将LM7812的12V再次稳压加降压,得到5V的电压以作为系统本身的工作电源。如图3-4所示:图3-4 电源电路3.2.3 D/A转换放大电路D/A转换放大电路主要由数/模转换器DAC0832及OPAMP差分放大器等芯片组成。AT89C52的P0口作为数据端口与DAC0832的8位数据线相连。AT89C52内含8K字节的ROM,无需外部存储器,因此选用它可使电路得到简化。本系统中,因为CPU的工作任务是单一的,而且数据传送的目的地址也是单一的,因此,DAC0832采用的工作方式为:让芯片的CS/(低电平有效)、WR1/两个使能端与单片机的T0,T1端口相连,XFER/、WR2/两个使能端与地相接处有效状态,这个工作方式不需要给DAC0832分配地址空间,CPU的P0口的数据变化直接反映到DAC0832的输出端。DAC0832是一种典型的8位转换器,内部为双缓冲寄存器即输入寄存器和DAC寄存器,WR1/、WR2/分别为该两寄存器的写信号输出端,ILE为输入锁存使能端,高电平有效,CS/为片选端,XFER/为传输控制端,它和WR2/共同控制DAC寄存器的工作状态。DAC0832有两个接地端AGND(模拟电路接地端)和DGND(数字信号)接地端,一般情况下,这两个地端均并联接地。DAC0832的D/A转换电路为倒T型R-2R电阻网络,故有IOUT1和IOUT2两个电流输出端,根据不同的电路组成,该芯片可以有两种输出模式,一种为电流输出模式,这种模式基准电压加在VREF端,由IOUT1,IOUT2输出的电流经运算放大器相加后输出;另一种为电压输出模式,这种模式基准电压加在IOUT1和IOUT2之间,模拟电压加从VREF端输出。本电路采用前一种模式,+5V的基准电压直接加在VREF端,IOUT1和IOUT2两个电流输出端分别接放大器的反相输入端和正相输入端。如图3-5所示:图3-5 D/A转换放大电路图3.2.4 A/D转换及控制电路模数转换及控制电路主要由AT89C52,模数转换器ADC0804等芯片组成。AT89C52的P1口作为数据端口与模数转换器ADC0804的8位数据线相连。模数转换器ADC0804采用的工作方式为:让芯片的CS/(低电平有效)、RD/、WR/三个使能端与单片机的P2.5、P2.6、P2.7端口相连,AGND、DGND和VIN-三个端口与地直接相连处有效状态,由电阻R18和R19接+5V组成基准电压电路接芯片的VREF端。电路中AT89C52单片机的晶振频率选用12 MHz,P3.0P3.3接调压按钮,C11构成复位电路。本电路中,K1,K2,K3,K4为输出电压选择键,其中K1为“设置键”,该键每按一次将能设置一个位的数值;K2为“增加键”,该键每按一次设置位的数值将增加1;K2为“减小键”,该键每按一次设置位的数值将减小1;K4为“确认键”,该键每按一次就将设置好的电压值输出显示。电路图如图3-6所示:图3-6 A/D转换及控制电路4 软件设计如果说硬件是一个系统的物质实现,那么软件就是一个系统的灵魂。良好的软件设计可以充分发挥硬件的性能,给使用者更好的交互界面。前面已经实现了数控直流电压源的硬件设计,从现在开始就是要实现运行于硬件平台上的软件,包括基本的单片机时钟和外围模块的初始化,以及功能模块的实现,如A/D转换、D/A转换、键盘、显示等等。4.1 软件程序设计该系统的软件是在PROTEUS仿真软件中采用C语言编写的,采用模块化程序设计,使得程序结构清晰,便于进一步扩展系统的功能。在系统软件设计中,为了尽量减轻CPU的负担,使CPU有更多的时间来处理有用的运算,同时为了减小电路的功率损耗,全部功能都用中断实现。主程序不做过多的工作,只进行一些必要的初始化,然后开中断,之后进入低功耗模式死循环,并等待中断。一旦有中断,CPU从低功耗模式唤醒,进行中断处理,中断结束后再次返回低功耗模式死循环。主程序的流程图如图4-1所示:图4-1 主程序的流程图4.2 模块程序设计4.2.1 数码显示串行输入/输出共阴极显示驱动器MAX7221连接微处理器并驱动8位数字的7段数字LED显示,驱动程序如下:*#ifndef _Max7219_LED_DRIVER_2007_6_19_#define _Max7219_LED_DRIVER_2007_6_19_#include #define NoOp 0x00 /*空操作*/*作为数据,使该位不显示*/#define Digit0 0x01 /*数码管1*/ #define Digit1 0x02 /*数码管2*/ #define Digit2 0x03 /*数码管3*/ #define Digit3 0x04 /*数码管4*/ #define Digit4 0x05 /*数码管5*/ #define Digit5 0x06 /*数码管6*/ #define Digit6 0x07 /*

温馨提示

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

评论

0/150

提交评论