电子信息工程毕业设计(论文):数控直流电源设计.doc

上传人:文****钱 文档编号:43005 上传时间:2018-05-09 格式:DOC 页数:54 大小:1.22MB
下载 相关 举报
电子信息工程毕业设计(论文):数控直流电源设计.doc_第1页
第1页 / 共54页
电子信息工程毕业设计(论文):数控直流电源设计.doc_第2页
第2页 / 共54页
电子信息工程毕业设计(论文):数控直流电源设计.doc_第3页
第3页 / 共54页
电子信息工程毕业设计(论文):数控直流电源设计.doc_第4页
第4页 / 共54页
电子信息工程毕业设计(论文):数控直流电源设计.doc_第5页
第5页 / 共54页
点击查看更多>>
资源描述

1、湖南商学院本科毕业设计(论文)初拟题目数控直流电源设计课题类别设计论文课题来源生产科研自拟学生姓名学号学院计算机与电子工程学院专业电子信息工程班级电信070X指导教师职称副教授发任务书日期2010年10月28日自己在瞎扯一下本次我们所设计的数控直流稳压电源与传统的稳压电源相比,具有操作方便,电压稳定度高的特点,其输出电压大小采用数字显示,输出电压的大小调节通过“”、“”两键操作,分别作加、减电压控制,单片机将根据按键锁进行的操作增加或减小转换电路的输入数值,转换器将数字量按比例转换成模拟电压,然后经过射极跟随器控制调整输出级输出所需的稳定电压。并ICH707芯片实时测试显示输出电压的变化,使设

2、计更加人性化。第二章方案论证及比较21控制器部分方案一应用PIC芯片作为控制器。PIC单片机系列是美国微芯公司(MICROSHIP)的产品,是当前市场份额增长最快的单片机之一。PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。I/O脚增加了用于设置输入或输出状态的方向寄存器(TRISN,其中N对应各口,如A、B、C、D、E等),从而解决了51系列I/O脚为高电平时同为输入和输出的状态。当置位1时为输入状态,且不管该脚呈高电平或低电平,对外均呈高阻状态;置位0时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达25MA,高电平输出电流可达20

3、MA。相对于51系列而言,这是一个很大的优点,它可以直接驱动数码管显示且外电路简单。它的A/D为10位,能满足精度要求。具有在线调试及编程(ISP)功能。方案二应用AT89S51作为控制器。51系列优点之一是它从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,或布尔处理器。它的处理对象不是字或字节而是位。它不光能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。51系列的另一个优点是乘法和除法指令,这给编程也带来了便利。而且,51系列的I/O脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设置为高电平(复

4、位时,各I/O口均置高电平)。当该脚作输出脚使用时,则为高电平或低电平均可。低电平时,吸入电流可达20MA,具有一定的驱动能力;而为高电平时,输出电流仅数十A甚至更小(电流实际上是由脚的上拉电流形成的),基本上没有驱动能力。PIC芯片的内置很强大,但是一方面它的价格比较昂贵,另一方面,也是由于我们对PIC不大了解,没有试验过,所以,我们选择了51作为我们的控制器。这样一来,我们实现一些功能就必须要加外围电路了。22显示部分方案一使用LED显示。优点可是角度宽,价格便宜。缺点显示的内容少,介面呆板,而且占用较多的IO口资源。方案二使用1602液晶显示器。可视面积大,介面美观,抗干扰能力强,调用方

5、便简单,而且可以节省软件中断资源,应用串行连接,节省I/O口资源。这次,我们选用了LED作为我们的显示器。因为1602液晶显示器相对来说比较昂贵,而且我们的显示部分只是显示电压的输出值。用四位数码管就可以实现。但是,使用LED占用了比较多的资源。23电源部分方案一三端固定输出电压式稳压电源78XX系列运用其器件内部电路来实现过压保护、过流保护、过热保护。这使它的性能很稳定。能够实现1A以上的电流器件具有良好的温度系数。并且有多种电压输出值5V24V,因此产品的应用范围很泛。可以运用本地调节来消除噪声影响,解决了与单点调节相关的分散问题输出电压误差精度分为3和5。方案二LM117/LM317是美

