水温控制课程总结-基于STC90C516水温控制系统设计.doc_第1页
水温控制课程总结-基于STC90C516水温控制系统设计.doc_第2页
水温控制课程总结-基于STC90C516水温控制系统设计.doc_第3页
水温控制课程总结-基于STC90C516水温控制系统设计.doc_第4页
水温控制课程总结-基于STC90C516水温控制系统设计.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

水温控制课程总结水温控制课程总结 题目:基于题目:基于 STC90C516STC90C516 水温控制系统设计水温控制系统设计 学院:电子工程学院学院:电子工程学院 专业:电子信息工程专业:电子信息工程 年年 级:级: 2012 级级 指导教师:指导教师: 成成 员:员: 20152015 年年 0505 月月 摘摘 要要 本设计采用的主控芯片是 STC90C516 单片机,数字温度传感器 DS18B20。 本设计用数字传感器 DS18B20 测量温度,测量精度高,传感器体积小,使用方 便。所以本次设计的数字温度计在工业、农业、日常生活中都有广泛的应用。 单片机技术已经广泛应用社会生活的各个领域,已经成为一种非常实用的 技术。51 单片机是最常用的一种单片机,而且在高校中都以 51 单片机教材为 蓝本,这使得 51 单片机成为初学单片机技术人员的首选。本次设计采用的 STC90C516 是一种 flash 型单片机,可以直接在线编程,向单片机中写程序变 得更加容易。本次设计的数字温度计采用的是 DS18B20 数字温度传感器, DS18B20 是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特 优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简 单、可靠。 本设计根据设计要求,首先设计了硬件电路,然后绘制软件流程图及编写 程序。本设计属于一种多功能温度计,温度测量范围是-55到 125。温度值 的分辨率可以被用户设定为 9-12 位,可以设置上下限报警温度,当温度不在 设定的范围内时,就会启动报警程序报警。本设计的显示模块是用四位一体的 数码管动态扫描显示实现的。在显示实时测量温度的模式下还可以通过查询按 键查看设定的上下限报警温度。 关键词:单片机、数字温度计、DS18B20、STC90C516 目目 录录 1.1.系统总体方案及硬件设计系统总体方案及硬件设计33 1.11.1 设计要求设计要求33 1.21.2 各模块选择与论证各模块选择与论证33 2.2.系统的硬件设计与实现系统的硬件设计与实现66 2.12.1 系统系统总体设计框图总体设计框图66 2.22.2 系统硬件概述系统硬件概述66 2.32.3 主要单元电路的设计主要单元电路的设计77 3.3.软件设计软件设计1414 3.13.1 DS18B20DS18B20 程序设计程序设计1414 3.23.2 显示程序设计显示程序设计1818 3.3 按键程序设计按键程序设计1919 4.4.系统测试系统测试2020 4.14.1 硬件测试硬件测试2020 4.24.2 软件测试软件测试2020 4.34.3 测试结果结论测试结果结论2020 5.5.设计体会设计体会2121 参参考文献考文献2222 附录附录 1:原理图和实物图:原理图和实物图2323 附录附录 2:程序:程序2929 1.1.系统总体方案及硬件设计系统总体方案及硬件设计 1.11.1 设计要求:设计要求: ()基本要求()基本要求 具有实时获取水温功能; 能够自动判断实际温度是否达到限值,并自动报警控制继电器; ( ( 2 2 ) ) 创新要求创新要求 用户能够通过按键根据自己情况设置限值并保存起来; 1.21.2 各模块各模块选择与论证选择与论证 1.2.11.2.1 控制模块控制模块 本设计采用 STC90C516 芯片作为硬件核心,该芯片采用 Flash ROM,内部 具有 8KB ROM 存储空间,相对于本设计而言程序存储空间完全够用。89C52 是 INTEL 公司 MCS-51 系列单片机中基本的产品,它采用 ATMEL 公司可靠的 CMOS 工艺技术制造的高性能 8 位单片机,属于标准的 MCS-51 的 HCMOS 产品。它结 合了 CMOS 的高速和高密度技术及 CMOS 的低功耗特征,它基于标准的 MCS-51 单片机体系结构和指令系统,属于 89C51 增强型单片机版本,集成了时钟输出 和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。89C52 内置 8 位中央处理单元、512 字节内部数据存储器 RAM、8k 片内程序存储器 (ROM)32 个双向输入/输出(I/O)口、3 个 16 位定时/计数器和 5 个两级中断 结构,一个全双工串行通信口,片内时钟振荡电路。此外,89C52 还可工作于 低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结 CPU 而 RAM 定时器、串行口和中断系统维持其功能。掉电模式下,保存 RAM 数据,时 钟振荡停止,同时停止芯片内其它功能。STC90C516 有 PDIP(40pin)和 PLCC(44pin)两种封装形式。 1.2.2.1.2.2.显示模块的选择与论证显示模块的选择与论证 方案一: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成, 对于显示文字比较合适,如采用在显示数字显得太浪费,成本较高,所以不采 用该方案。 方案二: 采用 LED 数码管动态扫描显示,LED 数码管价格适中,而却对于显示数字 比较合适,控制方式简单,电路只需添加一个三极管驱动电路就可以实现显示。 方案三: 采用 LCD1602 液晶显示屏,液晶显示功能强大,可以显示 2*16 个字母或 数字或者自定义字符,价格也比较合理,需要的接口只需要 9 根就可以完成。 成本相对比较高,对于本设计显示内容的不多采用该方案显得有点大材小用。 因此综合上述最终决定采用数码管动态扫描方式作为显示。 1.2.3.1.2.3.温度传感器模块选择与论证温度传感器模块选择与论证 方案一: 使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压, 利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值, 并进行 A/D 转换。此设计方案需用 A/D 转换电路,增加硬件成本而且热敏电 阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。 方案二: 采用模拟温度传感器 AD590,该传感器的输出电流会随温度的变化而变 化,从而需要设计电路转换成电压的变化,进而通过 A/D 转换后接到单片机中, 这种方法固然麻烦,而却费用比较高,而却在电流电压转换和 A/D 转换中会产 生误差。 方案三: 采用数字式防水型温度传感器 DS18B20,此类传感器为数字式传感器而且 仅需要一条数据线进行数据传输,易于与单片机连接,可以去除 A/D 模块,降 低硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高、测 量范围广等优点。 所以最终我们采用数字防水型 DS18B20 作为温度采集芯片。 1.2.41.2.4 编程语言的选择和论证编程语言的选择和论证 对于指令系统兼容 MCS51 系列的单片机,其较为常用的编程语言有 C 和汇 编语言。 C 语言是一种结构化编程语言,可产生压缩代码。C 语言在硬件结构上仅 要求对单片机存储器等硬件结构有初步了解,寄存器分配,不同存储器寻址及 数据类型等细节可由编译器管理。C 语言程序本身并不依赖于机器硬件系统, 基本上不做修改就可以在不同种类的单片机之间相互移植。程序可划分为不同 函数,结构规范,可读性强。C 语言提供的库包含许多标准子程序,具有很强 的数据处理能力。C 语言作为一种方便、容易掌握的语言得到了广泛的应用, 是目前单片机编程中应用最多的语言之一。 汇编语言同样在单片机编程中得 到了广泛的应用,其具有简单实用,控制灵活,实时性强,程序效率高等特点。 汇编语言有着极强的硬件控制能力,用其它的高级语言所无法控制的软硬件细 节,在汇编语言中都可以实现,但是编程复杂。综合考虑,软件的设计语言选 择 C 语言。 1.2.51.2.5 调节模块介绍调节模块介绍 调节模块是由四个按键接地后直接接单片机的 I/O 口完成的。当按键没有 按下时单片机管脚相当于悬空,默认下为高电平,当按键按下时相当于把单片 机的管脚直接接地,此时为低电平。程序设计为低电平触发。 1.2.51.2.5 继电器模块介绍继电器模块介绍 继电器模块是由由一个 NPN 型的三极管 8550 驱动。当输入低电平时三极 管导通,继电器吸合,从而控制外围器件。 1.2.61.2.6 报警模块介绍报警模块介绍 报警模块是由一个 NPN 型的三极管 8550 驱动的 5V 蜂鸣器,和一个加一限 流电阻的发光二极管组成的。报警时蜂鸣器间歇性报警,发光二极管闪烁。 2.2.系统的硬件设计与实现系统的硬件设计与实现 2.12.1 系统系统总体设计框图总体设计框图 由于 DS18B20 数字温度传感器具有单总线的独特优点,可以使用户轻松地 组建起传感器网络,并可使多点温度测量电路变得简单、可靠,所以在该设计 中采用 DS18B20 数字温度传感器测量温度。 温度计电路设计总体设计框图如图 2-1 所示,控制器采用单片机 STC90C516,温度传感器采用 DS18B20,显示采用 4 位 LED 数码管,报警采用蜂 鸣器、LED 灯实现,按键用来设定报警上下限温度并将设置好的值保存在 STC90C516 的 EEPROM 中(具有掉电保护功能) 。 图 2-1 温度计电路总体设计框图 2.22.2 系统硬件概述系统硬件概述 本系统所设计的数字温度计采用的是 DS18B20 数字温度传感器测温, DS18B20 直接输出的就是数字信号,与传统的温度计相比,具有读数方便,测 温范围广,测温准确,上下限报警功能。其输出温度采用 LED 数码管显示,主 要用于对测温比较准确的场所。 该设计控制器使用的是 51 单片机 STC90C516,STC90C516 单片机在工控、 测量、仪器仪表中应用还是比较广泛的。测温传感器使用的是 DS18B20,DS18B20 是一种可组网的高精度数字式温度传感器,由于其具有单总 线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电 路变得简单、可靠。显示是用 4 位共阴极 LED 数码管实现温度显示,LED 数码 管的优点是显示数字比较大,查看方便。蜂鸣器用来实现当测量温度超过设定 的上下限时的报警功能。 2.32.3 主要单元电路的设计主要单元电路的设计 2.3.12.3.1 单片机主控制模块的设计单片机主控制模块的设计 STC90C516 主控芯片 数码管显示 蜂鸣器报警 LED 灯提示 DS18B20 温度 采集 按键调节限值 STC90C516 单片机为 40 引脚双列直插芯片,有四个 I/O 口 P0,P1,P2,P3, MCS-51 单片机共有 4 个 8 位的 I/O 口(P0、P1、P2、P3) ,每一条 I/O 线都能 独立地作输出或输入。 单片机的最小系统如下图所示,18 引脚和 19 引脚接时钟电路,XTAL1 接外 部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2 接外部 晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第 9 引脚为复 位输入端,接上电容,电阻及开关后够上电复位电路,20 引脚为接地端,40 引脚 为电源端. 如图-2 所示 4 12MHz 3 30pF 5 30pF 1 2 3 4 5 6 7 8 9 JP1 位位 VC C R ST VC C P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 R ST 9 P3.0 10 P3.1 11 P3.2 12 P3.3 13 P3.4 14 P3.5 15 P3.6 16 P3.7 17 XTAL2 18 XTAL1 19 GND 20 P2.0 21 P2.1 22 P2.2 23 P2.3 24 P2.4 25 P2.5 26 P2.6 27 P2.7 28 PSEN 29 ALE 30 EA/VPP 31 P0.7 32 P0.6 33 P0.5 34 P0.4 35 P0.3 36 P0.2 37 P0.1 38 P0.0 39 VC C 40 U2 STC 89C 52 TX R X SW 2 位位位位 1 10F 2 10K VC C R ST P20 a b c d e f g dp P21 P22 P23 P16 P13 P10 P34 P37 P35 图-2 主控制系统 2.2.22.2.2 DS18B20DS18B20 电路设计电路设计 如图-3 所示。采用数字式温度传感器 DS18B20,它是数字式温度传感器, 具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据 传输,使用0.7 与 DS18B20 的 I/O 口连接加一个上拉电阻,Vcc 接电源,Vss 接 地。 10K R 1 VC C P04 GND 1 I/O 2 VC C 3 Q1 DS18B 20 图-3 DS18B20 温度采集 DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能 温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并 且可根据实际要求通过简单的编程实现 912 位的数字值读数方式。DS18B20 的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通 过数据线供电,电压范围为 3.05.5v;零待机功耗;温度以 9 或 12 位二进制 数字表示;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度 (温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热 而烧毁,但不能正常工作; DS18B20 采用 3 脚 TO92 封装或 8 脚 SO 或 SOP 封装,其其封装形式如图 4 所示。 图 4 DS18B20 的封装形式 DS18B20 的 64 位 ROM 的结构开始 8 位是产品类型的编号,接着是每个器件 的惟一的序号,共有 48 位,最后 8 位是前面 56 位的 CRC 检验码,这也是多个 DS18B20 可以采用一线进行通信的原因。温度报警触发器 TH 和 TL,可通过软 件写入户报警上下限。 DS18B20 温度传感器的内部存储器还包括一个高速暂存 RAM 和一个非易失 性的可电擦除的 EEPRAM。高速暂存 RAM 的结构为 8 字节的存储器,结构如图 5 所示。 图 5 DS18B20 的高速暂存 RAM 的结构 头 2 个字节包含测得的温度信息,第 3 和第 4 字节 TH 和 TL 的拷贝是易失 的,每次上电复位时被刷新。第 5 个字节,为配置寄存器,它的内容用于确定 温度值的数字转换分辨率,DS18B20 工作时寄存器中的分辨率转换为相应精度 的温度数值,该字节各位的定义如表 2-1 所示。 表 2-1:配置寄存器 D7 D6 D5 D4 D3 D2 D1 D0 TMR1R011111 配置寄存器的低 5 位一直为 1,TM 是工作模式位,用于设置 DS18B20 在工 作模式还是在测试模式,DS18B20 出厂时该位被设置为 0,用户要去改动,R1 和 R0 决定温度转换的精度位数,来设置分辨率, “R1R0”为“00”是 9 位, “01”是 10 位, “10”是 11 位, “11”是 12 位。当 DS18B20 分辨率越高时, 所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间 权衡考虑。 高速暂存 RAM 的第 6、7、8 字节保留未用,表现为全逻辑 1。第 9 字节读 出前面所有 8 字节的 CRC 码,可用来检验数据,从而保证通信数据的正确性。 当 DS18B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值 就以 16 位带符号扩展的二进制补码形式存储在高速暂存存储器的第 1、2 字节。 单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格 式以 0.0625LSB 形式表示。 当符号位 s0 时,表示测得的温度值为正值,可以直接将二进制位转换 为十进制;当符号位 s1 时,表示测得的温度值为负值,要先将补码变成原 码,再计算十进制数值。输出的二进制数的高 5 位是符号位,最后 4 位是温度 小数点位,中间 7 位是温度整数位。表 2-2 是一部分温度值对应的二进制温度 数据。 表 2-2 DS18B20 输出的温度值 温度值二进制输出十六进制输出 +1250000 0111 1101 000007D0h +850000 0101 0101 00000550h +25.0625 0000 0001 1001 00010191h +10.1250000 0000 1010 001000A2h +0.50000 0000 0000 10000008h 00000 0000 0000 00000000h -0.51111 1111 1111 1000FFF8h -10.1251111 1111 0101 1110FF5Eh - 25.0625 1111 1110 0110 1111FF6Fh -551111 1100 1001 0000FC90h DS18B20 完成温度转换后,就把测得的温度值与 RAM 中的 TH、TL 字节内容 作比较。若 TTH 或 TTL,则将该器件内的报警标志位置位,并对主机发出 的报警搜索命令作出响应。因此,可用多只 DS18B20 同时测量温度并进行报警 搜索。在 64 位 ROM 的最高有效字节中存储有循环冗余检验码(CRC) 。主机 ROM 的前 56 位来计算 CRC 值,并和存入 DS18B20 的 CRC 值作比较,以判断主机收 到的 ROM 数据是否正确。 2.2.32.2.3 显示电路设计显示电路设计 显示电路是由四位一体的共阳数码管进行显示的,数码管由三极管 8550 驱动。 四位一体的共阳数码管的管脚分布图如图 6 所示。 图 6 四位一体的共阳数码管管脚分布图 显示电路的总体设计如图 7 所示。 W1 12 W2 9 W3 8 W4 6 a 11 b 7 c 4 d 2 e 1 f 10 g 5 dp 3 U3 a b c d e f g dpw1w2w3w4 w1 Q4 9012 1K R 4 w2 Q5 9012 1K R 5 w3 Q6 9012 1K R 6 w4 Q7 9012 1K R 7 VC C P21P22P23P20 图 7 显示电路 2.2.42.2.4 按键电路设计按键电路设计 按键电路是用来实现调节设定报警温度的上下限和查看上下报警温度的功 能。电路原理图如图 8 所示。 S3 位位 S2 位位 S1 位位位 P10P13P16 图 8 按键电路原理图 2.2.52.2.5 报警电路设计报警电路设计 报警电路是在测量温度大于上限或小于下限时提供报警功能的电路。该电 路是由一个蜂鸣器和一个红色的发光二极管组成,具体的电路如图 9 所示。 Q3 9012 VC C 10K R 3 位位位 1K R 1 VC C D1 P34 P35 图 9 报警电路原理图 2.2.62.2.6 继电器模块介绍继电器模块介绍 继电器模块是由由一个 PNP 型的三极管 9015 驱动。当输入低电平时三极 管导通,继电器吸合,从而控制外围器件。电路图如图 10 所示: Q4 9015 VC C 10K R 5 P35 K1 位位位 图 10 继电器电路图 3 3 软件设计软件设计 3.13.1 DS18B20DS18B20 程序设计程序设计 3.1.13.1.1 DS18B20DS18B20 传感器操作流程传感器操作流程 根据 DS18B20 的通讯协议,主机(单片机)控制 DS18B20 完成温度转换必 须经过三个步骤: 每一次读写之前都要对 DS18B20 进行复位操作 复位成功后发送一条 ROM 指令 最后发送 RAM 指令 这样才能对 DS18B20 进行预定的操作。复位要求主 CPU 将数据线下拉 500 s,然后释放,当 DS18B20 收到信号后等待 1660s 左右,后发出 60240 s 的存在低脉冲,主 CPU 收到此信号表示复位成功。 DS18B20 的操作流程如图 3-1 所示。 如图 3-1 DS18B20 的操作流程 3.1.23.1.2 DS18B20DS18B20 传感器的指令表传感器的指令表 DS18B20 传感器的操作指令如表 3-1 所示。传感器复位后向传感器写相应 的命令才能实现相应的功能。 表 3-1 DS18B20 的指令表 指令指 令代码 功能 读 ROM 0x3 3 读 DS1820 温度传感器 ROM 中的编码(即 64 位地址) 符合 ROM 0x5 5 发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。 搜索 ROM 0xF 0 用于确定挂接在同一总线上 DS1820 的 个数和识别 64 位 ROM 地址。为操作各器件 作好准备。 跳过 ROM 0xC C 忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。 告警 搜索命令 0xE C 执行后只有温度超过设定值上限或下限 的片子才做出响应。 温度 变换 0x4 4 启动 DS1820 进行温度转换,12 位转换 时最长为 750ms(9 位为 93.75ms)。结果存 入内部 9 字节 RAM 中。 读暂 存器 0xB E 读内部 RAM 中 9 字节的内容 写暂 存器 0x4 E 发出向内部 RAM 的 3、4 字节写上、下限 温度数据命令,紧跟该命令之后,是传送两 字节的数据。 复制 暂存器 0x4 8 将 RAM 中第 3 、4 字节的内容复制到 EEPROM 中。 重调 EEPROM 0xB 8 将 EEPROM 中内容恢复到 RAM 中的第 3 、4 字节。 读供 电方式 0xB 4 读 DS1820 的供电模式。寄生供电时 DS1820 发送“ 0 ”,外接电源供电 DS1820 发送“ 1 ”。 3.1.3 DS18B20 传感器的初始化时序 DS18B20 传感器为单总线结构器件,在读写操作之前,传感器芯片应先进 性复位操作也就是初始化操作。 DS18B20 的初始化时序如图 10 所示。首先控制器拉高数据总线,接着控制 器给数据总线一低电平,延时 480s,控制器拉高数据总线,等待传感器给数 据线一个 60-240s 的低电平,接着上拉电阻将数据线拉高,这样才初始化完 成。 图 10 DS18B20 初始化时序 3.1.4 DS18B20 传感器的读写时序 1.写时序 DS18B20 传感器的读写操作是在传感器初始化后进行的。每次操作只能读 写一位。 当主机把数据线从高电平拉至低电平,产生写时序。有两种类型的写时序 :写“0”时序,写“1”时序。所有的时序必须有最短 60s 的持续期,在各 个写周期之间必须有最短 1s 的恢复期。 在数据总线由高电平变为低电平之后,DS18B20 在 15s 至 60s 的时间 间隙对总线采样,如果为“1”则向 DS18B20 写“1”, 如果为“0”则向 DS18 B20 写“0”。如图 3-2 的上半部分。 对于主机产生写“1”时序时,数据线必须先被拉至低电平,然后被释放 ,使数据线在写时序开始之后 15s 内拉至高电平。 对于主机产生写“1”时序时,数据线必须先被拉至低电平,且至少保持 低电平 60s。 2.读时序 在数据总线由高电平变为低电平之后,数据线至少应保持低电平 1s, 来自 DS18B20 的输出的数据在下降沿 15s 后有效,所以在数据线保持低电平 1s 之后,主机将数据线拉高,等待来自 DS18B20 的数据变化,在下降沿 15 s 之后便可开始读取 DS18B20 的输出数据。整个读时序必须有最短 60s 的 持续期。如图 11 的下半部分。读时序结束后数据线由上拉电阻拉至高电平。 图 11 DS18B20 传感器的读写时序 3.1.5 DS18B20 获取温度程序流程图 DS18B20 的读字节,写字节,获取温度的程序流程图如图 12 所示。 开始 DQ=1 DQ=0 延时480s DQ=1 DQ=1 延时80s DQ=1 Y N 结束 DS18B20初始化 程序流程图 开始 d=1 i=8 return d DQ=1 DQ=1 延时60s d |= 0x80 Y N 结束 i0 d = 1 DQ=0 DQ=1 延时2s i- Y N 开始 i=8 延时60s 结束 i0 DQ=0 延时2s DQ=1 N DS18B20读字节 程序流程图 DS18B20写字节 程序流程图 DQ=d sbit led_xia = P33; sbit relay = P35; sbit buzz = P26; sbit key_set = P12; sbit key_jia = P11; sbit key_jian = P10; /*全局变量定义*/ uchar Temperature_up,Temperature_down;/存储温度上、下限值 uint set_f; /设置模式标志位 /*按键检测函数*/ void scan(void) /设置键,不支持连按 if(key_set=0) delayms(7); if(key_set=0) led_shang=1;/关闭上限报警灯 led_xia=1;/关闭下限报警灯 buzz=1;/关闭蜂鸣器 relay=1;/关闭继电器 set_f+; if(set_f=3) set_f=0; EEPROM_delete(0x2002);/擦除扇区 EEPROM_write(0x2002,Temperature_up);/写入上限值数据保存 EEPROM_delete(0x2202); /擦除扇区 EEPROM_write(0x2202,Temperature_down);/写入下限值保存 if(set_f=1) /选择设置、显示上限值 display2(Temperature_up/1000,Temperature_up%1000/100,Temperature_up%10 0/10,Temperature_up%10); if(set_f=2) /选择设置、显示下限值 display2(Temperature_down/1000,Temperature_down%1000/100,Temperature_ down%100/10,Temperature_down%10); while(!key_set);/检测按键松开 /加值键,支持连按 if(key_jia=0 if(key_jia=0 /上限自加 if(Temperature_up125) Temperature_up=125; display2(Temperature_up/1000,Temperature_up%1000/100,Temperature_up%10 0/10,Temperature_up%10);/显示 if(key_jia=0 /下限自加 if(Temperature_down125) Temperature_down=125; dis

温馨提示

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

评论

0/150

提交评论