




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理工大学《计算机控制技术》课程设计说明书摘要本系统是以AT89C52单片机作为主控芯片,采用增量式PID控制算法,实现温度测控的系统。系统温度设定采用矩阵式键盘输入,系统温度测量采用电流型温度传感器AD590,通过ADC0832采样得出温度。加热部分采用PWM驱动双向晶闸管,综合过零检测和PID算法控制加热功率。制冷通过调节陶瓷制冷片制冷功率和制冷时间达到制冷目的。通过以上几个模块的配合使用,可以实现温度的任意设定,并让烘箱内的温度和设定的温度一致,并且保持不变。关键字:温度控制、PID算法、温度传感器、DAC0832、单片机目录1设计内容及要求 11.1设计要求及指标 11.2调试及结果测试 12系统方案设计与论证 12.1系统总体方案设计 12.2主控单片机选择 22.3矩阵键盘模块设计 22.4显示模块设计 32.5温度传感器选择 32.6A/D采样芯片的选择 42.7加热方案选择 42.8制冷方案选择 43主要元器件介绍 53.1AT89C52单片机 53.2AD590温度传感器 63.3ADC0832采样芯片 63.3.1ADC0832的主要特性 73.3.2ADC0832的工作原理及时序 74硬件电路设计 84.1温度采样转换电路 84.2加热功率控制电路 94.3过零检测电路设计 115软件设计 125.1增量式PID原理与算法 125.2PID控制算法流程图 135.3系统程序流程图 156仿真与测试 166.1仿真条件说明 166.2仿真操作说明 166.3系统仿真图 177小结与体会 18参考文献 19附录 20
计算机温度测控系统1设计内容及要求1.1设计要求及指标温度指标:60~80℃之间任选;偏差:1℃。1)、每组4~5同学,每个小组根据设计室提供的设备及设计要求,设计出实际电路组成一个完整的计算机温度测控系统。2)、根据设备情况以及被控对象,选择1~2种合适的控制算法,编制程序框图和源程序,并进行实际操作和调试通过。1.2调试及结果测试在设计室,测试系统对烘箱的控制过程,1.观察温度的上升时间,2.在一段时间段(30分钟)测试观察烘箱的温度变化情况,是否达到设计的要求。3.对系统故意设置温度扰动,观察系统对恒温的恢复能力。2系统方案设计与论证2.1系统总体方案设计本系统由单片机、矩阵键盘模块、数码管显示模块、温度采集与D/A转换模块、温度加热模块、温度制冷模块组成,系统方框图如图1所示。AT89C52单片机AT89C52单片机温度加热矩阵键盘温度制冷温度制冷数码管显示温度采集与D/A转换温度采集与D/A转换图1系统方框图2.2主控单片机选择方案一:采用AT89C52单片机作为主控芯片。AT89C52单片机电源电压为5V,有两种低功耗方式:待机方式和掉电方式,最低耗电电流为3mA。AT89C52单片机I/O口资源丰富,有4组32个通用I/O,操作方便,能很好的满足题目的要求。方案二:采用MSP430F1612单片机作为主控芯片。MSP430F1612具有功耗低、硬件功能模块多、I/O口丰富,拥有独立硬件乘法器,能够满足本次设计的控制要求。综上考虑,两种单片机都能满足本次设计的控制要求,但考虑到Proteus软件对51单片机的仿真更加成熟,所以最终选择AT89C52单片机作为主控单片机。2.3矩阵键盘模块设计根据题目要求,用“+”、“-”键分别控制设定温度以1℃为步进增减,且温度可设置在60~80℃之间的任意一个值。为此,本次矩阵键盘模块功能键如图2所示:987987+确定0-321654+确定0-321654 图2矩阵键盘按键功能说明:1、“+”和“—”键分别控制设定温度以1℃为步进增减;2、数字键实现温度设置在60~80℃之间任意值,例如要是温度为75℃,只需先按“7”键,再按“5”键,最后按“确定”键即可。2.4显示模块设计本系统中主要有两部分信息需要显示:设置温度值和实际温度值。所以主要有以下两种方案可供考虑:方案一:采用1602液晶作为显示模块。1602液晶可以显示两行字符,每行最多可以显示16个字符,画面较清晰。方案二:采用七段数码管作为显示模块。七段数码管由七个LED灯组成,对七个LED灯进行编码显示数字信息,控制位选和段选让不同的数码管显示,显示清洗明了。综上所述,两种方案均可完成显示任务,考虑到在proteus软件中数码管显示更加清洗,所以本次设计采用数码管显示。2.5温度传感器选择 方案一:采用温度传感器AD590K。AD590K具有较高精度和重复性,良好的非线性保证±0.1℃的测量精度。加上软件非线性补偿可以实现高精度测量。AD590将温度转化为电流信号,因此要加相应的调理电路,将电流信号转化为电压信号。送入12为A/D转换器,可以获得4096方案二:采用数字温度传感器DS18B20。DS18B20为数字式温度传感器,无需其他外加电路,直接输出数字量。可直接与单片机通信,读取测温数据,电路简单。综上所述,温度传感器AD590K精度相较于DS18B20来说,测温范围大,精度高,在实际应用中,DS18B20温漂较大,虽然电路简单,但性能稍差,故选择方案一。2.6A/D采样芯片的选择方案一:选用ADC0809采样。ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器,数据并行传输。转换时间为100μs(时钟为640kHz时),模拟输入电压范围0~5V,不需零点和满刻度校准,工作温度范围为-40~+85摄氏度。由于其数据位并行传输,比较耗费I/O口。方案二:选用ADC0832采样。ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片,数据串行传输。输入输出电平与TTL/CMOS相兼容,5V电源供电时输入电压在0~5V之间,工作频率为250KHZ,转换时间为32μS,一般功耗仅为15mW。由于其串行传输方式比较节约I/O口,故本次设计选用方案二。2.7加热方案选择方案一:直接将220V交流电加在电热丝上加热,加热功率大,响应快,但是无法调节功率,会造成较大的超调量。方案二:将双向晶闸管BTA12与电热丝串联接在220V交流电上,配合过零检测电路,可以调整加热功率,既能调整响应速度,又能调整超调量,个选用方案二。2.8制冷方案选择方案一:采用风扇制冷。当温度高于设定值是启动风扇,加速水汽蒸发和热交换降温。 方案二:选用半导体陶瓷制冷片。陶瓷制冷片能够将电能转换为热能,其工作特点是一面发热一面制冷,加速热交换,达到制冷的效果。 综合题目要求,方案二更能满足要求,故选择方案二。3主要元器件介绍3.1AT89C52单片机AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。其主要用于会聚调整时的功能控制。功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。\o"查看图片"图3AT89C52PDIP封装芯片3.2AD590温度传感器AD590是美国ANALOGDEVICES公司的单片集成两端感温电流源,其输出电流与绝对温度成比例。在4V至30V电源电压范围内,该器件可充当一个高阻抗、恒流调节器,调节系数为1µA/K。片内薄膜电阻经过激光调整,可用于校准器件,使该器件在298.2K(25°C)时输出298.2µA电流。主要特性:(1)流过器件的电流(μA)等于器件所处环境的热力学温度(开尔文)度数:Ir/T=1(1)式中,Ir—流过器件(AD590)的电流,单位为μA;T—热力学温度,单位为K;(2)AD590的测温范围为-55℃~+150℃;(3)AD590的电源电压范围为4~30V,可以承受44V正向电压和20V反向电压,因而器件即使反接也不会被损坏;(4)输出电阻为710mΩ;(5)精度高,AD590在-55℃~+-150℃范围内,非线性误差仅为±0.3℃。AD590的输出电流说明如下:其输出电流是以绝对温度零度(-273℃)为基准,每增加1℃,它会增加1μA输出电流,因此在室温25℃时,其输出电流Iout=(273+25)=298μA。图4AD590的引脚图和连接图3.3ADC0832采样芯片3.3.1ADC0832的主要特性ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。由于它体积小,兼容性,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。其主要特性为:8位分辨率,双通道A/D转换,输入输出电平与TTL/CMOS相兼容,5V电源供电时输入电压在0~5V之间,工作频率为250KHZ,转换时间为32μS,一般功耗仅为15mW,8P、14P—DIP(双列直插)、PICC多种封装,商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为−40°Cto+85°C。图5ADC0832的引脚图3.3.2ADC0832的工作原理及时序正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能。图6ADC0832的连接图图7ADC0832的工作时序4硬件电路设计4.1温度采样转换电路AD590是电流型单片集成温度传感器,测量范围在-55℃到+150℃,工作电压在4V至30V,灵敏度为1μA/℃。温度采样转换点电路的关键在于把AD590的电流信号精确地转换为ADC能够采集的电压。系统才用了精准参考源与AD590的信号作差动放大的方式,其原理图如图1所示。图8温度采样转换电路原理图图中,AD590的电流信号经过10K电阻转换为电压信号,通过电压跟随到放大正向输入端;电压基准源的REF02输出电压通过滑动变阻器分压跟随到运算放大器的反向输入端,最终可也得到输出的电压信号为:(1)其中:为基准电压源的分压比电路中,采用精密电阻,提高精度。有两个因变量:温度信号和基准源分压比K。由此,就可以通过调节K的值来调节输出电压,已达到满足AD转换的电压范围。4.2加热功率控制电路加热功率调节是通过控制双向晶闸管开断来调节加热电压或者调节加热功率来实现的。首先分析加热电路的实现,然后分析如何开关晶闸管来调节功率。晶闸管开关控制电路图2所示。图9晶闸管控制电路如图9所示,CTR为单片机输入的控制信号,通过光耦MOC3021与加热的高压模拟电路隔离开来,当CTR为高电平时,晶闸管控制端G与220V电网导通,晶闸管导通,反之,晶闸管关闭。从而实现晶闸管的开关可控。电路中,加热负载加热管为感性负载,R15和C4为用来改善其功率因素。 功率调整可以用PWM波切市电正弦波达到目的。其中,有两种切法,其一是在一个周期内切断正弦波,其二是按整数个周期切断。在一个周期里切割正弦波,改变加热电压,电压变化使得加热功率改变。整数个周期切割正弦波,不改变电压,但是改变了平均做功时间,从宏观上同样改变了做功功率。两种调节功率的方式下图所示。图10调节电压功率调节法 如图10所示,调节电压是在市电正弦波一个周期波形里,PWM为高的是后导通,为低的时候关断,从宏观上看,平均电压和导通的时间成正比关系,从而可以通过调节导通时间调节平均电压来调节加热功率。图11调节做功时间功率调节法如图11所示为整个数周期切割市电正弦波调节功率的示意图。从图可以看出,加热做功的时间比列可以通过PWM调节导通时间来控制,导通时间比例越大,宏观上做功功率越高。在系统中,方案一软件实现只需要过零检测触发频率为50Hz的PWM波形来控制即可,方案二需要多次计算过零检测来计算PWM的频率和占空比,显然方案一比方案二在软件上容易实现,而起响应更为迅速,故本系统选择了方案一。4.3过零检测电路设计过零检测电路的目的是检测市电的相位角为Kπ的时间点。从图3和图4可以看出,只有在市电相位角在Kπ是触发PWM控制晶闸管的开断,才能使PWM波切断市电正弦波的图形使确定的,换句话说就是才能确定功率调节是确定的。过零检测电路如图12所示图12过零检测电路过零检测电路首先把市电通过220V-6V的变压器吧电压降到6以便于检测。电路中,当市电波形在正半周时,二极管D3截止,D1导通,电压经过整流滤波稳压到5V供给光耦发光端正极,三极管因正半周电压提供偏执电压导通,光耦另一端输出被拉低;当市电波形在负半周时,D12截止,D3导通,电流经D3、R5回路回到变压器,光耦发光端正极电压为零,光耦另一端不导通,输出为高。由此构成过零检测。其仿真波形如下图。图13过零检测仿真波形图5软件设计5.1增量式PID原理与算法本温度控制系统采用数字PID控制算法。所谓PID控制就是按设定值与测量值之间的偏差的比例、偏差的积累和偏差的变化趋势进行控制。 图14PID算法原理图经典的数字PID算子如下:(2) 其中,为比例系数,为积分常数,为微分常数。增量PID算法的优点是编程简单,数据可以递推使用,占用存储空间少,运算快。当扰动较大或者给定的温度值大幅度变化时,由于产生较大的偏差,加上温控本身的惯性及滞后,在积分作用下,系统往往产生较大的超调和长时间的振荡。为克服这种不良的影响,采用积分分离法对增量PID算法进行改进,当偏差e(x)较大时,暂时取消积分作用;当偏差e(x)小于某一设定值M时,才将积分作用投入。采用试凑法进行PID参数的整定,因为温度有滞后与惯性,首先调整比例系数KP由小变大,观察响应,此时,系统静差无法满足题目要求,故又调整KI,由此减小静差。但动态过程较慢,增大KD,同时改变KP,KI,逐步凑试,最后达到题目要求的效果。5.2PID控制算法流程图采用PID控制算法,计算输出的PWM占空比,控制导通时间,从而调节加热器输出的。系统的PID控制算法流程图如图15所示。在传统的PID算法中,进行了改进,水温控制系统式一个具有很大滞后性的系统,在积分项的作用下容易产生超调。采用了积分分离,当偏差e(k)较大时,取消积分作用;当偏差e(k)较小时,投入积分作用。图15PID控制算法流程图5.3系统程序流程图开始开始系统初始化系统初始化检测是否有按键按下 检测是否有按键按下 数字键按下+键数字键按下+键按下—键按下 检测按下的键是否是数字键检测按下的键是否是数字键设定值加1设定值加1设定值减1 预置值按设定值变化预置值按设定值变化 数码管显示设定值数码管显示设定值读取读取AD采样值比较设定值和采样值得大小比较设定值和采样值得大小调用PID调用PID算法获得输出值调节PWM调节PWM输出的占空比图16系统程序流程图6仿真与测试6.1仿真条件说明1)由于本次题目需要做仿真,所以本次设计主要是在proteus软件中完成。2)由于proteus软件中没有AD590温度传感器,无法动态检测温度模拟量的变化,故仿真电路中采用调节可调电阻,采样可调电阻输出端电压的方法来模拟温度的变化。如图17所示图17温度变化模拟图3)因为proteus中很难找到类似电热丝和陶瓷散热片的物体,无法动态模拟通过改变输出占空比而使温度发生变化的过程,故仿真电路中使用发光体代替电热丝加热,使用电扇代替陶瓷散热片散热。6.2仿真操作说明1)通过矩阵键盘输入设定值,输入方法参照2.3节,观察数码管上左边显示的数值是否与输入值一致。2)观察数码管右边显示的实测温度值,调节滑动变阻器,实测值变化。3)比较设定值和实测值得大小,当设定值比实测值大时,发光体发光,表明此时在加热,温度升高;反之,当设定值比实测值小时,启动风扇,表明此时在散热,温度降低6.3系统仿真图图18系统仿真图7小结与体会这次课程设计让我明白了很多关于计算机控制技术和单片机方面的知识,尤其是在书本中介绍不完全的。要完成这次课程设计,仅仅靠书本知识是远远不够的,所以我查阅了很多关于计算机控制和单片机的书籍,并且也通过网络查到了很多有关计算机控制技术的知识。对于课程设计的内容,首先要做的应是对设计内容的理论理解,在理论充分理解的基础上,才能做好课程设计,才能设计出性能良好的电路。这次的课程设计是我设计时间最长的一次,也是收获最大的一次。刚拿到题目时感觉很简单,但做的过程中困难重重,如仿真时ADC0832的调试和数码管的显示等,这次课程设计使我明白了理论与实践之间的差距和联系。另外通过这次课程设计,我对文档的编排也有了一定的掌握,这对于以后的毕业设计及工作需要都有很大的帮助,在完成课程设计的同时我也在复习一遍计算机控制技术这门课程,把以前很多没学懂的问题都学懂学透了。所以课程设计是理论知识的升华。整个课程设计过程中,有一些不足之处,在此感谢老师和同学的帮助,我将在以后的课程设计中逐步改善和提高。参考文献[1]于海生.计算机控制技术.北京:机械工业出版社,2007[2]王万良.自动控制原理.北京:高等教育出版社,2008[3]彭虎.微机原理与接口技术.北京:电子工业出版社,2008[4]林敏.计算机控制技术及工程应用.北京:国防工业出版社,2005[5]姜学军.计算机控制技术.北京:清华大学出版社,2009[6]张燕红.计算机控制技术.南京:东南大学出版社,2009[7]温希东.计算机控制技术.西安:西安电子科技大学出版社.2008[8]顾徳英.计算机控制技术.北京:北京邮电大学出版社.2009附录源程序:#include<reg51.H>#include"intrins.h"#defineuintunsignedint#defineucharunsignedchar//ADC0832的引脚sbitADCS=P3^5;//ADC0832chipseclectsbitADDI=P3^7;//ADC0832kinsbitADDO=P3^7;//ADC0832koutsbitADCLK=P3^6;//ADC0832clocksignalsbitjia_temp=P3^0;sbitjian_temp=P3^1;unsignedchardispbitcode[8]={0x08,0x04,0x02,0x01,0x80,0x40,0x20,0x10};//位扫描unsignedchardispcode[13]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0x89,0xc7};//共阳数码管字段码unsignedchardispbuf[8];uchargetdata;//获取ADC转换回来的值uchartemp,count=0,SetValue=0,getvalue=0,Flag_key=0,keyvalue=0,wh1=1;/****************************************************函数功能:延时函数**入口参数:输入时间值**返回:无**备注:无***************************************************/voiddelay(uintz) { uintx,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}/****************************************************函数功能:延时函数**入口参数:输入时间值**返回:无**备注:无***************************************************/voiddelay_1ms(void)//12mhzdelay1.01ms{unsignedcharx,y;x=3;while(x--){y=40;while(y--);}}/****************************************************函数功能:读ADC0832函数**入口参数:模拟输入通道号**返回:转换为数字的模拟量**备注:无***************************************************/unsignedintAdc0832(unsignedcharchannel)//AD转换,返回结果{uchari=0;ucharj;uintdat=0;ucharndat=0;if(channel==0)channel=2;if(channel==1)channel=3;ADDI=1;_nop_();///未作任何操作的延时_nop_();ADCS=0;//拉低CS端_nop_();_nop_();ADCLK=1;//拉高CLK端_nop_();_nop_();ADCLK=0;//拉低CLK端,形成下降沿1_nop_();_nop_();ADCLK=1;//拉高CLK端ADDI=channel&0x1;_nop_();_nop_();ADCLK=0;//拉低CLK端,形成下降沿2_nop_();_nop_();ADCLK=1;//拉高CLK端ADDI=(channel>>1)&0x1;_nop_();_nop_();ADCLK=0;//拉低CLK端,形成下降沿3ADDI=1;//控制命令结束_nop_();_nop_();dat=0;for(i=0;i<8;i++){dat|=ADDO;//收数据ADCLK=1;_nop_();_nop_();ADCLK=0;//形成一次时钟脉冲_nop_();_nop_();dat<<=1;if(i==7)dat|=ADDO;}for(i=0;i<8;i++){j=0;j=j|ADDO;//收数据ADCLK=1;_nop_();_nop_();ADCLK=0;//形成一次时钟脉冲_nop_();_nop_();j=j<<7;ndat=ndat|j;if(i<7)ndat>>=1;}ADCS=1;//拉低CS端ADCLK=0;//拉低CLK端ADDO=1;//拉高数据端,回到初始状态dat<<=8;dat|=ndat;return(dat);//returnadk}/*********************************显示AD转换的函数***************************/voiddisp_0832(void){ floatvary; inttemp; chark; getdata=Adc0832(0); vary=((float)getdata/256)*5; temp=(int)(vary*2000); getvalue=temp/100; dispbuf[7]=temp/1000; //取电压值十位 dispbuf[6]=(temp%1000)/100; //取电压值个位 dispbuf[5]=(temp%100)/10; //取压力值十分位 dispbuf[4]=10; //取压力值百分位 for(k=4;k<8;k++) { P2=dispbitcode[k]; P0=dispcode[dispbuf[k]]; if(k==6) //加上数码管的dp小数点 P0&=0x7f; delay_1ms(); }}/*********************************键盘扫描函数***************************/ucharkeyscan(void){ uchartemp=0,Flag_key=0; P1=0XFE; temp=P1; temp&=0xf0; if(temp!=0xf0) { delay(5); P1=0XFE; temp=P1; temp&=0xf0; if(temp!=0xf0) { Flag_key=1; count++; temp=P1; switch(temp) { case0xee: { keyvalue=7; break; } case0xde: { keyvalue=8; break; } case0xbe: { keyvalue=9; break; } case0x7e: { keyvalue=15; break; } } } } while(temp!=0xf0) { P1=0XFE; temp=P1; temp&=0xf0; } P1=0XFd; temp=P1; temp&=0xf0; if(temp!=0xf0) { delay(5); P1=0XFd; temp=P1; temp&=0xf0; if(temp!=0xf0) { Flag_key=1; count++; temp=P1; switch(temp) { case0xed: { keyvalue=4; break; } case0xdd: { keyvalue=5; break; } case0xbd: { keyvalue=6; break; } case0x7d: { keyvalue=14; break; } } } } while(temp!=0xf0) { P1=0XFd; temp=P1; temp&=0xf0; } P1=0XFb; temp=P1; temp&=0xf0; if(temp!=0xf0) { delay(5); P1=0XFb; temp=P1; temp&=0xf0; if(temp!=0xf0) { Flag_key=1; count++; temp=P1; switch(temp) { case0xeb: { keyvalue=1; break; } case0xdb: { keyvalue=2; break; } case0xbb: { keyvalue=3; break; } case0x7b: { keyvalue=13; break; } } } } while(temp!=0xf0) { P1=0XFb; temp=P1; temp&=0xf0; } P1=0XF7; temp=P1; temp&=0xf0; if(temp!=0xf0) { delay(5); P1=0XF7; temp=P1; temp&=0xf0; if(temp!=0xf0) { Flag_key=1; count++; temp=P1; switch(temp) { case0xe7: { keyvalue=10; break; } case0xd7: { keyvalue=0; break; } case0xb7: { keyvalue=11; break; } case0x77: { keyvalue=12; break; } } } } while(temp!=0xf0) { P1=0XF7; temp=P1; temp&=0xf0; } returnkeyvalue;}/*********************************显示设定值的函数***************************/voiddisp_setvalue(ucharval){chark; dispbuf[0]=10; //灭0处理 dispbuf[3]=val/10; //取电压值十位 dispbuf[2]=val%10; //取压力值个位 dispbuf[1]=0; //百分位置0 for(k=0;k<4;k++) { P2=dispbitcode[k]; P0=dispcode[dispbuf[k]]; if(k==2) //加上数码管的dp小数点 P0&=0x7f; delay_1ms(); } }/********************
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 影像制作外包协议
- 新媒体合作保证金协议
- 离职后信息保留协议
- 七年级信息技术 算法基础知识教学设计 青岛版
- 房屋建造劳务合同模板
- 工会会员资格协议
- 七年级生物上册 第三单元 生物圈中的绿色植物 第二章 被子植物的一生 第三节 开花和结果教学设计 (新版)新人教版
- 统计师考试模拟题及答案解析
- 七年级历史下册 第一单元 隋唐时期繁荣与开放的时代 第3课 盛唐气象教学设计1 新人教版
- 深入探索农业职业经理人考试中的团队合作与沟通技巧试题及答案
- 软件详细设计说明书(例)
- 钢拱桥专项吊装方案终稿
- 24式太极拳教案(1~4课)
- 哈萨克斯坦铁路车站代码
- 产业经济学的课后复习答案
- 中国绿色经济发展之路(PPT-37张)课件
- 客房控制系统——RCU系统培训PPT通用通用课件
- 履带式液压挖掘机挖掘机构设计
- 川崎病诊治指南最新ppt课件
- (会议纪要(2011)第29期)河南煤业化工集团有限责任公司会议纪要
- 原子吸收分光光度计检定规程
评论
0/150
提交评论