6、国国家半导体公司的三端可调正稳压器集成电路。LM117/LM317的输出电压范围是12V至37V,负载电流最大为15A。它的使用非常简单,仅需两个外接电阻来设置输出电压。此外它的线性调整率和负载调整率也比标准的固定稳压器好。LM117/LM317内置有过载保护、安全区保护等多种保护电路。通常LM117/LM317不需要外接电容,除非输入滤波电容到LM117/LM317输入端的连线超过6英寸(约15厘米)。使用输出电容能改变瞬态响应。调整端使用滤波电容能得到比标准三端稳压器高的多的纹波抑制比。LM117/LM317能够有许多特殊的用法。比如把调整端悬浮到一个较高的电压上,可以用来调节高达数百伏的

7、电压,只要输入输出压差不超过117/LM317的极限就行。当然还要避免输出端短路。还可以把调整端接到一个可编程电压上,实现可编程的电源输出。通过比较分析,此次我们选择了78XX系列芯片来实现我们的电源输出。因为78XX系列的芯片能满足我们的四个固定电压的输出。第三章主要电路单元的设计本系统由电源模块、调压模块、DA转换模块、显示与键盘模块组成。系统电路结构原理图,如图所示电路设计市电输入变压整流电压调整及过流保护系统电源5V2415比较放大DA转换取样取样AT89S51键盘取样取样显示AD转换1整流、滤波电路设计。首先确定整流电路结构为桥式电路,选用大的电解电容对输入的电流进行滤波处理。电路如

8、图所示整流滤波电路该整流滤波电路中,220V的市电输入到电路中,经过一个整流桥堆整流电路。整流电路的任务是将电网供给的交流电变换成脉动的直流电,通常利用二极管的单向导电性来实现。一般分为半波整流/全波整流/桥式整流/被压整流等,而桥堆就是用在桥式整流中的。通过整流桥堆后的电压为UU012。U0为经过变压器变压后的输出电压。经过整流后的电压用两个电容实现滤波处理。2电源电路该电源电路采用了四个三端集成稳压器来为电路输出电路所需要的各种电压。一般三集成稳压电路的最小输入、输出电压差约为2V,否则不能输出稳定的电压,使电压差保持在45V,即经变压器变压,二极管整流,电容器滤波后的电压应比稳压值高一些

9、。78系列的三端稳压器能够输出正的电压。79系列的三端稳压器输出是负电压。由于该电路的芯片发热较大,一般要加上合适的散热片散热保护电路。芯片分三个引脚,输入、输出和接地,三个引脚不能接反,否则容易烧化电路。3放大电路这部分电路是实现电压放大的电路。电路的比较放大采用运放NE5534来设计,该器件具有共模抑制比高,响应速度快和压摆率高的特点。设计时可由R10、R11A、R12组成分压取样电路,并要求R10R11AR1214,即当输出电压存在UO005V时,UA004V,这与DAC的输出10255004V1LSB变化一致。事实上,经过DAC转换以将电流转换为电压并进行电压放大后,即可将得到的10V

10、电压送比较器NE54534的同相端作为比较的基准电压。由于DAC0832是8位的DA转换器,故有255步进。由此,当CPU控制DAC变化1LSB时,其对应VA的变化为004V,故UOUT的可调变化量为005V步长。NE5534和Q1、Q3及取样电路构成的负反馈电路可实现调节输出电压的目的稳压。电路中的过流保护由R9与Q2完成。当IO07A时,VR9R9IO10707V,此时Q2导通,并对调整管Q3的基极分流,使TIP41的导通电阻增大,输出电压降低,从而达到过流保护的目的。该系统的短路保护采用保险管来完成。该电路的数模转换电路是由DAC0832、两级低漂移的运放A714和VREF电路组成。DA

