免费预览已结束,剩余6页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
g-g0数控直流电流源韦 晟摘 要 : 本系统以直流电流源为核心,ATMEGA16单片机为主控制器,通过键盘来设置直流电源输出电流,并可由液晶显示模块1602显示电流设定值。本系统由单片机程控输出数字信号,经过D/A转换器(MAX538)输出模拟量,再经过运算放大器隔离放大,控制输出功率管的基极,随着功率管基极电压的变化而输出不同的电流。在D/A转换器输出电压值之后与基准电压源输出电压相比较,使其电压产生比较信号,运用负反馈原理降低误差,使输出性能较理想。这样构成稳定的压控电流源,实际测试结果表明,本系统输出电流稳定,不随负载和环境温度变化,并具有很高的精度,输出电流误差范围10mA,输出电流可在20mA2000mA范围内任意设定,因而可实际应用于需要高稳定度小功率恒流源的领域。关键词:压控恒流源;D/A转换 The Digital Controlled Direct Current SourceWEI ShengAbstract: For the system that DC source is center and ATMEGA16 version Micro Controller Unit (MCU) is main controller, output current of DC power can be set by a keyboard, while the real output current and set-value can be displayed by LCD1602. In the system, the digital programmable signal from MCU is converted to analog value by DAC (MAX538), then the analog value that is isolated and amplified by operational amplifiers, is sent to the base electrode of power transistor, so an adjustable output current can be available with the base electrode voltage of power transistor. Compared with output voltage, make it produce error-signal after D/A output voltage value, use the intersection of negative feedback and principle reduce error, make output performance to be more ideal. so a stable voltage-controlled constant current power is designed. The test results have showed that the system can output a stable current, which has no influence with load and environment temperature, and can output a precise current of 10mA error with a width, which can be set liberally in 20mA2000mA, so it can be applied in need areas of constant current source with high stability and low power. Keywords: voltage-controlled constant current source;D/A change1 引言随着数字电路应用领域的扩展,对数控恒定电流器件的需求越来越迫切。本文设计的数控恒流器件的设计原理是利用数字信号的变化来控制输出电流I的变化。它具有数模(D/A)转换功能; I可调范围宽;允许工作电压变化大;电路体积小、调节方便;可广泛地应用于传统恒流器件无法涉足的领域。2 方案设计与论证2.1 总体方案论证与比较方案一:采用各类数字电路来组成键盘控制系统,进行信号处理,如选CPLD等可编程逻辑器件。本方案电路复杂,灵活性不高,效率低,不利于系统的扩展,对信号处理比较困难。方案二:采用ATMEGA16单片机作为整机的控制单元,通过改变DA模块输入数字量来改变输出电压值,从而使输出功率管的基极电压发生变化,间接地改变输出电流的大小。在DA模块输出电压值之后与基准电压源输出电压相比较,使其电压产生比较信号,运用负反馈原理降低误差,使输出性能较理想。此系统比较灵活,采用软件方法来解决数据的预置以及电流的步进控制,使系统硬件更加简洁,各类功能易于实现,能很好地满足题目的要求。本方案的基本原理如图2.1示。测试通道恒流输出输出调整单元整流滤波交流输入 反馈芯片供电部分D/A转换器单片机LCD显示键盘 图2.1 系统原理框图比较以上两种方案的优缺点,方案二简洁、灵活、可扩展性好,能达到设计要求,因此采用方案二来实现。3 硬件电路设计3.1 ATMEGA16单片机 图3.1 ATMEGA16单片机引脚图AVR 内核具有丰富的指令集和32 个通用工作寄存器。所有的寄存器都直接与算逻单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC 微控制器最高至10 倍的数据吞吐率。ATmega16 有如下特点:16K字节的系统内可编程Flash(具有同时读写的能力,即RWW),512 字节EEPROM,1K 字节SRAM,32 个通用I/O 口线,32 个通用工作寄存器,用于边界扫描的JTAG 接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/ 计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP 封装) 的ADC ,具有片内振荡器的可编程看门狗定时器,一个SPI 串行端口,以及六个可以通过软件进行选择的省电模式。 工作于空闲模式时CPU 停止工作,而USART、两线接口、A/D 转换器、SRAM、T/C、SPI 端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态; ADC 噪声抑制模式时终止CPU 和除了异步定时器与ADC 以外所有I/O 模块的工作,以降低ADC 转换时的开关噪声; Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;扩展Standby 模式下则允许振荡器和异步定时器继续工作。本芯片是以Atmel 高密度非易失性存储器技术生产的。片内ISP Flash 允许程序存储器通过ISP 串行接口,或者通用编程器进行编程,也可以通过运行于AVR 内核之中的引导程序进行编程。引导程序可以使用任意接口将应用程序下载到应用Flash存储区(ApplicationFlash Memory)。在更新应用Flash存储区时引导Flash区(Boot Flash Memory)的程序继续运行,实现了RWW 操作。 通过将8 位RISC CPU 与系统内可编程的Flash 集成在一个芯片内, ATmega16 成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而低成本的解决方案。AVR Studio具有一整套的编程与系统开发工具,包括:C 语言 编译器、宏汇编、 程序调试器/ 软件仿真器、仿真器及评估板。ATMEGA16单片机引脚图如图3.1所示。系统硬件以ATMEGA16单片机为核心,外围包括键盘模块、电源模块、液晶显示模块、D/A转换模块及恒流源模块。32 单片机及外围电路CPUATMEGA16显示模块DA数模转换模块键盘输入电源图3.2单片机及外围电路3.3 键盘工作原理:键盘对单片机输入数据,用ATMEGA16的并行口PD接键盘,如图3.3所示每个按键的状态同样需变成数字量“0”和“1”,开关的一端(列线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么;还要消除按键在闭合或断开时的抖动。图3.3键盘与单片机接口34 电源模块本设计共用到电源有三种:即12V +5V +18V.3.4.1 电源原理稳压电源由电源变压器整流电路、滤波电路和稳压电、路组成,如图3.4 图3.4 电源方框及波形图a 整流和滤波电路:整流作用是将交流电压U2变换成脉动电压U3。滤波电路一般由电容组成,其作用是脉动电压U3中的大部分纹波加以滤除,以得到较平滑的直流电压U4。b 稳压电路:由于得到的输出电压U4受负载、输入电压和温度的影响不稳定,为了得到更为稳定电压添加了稳压电路,从而得到稳定的电压U。+12V其中+12V给运放供电;-12V为运方的参考电压,如图3.5所示。由于要求输出的电流最大值为2000mA,而且取样电阻为1欧所以要求运放输出的电压至少为2伏,通过计算12伏的电压足够实现上述要求。图3.6中电路提供+5V的电源;主要用于单片机(ATMEGA16)、液晶显示模块1602、键盘。图3.7中提供的18V的电源用于恒流源模块 。由于要求输出的电流最大值为2000mA,而且主要电流从它通过,所以要用大电容,本设计采用两个4700UF 50V的电容并联(同时为了减小纹波系数本设计在两个电容之间接入有源滤波电路),由于运放LM324的耐压值最大可达42V,所以LM324可以安全工作。 图3.5 12V电源原理图图3.6 +5V电源原理图图3.7 VCC电源原理图3.5 液晶显示模块:3.5.1 1602引脚 第1脚:VSS为地电源。第2脚:VDD接5V正电源。 第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。 第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读取信号,当RS为高电平RW为低电平时可以写入数据。 第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。 第1516脚:VCC、GND。3.5.2 LCD的指令说明及时序1602液晶显示模块内部的控制器共有11条指令它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。如表3.1所示(说明:1为高电平、0为低电平)表3.1 控制命令表指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H 。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。 指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁 。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。 指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符 (有些模块是 DL:高电平时为8位总线,低电平时为4位总线)。指令7:字符发生器RAM地址设置。 指令8:DDRAM地址设置。 指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令10:写数据 。指令11:读数据 。表3.2芯片时序表 图3.8 读操作时序图 图3.9写操作时序图3.5.3 LCD与单片机接口图 图 3.10预值数码显示模块原理图3.6 D/A转换模块图3.11 MAX538芯片管脚图3.6.1 MAX538简介 MAX538是MAXIM公司提供的单5V电源供电、内置输出缓冲的12位串行数模转换器,与MAX531MAX539为同一系列产品,如图3.11所示。MAX538输出电压范围为02.5V,具有上电复位和串行数据输出功能,便于构建菊花链式结构,其耗电仅140A,适合电池供电或便携式设备。3.6.2 MAX538接口与时序MAX538采用由片选、时钟和数据构成的三线制串行数据接口,与SPI、QSPI、Microwire等多种串行通信标准兼容。芯片通过写入两个字节进行编程,先将包括4个无效位的高位字节写入移位寄存器的MSB,然后将低位字节写入寄存器LSB,其中无效位仅在芯片构成菊花链结构时需要。当片选信号CS为低时,在时钟上升沿数据被写入16位移位寄存器。当CS变高时,移位寄存器的低12位被转移到数模转换寄存器中,同时更新输出电压。MAX538的工作时序如图3.12所示,它的时钟频率上限为14 MHz,移位寄存器数据更新速率高达877 kHz,但由于12位数模转换的建立时间为25 s,这将MAX538的满幅阶跃调节频率限制在40 kHz左右,而这一频率已经能够满足普通工业控制系统对执行器调节速度的要求。 图3.12 MAX538工作时序3.6.3 MAX538与单片机接口技术及应用MOTOROLA、ATMEL、MICROCHIP等主要单片机厂商提供具有串行外围接口SPI的单片机,而MAX538的数据接口和SPI兼容,这为它在单片机系统中的应用提供了方便。SPI接口采用时钟CLK、输出数据DO、输入数据DIN 3根信号线进行时钟同步与数据传输,可以工作在全双工通信模式,并由片选线CS实现多机通信或扩展多片SPI芯片,是一种高效的同步串行通信接口。当MAX538和具有SPI接口的单片机协同工作时,只需将对应信号线连接并正确设置单片机的相关寄存器,相应软件的编写工作简单,MAX538与单片机接口如图3.13所示。图3.13 MAX538与单片机接口图假设键盘输入的电流值为I,由于max538为12位的D/A转换器,待转换的数字信号最大值为2 12-1=4095,根据题目要求所显示的电流最大值为2000mA,则D/A转换器的数字信号和输出的模拟信号的线形关系为: (3-1)式中I为需要输出的模拟信号值。为了单片机处理数据的方便,让D/A转换器的数字信号为最大值4095时,输出的模拟信号最大值为2047mA,则其线形关系为: (3-2) D/A转换器输入的数字信号由单片机给出,从单片机的PC口输出,单片机根据输入的I值,把I值乘以2,再转换成二进制数字信号,送到PC口。启动D/A转换即可输出所需要的模拟信号值。3.7恒流源模块3.7.1恒流源方案选择方案一:采用恒流二极管或者恒流三极管,精度比较高,但这种电路能实现的恒流范围很小,只能达到十几毫安,不能达到题目的要求。方案二:采用四端可调恒流源,这种器件靠改变外围电阻元件参数,从而使电流达到可调的目的,这种器件能够达到12000毫安的输出电流。改变输出电流,通常有两种方法:一是通过手动调节来改变输出电流,这种方法不能满足题目的数控调节要求;二是通过数字电位器来改变需要的电阻参数,虽然可以达到数控的目的,但数字电位器的每一级步进电阻比较大,所以很难调节输出电流。方案三:压控恒流源,通过改变恒流源的外围电压,利用电压的大小来控制输出电流的大小。电压控制电路采用数控的方式,利用单片机送出数字量,经过D/A转换转变成模拟信号,再送到大功率三极管进行放大。运放的输出端通过三极管与反向输出端相连,构成负反馈电路(如图3.14所示)。由于运放的同相输入端(3脚)与反相输入端(2脚)在理论上是虚短的,且运放的输入电阻无穷大,因此反相端和同相端的电位相等,即U=U,又由于三极管的发射极电流I与集电极电流I仅相差微小的基极电流,可视为两者相等即I=I。因此可以通过输入端的电压来调整输出电流I的大小。该方案通过软件方法实现输出电流稳定,易于功能的实现,便于操作,故选择此方案。图3.14 负反馈原理图3.7.2双闭环控制在内环反馈基础上再加上一个外部的负反馈。如图3.15 所示,即把输出后电压值经过A/D转换之后,再与D/A转换之前的电压值相比较,然后经过内环反馈,即经过了两次负反馈过程。理论上讲这种方案比单独内环反馈要更精确,但在实际调试中已经调试通过了单片机软硬件及算法的设计,但经过比较,觉得在本系统没有必要再加上外环控制。所以本设计选用了内环单独控制。 图3.15 双闭环控制3.7.3内环反馈在DAC538输出电压值之后与基准电压源TL431ACZ输出电压相比较,使其产生误差信号,运用负反馈原理降低误差,使输出性能较理想。电路框图如图3.16 所示,原理图如图3.17所示。图3.16 内环反馈 图3.17内环反馈原理图TL431A集成电路是三端可编程稳压二极管。这些单片集成电路电压基准如同低温度系数齐纳管一样运行,通过2个外部电阻可从Vref编程至36伏。这些器件显示出宽工作电流范围,在典型动态阻抗0.22欧时为1毫安至100毫安,这些基准的特性使它们能在数字电压表、电源和运放电路等许多应用中代替齐纳二极管。2.5伏参考使从5.0伏逻辑电源可方便地获得稳定的参考电压。TL431ACZ电压典型值是2.495伏。3.7.4 恒流源电路原理图运放的反相输入端采用负反馈电路,使得取样电阻上的电流可以微调,提高了输出电流的精度,又由于运放的同相输入端的信号来自与数模转换模块的运放输出,稳定度很高。原理图如图3.18所示,图中输出端取样电阻为1欧大功率绕线电阻;丝具有功率大,受热情况下其阻值改变不大,所以采用绕线电阻。(其阻值采用LCR数字电桥精确测量)。 图3.18恒流源电路原理图3.7.5 系统原理图图3.19系统原理图4 软件设计设计以WINDOWS为设计平台,在使用时先在AVR Studio环境下编辑程序,然后保存程序、建立新项目、设置项目,接着编译程序,最后调试和执行这样一步步来实现仿真。本设计软件要实现的功能是:键盘对单片机输入数据,单片机对获得的数据进行处理,送到12位数模转换器(MAX538),再送到恒流源模块,实现数字量对电流的控制。4.1程序流程方框图 中断开始保护现场初始化功能键?读入实际电流值增大?数据测试 N向下步进数据是否一致 Y向上步进 N发出调整命令 Y保存数据数据放回显示单元恢复现场中断返回图4.1 主程序流程图 图4.2 键盘中断子程序流程图4.2 程序清单程序清单见附录。5 系统测试5.1功能测试5.1.1 输出电流范围本设计可实现0.02A到2A之间任意预置值(20mA-2000mA),同时具有+/-1mA、+/-10mA、/-100mA、/-1000mA的步进。并且特别设置了限制功能,键盘输入在20mA以下或者2000mA以上无法进行输入,保证了系统的安全,达到了本题目发挥部分的要求。5.1.2 输出电流测试可以通过键盘来设置输出电流给定值,并且可以同时在输出端测出实测值,本系统中没有采用外闭环,为了验证我们已实现了该项功能,用万用表加载到外接负载电阻上,外接负载阻值为1欧,显示数值正确。次数123456单位给定值20001600120040010020mA测量值1.9761.5781.1930.4120.1100.016V电流值19761578119341211016mA表5.1 输出电流测试5.1.3 步进功能测试本设计具有非常突出的“+”,“-”步进功能,可以单独步进1mA,10mA,100mA,1000mA使步进调整过程更加快捷方便,而且在任何情况下不会超出设定值的上下限。5.1.4 改变负载测试改变负载电阻,当输出电压在10V以内变化时,输出电流值的变化与输出电流值的大小比较如下,满足设计的要求,并且电流值变化很小,达到了很高的精度,下表为输出电流是200mA 时测量值:表5.2 改变负载测试次数123456单位电阻值123456测量值0.2040.4080.6150.8201.0301.242V电流值0.2040.2040.2050.2050.2060.207A符合指标要求。5.2纹波系数测试5.2.1 纹波电流测试本设计要求纹波电流小于2mA,根据恒流源模块电路,用低频交流毫伏表测采样电阻(康铜丝绕制而成,由于该电路为直流电路没交流成分,所以不会产生感抗)两端的电压,通过公式:纹波电流(Iw) = 纹波电压(Uw)/采样电阻(1欧),通过测试,列表如下:表5.3 纹波系数测量电流值(mA)交流毫伏表读数(mv)示波器读数(Vpp)(mV)2000.040.065000.120.1410000.300.3915000.350.4820000.600.635.2.2 纹波系数测试 由于电源电路存在纹波系数,必须尽量减小纹波系数,本设计采用措施有:电源大面积共地(注意大电流与小电流不能共地)。在整流桥后加大电容滤波,本设计采用约为4700。6 数据处理6.1采样电阻测试电路中需要1欧的大功率电阻,本设计用HZ2790型的LCR数字电桥测量大功率电阻的阻值,该仪器短路电阻为0.056欧,加上绕线电阻后电阻值为1.056欧,误差为0.001欧,精度为0.001。6.2 误差测试下面列出部分电流值及其对应的理论和实际的数字量,其中对应码值为输入电流对应数模转换所需要的码值,实际码值为单片机根据输入电流值处理后送到数模转换器的码值如表5.1所示。表6.1 误差测试表输入电流值(mA)实际电流值(mA)误差(mA)10241032851251752562582通过测试发现,结果的最大误差为当输入电流为1024mA时,误差为8mA.小于输出电流的1%,1024mAx1%=10.24mA而题目中发挥部分要求输出电流变化的绝对值输出电流的1%+10mA,即20.24mA,而本设计测量出来的误差值小于规定的误差值。7 发挥与创新(1)输出电流范围为20mA2000mA,步进1mA、10mA、100mA、1000mA,功能比发挥部分功能更优越;(2)具有测试与显示输出电流的数字显示表,测量误差的绝对值测量值的1+2个字,达到发挥部分要求;(3)改变负载电阻,输出电压在10V以内变化时,要求输出电流变化的绝对值输出电流值的1+10mA;(4)纹波电流达到规定要求小于2mA;8 结论在设计制作数控直流恒流源的过程中,我们深切体会到,理论与实践相结合的极端重要性。本系统的研制主要应用到了模拟电子技术、数字电子技术、单片机控制技术、大功率电源设计、等多方面的知识,所设计的基于单片机程序控制的压控恒流源,达到了题目要求,同时也使我们的动手能力和电子设计能力得到了极大锻炼。系统输出实际测试结果表明,本系统输出电流稳定,不随负载和环境温度变化,并具有很高的精度,输出电流误差范围10mA,输出电流可在20mA2000mA范围内任意设定,因而可实际应用于需要高稳定度小功率恒流等领域。本次设计,为我们提供了展示自我能力的舞台,也使我深切认识到自身知识能力尚存在许多不足,更让我体会到了电子技术与设计的趣味。 参 考 文 献1孙涵芳,徐爱卿.MCS-51/96系列单片机原理及应用.北京:北京航空航天大学出版社(修订版,2003)。2黄智伟.全国大学生电子设计竞赛训练教程.北京:电子工业出版社,20053张力科,单片机典型模块设计实例导航.人民邮电出版社,2004致谢本人在撰写论文的过程中,得到覃晓老师的悉心指导,在此向他深表谢意!同时在制作、调试电路板的过程中得到了周围同学的帮助,使硬件能够正常工作,在此也对他们表示由衷的感谢。 附录/包含所需头文件#include #include #define F_CPU 8000000UL#include #include max538.h#include HD44780.h/*-宏定义-*/#define ucharunsigned char#define uintunsigned int#define BIT(x)(1(x)#define NOP()asm(nop)#define WDR() asm(wdr)volatile unsigned long Current_value=20 ;volatile unsigned char Set_flag =1 ;volatile unsigned long Current_step =1 ;volatile unsigned char Current_new =1 ; volatile unsigned int key_set , key_step_inc, key_step_dec;/端口初始化void port_init(void) PORTA = 0x00; DDRA = 0x0F; PORTB = 0xFF; DDRB = 0xFF; PORTC = 0xff; DDRC = 0xff; PORTD = 0xEC; DDRD = 0x13;/定时器T0初始化void timer0_init(void)TCCR0 = 0x00;/停止定时器TCNT0 = 0x3D;/初始值TIMSK |= 0x01;/中断允许TCCR0 = 0x05;/启动定时器/T0溢出中断服务程序/#pragma interrupt_handler timer0_ovf_isr:10/void timer0_ovf_isr(void)SIGNAL(SIG_OVERFLOW0) TCNT0 = 0x3D; if(PIND&(1PD6)=0) key_step_inc+; /PORTB|= (10); /_delay_us(100); /PORTB&=(10); /PORTC=(13); if(PIND&(1PD5)=0) key_step_dec+; /PORTB|= (10); /_delay_us(100); /PORTB&=(10); /PORTC=(13); if(PIND&(1PD3)=0) key_set+ ; /PORTB|= (10); /_delay_us(100); /PORTB&=(10); /PORTC=(10) key_step_inc-; if(key_step_dec0) key_step_dec-; if(key_set0) key_set-; */外中断初始化void int_init(void)MCUCR |= 0x02;MCUCSR|= 0x00;GICR |= 0x40;/外中断0服务程序/#pragma interrupt_handler int0_isr:2/void int0_isr(void)SIGNAL(SIG_INTERRUPT0)/外中断0 PORTB|= (10); _delay_ms(5); PORTB&=(1=(unsigned int)10)&(Current_value-Current_step)=(unsigned long)2000) Current_value=Current_value-Current_step; Current_new=1; /PORTC=(13); else /if(PIND&0x01)=0x00) if(Current_value+Current_step)=(unsigned int)2000) Current_value=Current_value+Current_step; Current_new=1; /PORTC=(15 ) Current_new=1; key_set=0; if(Current_step=1) Current_step=10; else if(Current_step=10) Current_step=100; else if(Current_step=100) Current_step=1000; else if(Current_step=1000) Current_step=1; delay_nms(100); if(key_step_inc5) Current_new=1; key_step_inc=0; if(Current_value+Current_step)=(unsigned int)2000) Current_value=Current_value+Current_step; Current_new=1; /PORTC=(15) Current_new =1; key_step_dec=0; if(Current_value-Current_step)=(unsigned int)10)&(Current_value-Current_step)=(unsigned long)2000) Current_value=Current_value-Current_step; Current_new=1; /PORTC=(13); delay_nms(100); if(Current_new=1) Current_new=0; LCD_write_string(1,0,Current Source); Display_Current (4,1, Current_value ); Write_MAX538 (int)(double)Current_value*1.638) ); return 0;#ifndef HD44780_H#define HD44780_H/定义MCU与LCD的接口#define LCD_EN_PORT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蜜饯产品策划方案
- 钼矿地下开采建设项目技术方案
- 2025年甘肃省定西市漳县大草滩镇卫生院招聘乡村医生备考考试题库及答案解析
- 污水处理厂及配套管网项目运营管理方案
- 2025江苏扬州市鉴真佛教学院招聘1人备考笔试试题及答案解析
- 2025湖北铁道运输职业学院(武汉铁路技师学院)专项招聘20人模拟笔试试题及答案解析
- 2025山西晋中师范高等专科学校招聘博士研究生3人备考笔试试题及答案解析
- 加速康复护理在妇科手术中的应用
- 2025辽宁沈阳盛京金控集团有限公司所属二级企业沈阳数据集团有限公司招聘备考笔试题库及答案解析
- 2025都兰腾飞投资发展有限责任公司招聘3人参考笔试题库及答案解析
- 2025年煤矿安全规程培训讲义
- 万科-建筑方案设计任务书
- GB/T 46483-2025信息技术客服型虚拟数字人通用技术要求
- 工业高质量数据集研究报告 2025 中国工业互联网研究院
- 2024河南文物局所属事业单位招聘考试真题
- 2025华能云南滇东能源有限责任公司拟录用应届毕业生情况笔试历年参考题库附带答案详解(3卷合一)
- DB64∕T 1948-2023 智慧旅游景区建设指南
- 民事合同协议模板5篇(3篇)
- 2025年抗菌药物临床应用考试题用答案
- 子宫内膜异位症相关疼痛的诊治及管理
- 唐诗宋词课件
评论
0/150
提交评论