11、C0832和运放U3A将CPU发出的8位二进制数据转换成05V的电压,然后经运放U3B反向放大2倍,以得到010V电压。因此,该DAC的转换分辨率为10281004V,即CPU输出给DAC的数据变化为1BIT,DAC输出电压的变化为004V。VREF电路为DAC提供基准电压,调节R5A,可使基准电压保持为5V。8位数模转换器DAC0832芯片1引脚及其功能DAC0832是双列直插式8位D/A转换器。能完成数字量输入到模拟量电流输出的转换。图11和图12分别为DAC0832的引脚图和内部结构图。其主要参数如下分辨率为8位,转换时间为1S,满量程误差为1LSB,参考电压为10/SPAN10V,供电

12、电源为515V,逻辑电平输入与TTL兼容。从图11中可见,在DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号/XFER。DAC0832引脚图如图所示图中,当ILE为高电平,片选信号/CS和写信号/WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。此后,当/WR1由低电平变高时,控制信号成为低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化。对第二级锁存来说,传送控制信号/XFER和写信号/WR2同时为低电平时,二级锁存控制信

13、号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当/WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。图中其余各引脚的功能定义如下1、DI7DI08位的数据输入端,DI7为最高位。2、IOUT1模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当DAC寄存器中数据全为0时,输出电流为0。3、IOUT2模拟电流输出端2,IOUT2与IOUT1的和为一个常数,即IOUT1IOUT2常数。4、RFB反馈电阻引出端,DAC0832内部已经有反馈电阻,所以RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输

14、入端之间。5VREF参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,VREF范围为1010V。VREF端与D/A内部T形电阻网络相连。6、VCC芯片供电电压,范围为515V。7、AGND模拟量地,即模拟电路接地端。8、DGND数字量地。4键盘模块S1S2S3S4K1K2K3K410KRA110KRA210KRA310KRA4VCC5当输出电压经R13限流和R14取样后,即可送入TLC24531进行模数转换。图中的TLC24531为11通道、12位串行AD转换器,具有12位分辨率,转换时间为10S,有11个模拟输入通道,3路内置自测试方

15、式,采样率为66KBPS,线性误差1LSBMAX,同时带有转换结果输出EOC,并可单、双极性输出。通过其可编程的MSB或LSB前导可编程输出数据长度。TLC24531的时钟频率选用41MHZ,电源输出电压UO的取样信号从IN0输入,芯片的IO时钟端、数据输入端、转换数据输出端、片选端分别与AT89S51单片机的P00,P01,P02,P03相连,然后经单片机处理后从P0口输出,在经芯片MC74HC573N驱动后送入数码管,通过数码管显示输出电压。电路中AT89S51单片机的晶振频率选用12MHZ,P30,P32,P35,P36接调压按钮。K1实现设置功能,即通过此按键可以实现电平快速切换功能(

16、3V,5V,6V,9V,12V),K2实现调控增加电压的功能,K3实现调控减小电压的功能,K4实现按键锁定和解锁的功能,防止误触造成不便。5电压显示电路该部分电路通过运用两个MC74HC573N芯片控制数码管的位选和段选,并且,都将他们接在AT89S51的主芯片的口上进行对数码管的控制。通过数码管的时时检测来知道电路电压输出的大小。电压显示电路,如下图所示F10G5E1D2C4DP3B7A11DIG112DIG29DIG38DIG46LED1S03641A200RE3200RE4200RE5200RE6200RE7200RE8200RE2200RE1Q11NPNQ12NPNQ13NPNQ14N

17、PNGND10KR2410KR2210KR2310KR21OE1D02D13D24D35D46D57D68D79GND10LE11Q712Q613Q514Q415Q316Q217Q118Q019VDD20UA6MC74HC573NOE1D02D13D24D35D46D57D68D79GND10LE11Q712Q613Q514Q415Q316Q217Q118Q019VDD20UA5MC74HC573ND0D1D2D3D4D5D6D7D0D1D2D3GNDP32P37电路按一般的接法,在段,位选口上接上上拉电阻。并用三极管实现电路电流的放大小效果。数码管使用四位计数,使数码管的显示可以达到V的精确

18、要求。6主芯片电路控制该部分电路采用了最基本的AT89S51为基核,通过对该芯片编程,使芯片实现各种强大的功能。该部分电路的电路图,如图所示P101P112P123P134P145P156P167P178RSE9P3010P3111P3212P3313P3414P3515P3616P3717XTAL218XTAL119GND20P2_021P2_122P2_223P2_324P2_425P2_526P2_627P2_728PSEN29ALE/PROG30EA/VPP31P0_732P0633P0534P0435P0336P0237P0138P0039VCC40AT89S51U622UFC173

19、0PFC2030PFC1912X210KR16GNDK3K4K1K2K3K4VCC554321GNDVCC5D0D1D2D3D4D5D6D7CSWRP16P17P32P37GNDIN01IN12IN23IN34IN45IN56IN67IN78IN89IN911IN1012GND10REF13REF14CS15OUT16ADDRESS17I/OCLOCK18ECO19VCC20U7TLC2453VCC512345A/DALARM该部分电路通过控制AT89S51芯片的IO口实现电路的各项控制功能。通过控制P30,P31,P35,P36口实现按键的调节设置电压功能;通过控制芯片的P0口接的译码驱动器

20、MC74HC573芯片实现电压的时时跟踪显示功能;通过和的转换,实现电路的数模和模数转换等。MC78系列24C02芯片概述CAT24WC01/02/04/08/16是一个1K/2K/4K/8K/16K位串行CMOSE2PROM内部含有128/256/512/1024/2048个8位字节CATALYST公司的先进CMOS技术实质上减少了器件的功耗CAT24WC01有一个8字节页写缓冲器CAT24WC02/04/08/16有一个16字节页写缓冲器该器件通过I2C总线接口进行操作有一个专门的写保护功能。管脚描述SCL串行时钟CAT24WC01/02/04/08/16串行时钟输入管脚用于产生器件所有数

21、据发送或接收的时钟这是一个输入管脚。SDA串行数据/地址CAT24WC01/02/04/08/16双向串行数据/地址管脚用于器件所有数据的发送或接收SDA是一个开漏,输出管脚可与其它开漏输出或集电极开路输出进行线或WIREORA0A1A2器件地址输入端这些输入脚用于多个器件级联时设置器件地址当这些脚悬空时默认值为024WC01除外。当使用24WC01或24WC02时最大可级联8个器件如果只有一个24WC02被总线寻址这三个地址输入脚A0A1A2可悬空或连接到VSS如果只有一个24WC01被总线寻址这三个地址输入脚A0A1A2必须连接到VSS。当使用24WC04时最多可连接4个器件该器件仅使用A

22、1A2地址管脚A0管脚未用可以连接到VSS或悬空如果只有一个24WC04被总线寻址A1和A2地址管脚可悬空或连接到VSS。当使用24WC08时最多可连接2个器件且仅使用地址管脚A2A0A1管脚未用可以连接到VSS或悬空如果只有一个24WC08被总线寻址A2管脚可悬空或连接到VSS。当使用24WC16时最多只可连接1个器件所有地址管脚A0A1A2都未用管脚可以连接到VSS或悬空WP写保护。如果WP管脚连接到VCC所有的内容都被写保护只能读当WP管脚连接到VSS或悬空允许器件进行正常的读/写操作。芯片的时序图DATAVALIDITYSTARTANDSTOPDEFINITIONOUTPUTACKNO

23、WLEDGE集成运放NE5534芯片DESCRIPTION/ORDERINGINFORMATIONTHENE5534,NE5534A,SA5534,ANDSA5534AAREHIGHPERFORMANCEOPERATIONALAMPLIFIERSCOMBININGEXCELLENTDCANDACCHARACTERISTICSSOMEOFTHEFEATURESINCLUDEVERYLOWNOISE,HIGHOUTPUTDRIVECAPABILITY,HIGHUNITYGAINANDMAXIMUMOUTPUTSWINGBANDWIDTHS,LOWDISTORTION,ANDHIGHSLEWRATE

24、THESEOPERATIONALAMPLIFIERSARECOMPENSATEDINTERNALLYFORAGAINEQUALTOORGREATERTHANTHREEOPTIMIZATIONOFTHEFREQUENCYRESPONSEFORVARIOUSAPPLICATIONSCANBEOBTAINEDBYUSEOFANEXTERNALCOMPENSATIONCAPACITORBETWEENCOMPANDCOMP/BALTHEDEVICESFEATUREINPUTPROTECTIONDIODES,OUTPUTSHORTCIRCUITPROTECTION,ANDOFFSETVOLTAGENULL

25、INGCAPABILITYWITHUSEOFTHEBALANCEANDCOMP/BALPINSSEETHEAPPLICATIONCIRCUITDIAGRAMFORTHENE5534AANDSA5534A,AMAXIMUMLIMITISSPECIFIEDFORTHEEQUIVALENTINPUTNOISEVOLTAGESYMBOLAPPLICATIONCIRCUITTLC2543芯片引脚图,如图所示TLC2543概述TLC2543是12位的串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机的I/O资源;且价格适中,分辨率较高,因此使用较为广泛。

26、TLC2543与围外电路的连线简单,三个控制输入端的CS(片选)、输入/输出时钟(I/OCLOCK)以及串行数据输入端(DATEINPUT。片内的14通道多路器可以选择11个输入中的任何一个或三个测试电压中的一个,采样保持是自动的,转换结束,EOC输出变高。引脚号名称I/O说明19,11,12AINOAIN10I模拟量的输入端。11路输入信号由内部多路器选通。对于41MHZ的I/OCLOCK,驱动源阻抗必须小于或等于50欧,而且用60PF电容来限制模拟输入电压的斜率。15CSI片选端。在CS端由高变低时,内部计数器复位。由低变高时,在设定的时间内禁止DATAINPUT和I/OCLOCK17DA

27、TAINPUT串行数据输入端,由位的串行地址输入来选择模拟量的输入通道。16DATTAOUT0A/D转换结果的三态串行输出端。为高时处于高阻抗状态,为低时处于激活状态。EOC转换输出端。在最后的下降沿之后,EOC从高电平变为低电平并保持转换完成和数据准备传输为止。10GND地。是内部电路的回路端。除另外说明外,地所有的电压测量都相对而言。I/OCLOCK输入输出时钟端。I/OCLOCK接收串行输入信号并完成以下四个功能(1)在I/OCLOCK的钱8个上升沿,8为输入数据存入数据寄存器。(2)在I/OCLOCK的第四个下降沿,被选通的模拟输入电压开始向电容器充电,直到I/OCLOCK的最后一个下

28、降沿为止。(3)将前一次转换数据的其余11位输出到OUT端,在I/OCLOCK下降沿时数据开始变化。(4)I/OCLOCK的最后一个下降沿,降转换的控制信号送到内部状态控制位。14REFI正基准电压端。基准电压的正端(通常为)被加到,最大的输入电压范围由加于本端与端的电压差决定。REFI负基准电压端,基准电压的低端(通常为低)被加到REF20VCC电源TLC2543引脚、功能及时序一、引脚TLC2543为20脚DIP封装,引脚图如下图所示。TLC2543具有4线制串行接口,分别为片选端CS,串行时钟输入端I/OCLOCK,串行数据输入端DATAIN和串行数据输出端DATAOUT。它可以直接与S

29、PI器件进行连接,不需要其他外部逻辑。同时,它还在高达4MHZ的串行速率下与主机进行通信。TLC2543除了具有高速的转换速度外,片内还集成了14路多路开关。其中N路为外部模拟量输入,3路为片内自测电压输入。在转换结束后,EOC引脚变为高电平,转换过程中由片内时钟系统提供时钟,无需外部时钟。在AD转换器空闲期间,可以通过编程方式进入断电模式,此时器件耗电只有25PA。工作时序以MSB为前导,用CS进行12个时钟传送的工作时序如下图所示。1上电时,EOC“1”,CS“1”2使CS下降,前次转换结果的MSB即A11位数据输出到DOUT供读数。3将输入控制字的MSB位即C7送到DIN,在CS之后TS

30、U1425US后,使CLK上升,将DIN上的数据移入输入寄存器。4CLK下降,转换结果的A10位输出到DOUT供读数。5在第4个CLK下降时,由前4个CLK上升沿移入寄存器的四位通道地址被译码,相应模入通道接通,其模入电压开始时对内部开关电容充电。6第8个CLK上升时,将DIN脚的输入控制字C0位移入输入寄存器后,DIN脚即无效。7第11个CLK下降,上次AD结果的最低位A0输出到DOUT供读数。至此,I/O数据已全部完成,但为实现12位同步,仍用第12个CLK脉冲,且在其第12个CLK下降时,模入通道断开,EOC下降,本周期设置的AD转换开始,此时使CS上升。8经过时间TCONVDEFINE

31、UCHARUNSIGNEDCHAR判断,若电流大于额定电压的15倍,立刻进行初始化判断,若电流大于额定电压的12倍,进入中断,同时蜂鸣器发出报警,并在5秒后进行初始化。DEFINEUINTUNSIGNEDINT/变量解释NUM0输出电压除以AD芯片(TLC2543)的读取电压的比值NUM1NUM1的值为放大比例,即输出电流除以DA芯片(DAC0832)的输出电压100即显示的值的比值MAX当电路中电流为最大时,AD输出的电流/DEFINENUM01DEFINENUM11DEFINEMAX1/变量解释FLAG判断是否锁定键盘FLAG1常用电压的设定FLAG0判断DA值为BUJIN,还是常用电压,

32、还或是BUBU函数S1NUMS1按键的值S4NUMS4按键的值A判断BUBU程序是加还是减/UCHARS1NUM,S4NUM,FLAG,FLAG1,FLAG0,QIAN,BAI,SHI,GE,A/变量解释SHU输出电压的显示值YIBU自动步进的DA值BUJIN步进的设定值/UINTSHU,YIBU,BUJINUCHARCODETABLE1/NORMALNUMBER0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6FUCHARCODETABLE2/NUMBER0XBF,0X86,0XDB,0XCF,0XE6,0XED,0XFD,0X87,0XFF,0

33、XDFUCHARCODETABLE3/常用电压0X12C,0X1F4,0X258,0X384,0X4B0SBITSCLP17/I2C的数据/地址传输端SBITSDAP16/I2C的时钟端SBITDULAP32/数码管的段选,用来选择数码管显示的数字SBITWELAP37/数码管的位选,用来选择显示的数码管SBITCSDAP14/DAC0832的片选信号端SBITWRP15/外部写控制SBITS1P30/按键1,即功能切换键SBITS2P31/按键2,即增加键SBITS3P35/按键3,即减小键SBITS4P36/按键4,即锁定解锁键SBITADEOCP24/AD转换结束端,在最后的I/OCLO

34、CK下降沿之后,/EOC从高电平变为低电平并保持到转换完成和数据准备传输为止SBITADCLOCKP23/输入输出时钟端SBITADINP22/串行数据输入端SBITADOUTP21/AD转换结果的串行输出端SBITADCSP20/AD的片选端SBITDIP27/蜂鸣器VOIDDELAY/延时一微秒左右VOIDDELAYMSUINTZ/延时单位为毫秒VOIDINIT/初始化函数VOIDKEYSCAN/键盘扫描函数/I2C函数声明/VOIDSTART/开始I2C通讯VOIDSTOP/停止I2C通讯VOIDRESPONS/应答VOIDWRITE_BYTEUCHARDATE/写数据UCHARREAD

35、_BYTE/读数据VOIDWRITE_ADDUCHARADDRESS,UCHARDATE/在指定地址写数据UCHARREAD_ADDUCHARADDRESS/在指定地址读数据/I2C函数声明/VOIDDISPLAYUCHARQIAN,UCHARBAI,UCHARSHI,UCHARGE/数码管显示,格式为XXXXVOIDDIDI/若电流超过1A的12倍时过5秒初始化,1A的15倍时直接初始化VOIDDASTARTUINTX/DA开始,并输出指定电压,其中X为需要输出的电压VOIDXIANSHU/显示电路中的电流VOIDSHEBUJIN/设定并显示设定的步进电压VOIDSHECHANG/设定并显示

36、设定的常用电压VOIDBUBU/BUBU每隔05秒输出电压变化01V,先增大,至超过13V时,再减小VOIDBUBUSTART/开始BUBU函数模式,数码管显示电路中的电压VOIDBUBUSTOP/结束BUBU函数模式,数码管显示电路中的电压UINTADWORK/读取AD芯片的数据即测得的电流,但由于有乘以相应的系数,所以输出结果为输出端的电压/主函数/VOIDMAININITWHILE1KEYSCANIFS1NUM0XIANSHU/显示输出电压函数IFS1NUM1SHEBUJIN/设定步进电压函数IFS1NUM2SHECHANG/设定常用电压函数IFS1NUM0IFFLAG01DASTART

37、BUJIN/使DA芯片输出指定的步进电压的相应电流IFFLAG02DASTARTTABLE3FLAG1/使DA芯片输出指定的常用电压的相应电流IFFLAG03BUBUSTART/开始BUBU函数IFFLAG03BUBUSTOP/结束步步函数DIDI/主函数/VOIDINITDI1/蜂鸣器,关闭WELA0/数码管,关闭DULA0CSDA1/DA初始化,关闭WR1SDA1/I2C通讯,关闭DELAYSCL1DELAYTMOD0X11TH06553650000/256/初始化定时器0,关闭TL06553650000256EA1ET01TR00TH16553650000/256/初始化定时器1,关闭T

38、L16553650000256EA1ET11TR10SHU0BUJIN0YIBU0S1NUM0S4NUM0FLAG0FLAG00FLAG10VOIDDELAYVOIDDELAYMSUINTZUINTX,YFORXZX0XFORY110Y0Y/DA转换/VOIDDASTARTUINTXDULA0/关闭数码管显示WELA0CSDA0/开启DAWR0P0XNUM1/P0为DA接口,NUM1的值为放大比例,即输出电流除以DA芯片(DAC0832)的输出电压100即显示的值的比值DELAYMS200/DA转换/数码管显示函数/VOIDDISPLAYUCHARQIAN,UCHARBAI,UCHARSHI,

39、UCHARGECSDA1/关闭DAWR1DULA1P0TABLE1QIANDULA0P00XFFWELA1P00X7FWELA0DELAYMS5DULA1P0TABLE2BAI/TABLE2输出的值,加有小数点DULA0P00XFFWELA1P00XBFWELA0DELAYMS5DULA1P0TABLE1SHIDULA0P00XFFWELA1P00XDFWELA0DELAYMS5DULA1P0TABLE1GEDULA0P00XFFWELA1P00XEFWELA0DELAYMS5/数码管显示函数/VOIDDIDIIFADWORKMAX15INIT/让电路初始化IFADWORKMAX12DI0TR

40、01VOIDTIMER0INTERRUPT1/用于当电流超过12倍时过5秒复位UCHARAA0TH06553650000/256TL06553650000256AAIFAA205AA0INIT/让电路初始化VOIDTIMER1INTERRUPT3/用于BUBU函数的每秒步进01VUCHARTT0TH06553650000/256TL06553650000256TTIFTT10TT0BUBUIFS10DELAYMS5IFS10TR10/关闭定时器,即关闭BUBU函数/I2C总线通讯读写,启动,停止函数/VOIDSTART/启动I2C总线的函数SDA1DELAYSCL1DELAYSDA0DELAY

41、VOIDSTOP/终止I2C总线的函数SDA0DELAYSCL1DELAYSDA1DELAYVOIDRESPONSUCHARI0SCL1DELAYWHILESDA1/16位,右移四位变为12位精度/AD转换/独立键盘扫描/VOIDKEYSCANIFFLAG0IFS10DELAYMS5IFS10S1NUMIFS1NUM1FLAG01/FLAG0为1时,数码管显示步进电压,按确定键之后,DA按BUJIN值输出电压IFS1NUM2FLAG02/FLAG0为2时,数码管显示常用电压,按确定键之后,DA按TABLE3FLAG1值输出电压IFS1NUM3FLAG03/FLAG0为3时,数码管显示电路电压,

42、并开启BUBU函数IFS1NUM4S1NUM0WHILES1/等待松手释放IFFLAG01SHEBUJINIFFLAG02SHECHANGIFFLAG03XIANSHUIFS1NUM0IFS20DELAYMS5IFS20IFS1NUM1BUJINIFBUJIN1301BUJIN0IFS1NUM2FLAG1IFFLAG15FLAG10WHILES2/等待松手释放IFS1NUM1SHEBUJINIFS1NUM2SHECHANGIFS30DELAYMS5IFS30IFS1NUM1BUJINIFBUJIN1BUJIN1300IFS1NUM2FLAG1IFFLAG11FLAG14WHILES3/等待松手

43、释放IFS1NUM1SHEBUJINIFS1NUM2SHECHANGIFS40DELAYMS5IFS40S4NUMIFS4NUM1/确定键FLAG0/FLAG为0时解锁键盘S1NUM0/此时数码管处于显示状态IFS4NUM2FLAG1/FLAG为1时锁定键盘,按S1,S2,S3键无效IFS4NUM3S4NUM0FLAG0/FLAG为0时解锁键盘WHILES4XIANSHU/独立键盘扫描/显示输出电压函数/VOIDXIANSHUWRITE_ADD1,ADWORK/I2C通讯DELAYMS100SHUREAD_ADD1012NUM0/此处的NUM0为显示比例,输出电压除以AD芯片(TLC2543)

44、的读取电压的比值/其中READ_ADD100012为AD芯片读取的电压值,单位为V,为了输入数码管/方便,故乘以100,以便显示到小数点后两位QIANSHU/1000BAISHU1000/100SHISHU100/10GESHU10DISPLAYQIAN,BAI,SHI,GE/显示输出电压函数/设定步进电压函数/VOIDSHEBUJINWRITE_ADD10,BUJIN/I2C通讯DELAYMS100/BUJIN1,U001VBUJINREAD_ADD10QIANBUJIN/1000BAIBUJIN1000/100SHIBUJIN100/10GEBUJIN10DISPLAYQIAN,BAI,S

45、HI,GE/设定步进电压函数/设定常用电压函数/VOIDSHECHANGWRITE_ADD20,FLAG1/I2C通讯DELAYMS100FLAG1READ_ADD20QIANTABLE3FLAG1/1000BAITABLE3FLAG11000/100SHITABLE3FLAG1100/10GETABLE3FLAG110DISPLAYQIAN,BAI,SHI,GEVOIDBUBUSTARTYIBUSHUTR11VOIDBUBUIFA0YIBUYIBU10IFYIBU1291A1IFA1YIBUYIBU10IFYIBU10A0DASTARTYIBUXIANSHUVOIDBUBUSTOPTR10参考文献

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。