基于ds18b20的温度采集显示系统的设计(编辑修改稿)内容摘要:

温度值转换为数字,速度更快 ; ( 8)测量结果直接输出数字温度信号,以 一线总线 串行传送给 CPU,同时可传送CRC 校验码,具有极强的抗干扰纠错能力 ; ( 9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。 DS18B20 的 测温流程 斜率累加器 预置 比较 计数器 1 低温度系数晶振 =0 温度寄存器 计数器 2 高温度系数晶振 =0 预置 加 1 LSB 置位 /清除 停止 课程设计用纸 第 9 页 图 36 DS18B20的测温流程图 DS18B20 与单片机的连接 图 37 DS18B20与单片机的连接电路图 如上图为 DS18B20 温度传 感器与单片机之间的接法,其中 2 号接单片机的 17 号 接口。 DS18B20 通过 口将采集到的温度实时送入单片机中。 报警温度的设置 图 38 报警温度的设置电路 初始化 DS18B20 跳过 ROM 匹配 温度变换 延时 1S 跳过 ROM 匹配 读暂存器 转换成显示码 数码管显示 课程设计用纸 第 10 页 图 38 为报警温度的设置 电路 ,其中 K1, K2, K3 分别接到单片机的 ,口。 其中 K1 用于报警温度设定 开关 , K2 用于报警温度的设置时候的加温度(每次加一),K3 用于报警温度的设置时的减温度(每次减一)。 实现了报警温度的手动设置。 数码管显示 图 39 数码管的引脚排列及 结构 图 39为数码管的外形及引脚排列和两种接法(共阴极和共阳极)的结构图。 共阳极数码管的 8个发光二极管的阳极(二极管正端)连接在一起。 通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。 当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮。 根据发光字段的不同组合可显示出各种数字或字符。 此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 共阴极数码管的 8 个发光二极管的阴极(二极管负端)连接在一起。 通常,公共阴极接低电平(一般接地),其它 管脚接段驱动电路输出端。 当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。 此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 要使数码管显示出相应的数字或字符,必须使段数据口输出相应的字形编码。 字型码各位定义为:数据线 D0 与 a 字段对应, D1 与 b 字段对应 „„ ,依此类推。 如使用共阳极数码管,数据为 0 表示对应字段亮,数据为 1表示对应字段暗;如使用共阴极数码管,数课程设计用纸 第 11 页 据为 0 表示对应字段暗,数据为 1 表示对应字段亮。 如要显示 “0” ,共阳极数码管的字型编码应为: 11000000B(即 C0H);共阴极数码管的字型编码应为: 00111111B(即 3FH)。 依此类推,可求得数码管字形编码如表 35所示。 表 35数码管字符表 显示数字 共阴顺序小数点暗 共阴逆序小数点暗 共阳顺序小数点亮 共阳顺序小数点暗 Dp g f e d c b a 16进制 a b c d e f g Dp 16进制 0 0 0 1 1 1 1 1 1 3FH 1 1 1 1 1 1 0 0 FCH 40H C0H 1 0 0 0 0 0 1 1 0 06H 0 1 1 0 0 0 0 0 60H 79H F9H 2 0 1 0 1 1 0 1 1 5BH 1 1 0 1 1 0 1 0 DAH 24H A4H 3 0 1 0 0 1 1 1 1 4FH 1 1 1 1 0 0 1 0 F2H 30H B0H 4 0 1 1 0 0 1 1 0 66H 0 1 1 0 0 1 1 0 66H 19H 99H 5 0 1 1 0 1 1 0 1 6DH 1 0 1 1 0 1 1 0 B6H 12H 92H 6 0 1 1 1 1 1 0 1 7DH 1 0 1 1 1 1 1 0 BEH 02H 82H 7 0 0 0 0 0 1 1 1 07H 1 1 1 0 0 0 0 0 E0H 78H F8H 8 0 1 1 1 1 1 1 1 7FH 1 1 1 1 1 1 1 0 FEH 00H 80H 9 0 1 1 0 1 1 1 1 6FH 1 1 1 1 0 1 1 0 F6H 10H 90H 显示的具体实施是通过编程将需要显示的字型码存放在程序存储器的固定区域中,构成显示字型码表。 当要显示某字符时,通过查表指令获取该字符 所对应的字型码。 课程设计用纸 第 12 页 图 310 四位八段数码管动态显示电路 图 310 为本次设计所用到的四位八段数码管动态显示 ,其中段选接到单片机的 P0 口,位选接到单片机的 P2 口的低四位。 其中 P0 口也接的有上拉电阻,图中未标示出来,会在下面的总体电路中标示出来。 采用的是动态显示方式。 硬件电路总体设计 图 311 为本次设计的硬件总体设计图,其 中 利用 K1,K2,K3 处进行报警温度的设置,然后有 DS18B20 进行实时温度采集,并在数码管上同步显示,若采集到的温度达到或者 超过预设的报警温度,则 LED 灯会发光报警,若低于该报警温度,则不会报警。 课程设计用纸 第 13 页 图 311 硬件电路总体设计图 介绍 主程序流程图 本次设计首先对程序进行初始化,然后打开报警温度设定开关,对报警温度进行设定,确认设定 值 后, DS18B20 温度传感器进行温度采集并送入单片机中,单片机将传感器所检测 到 的温度 同步显示在数码管上,并且 与设置的报警温度进行比较,若达到或者超过报警温度时, LED 灯发光报警,如果没有达到,则继续进行温度采集。 课程设计用纸 第 14 页 图 41主程序流程图 主 流程 的 C 语言程序 main () { ALERT=0。 LED=0。 flag=0。 sheding=30。 disdata=0xff。 // 初始化端口 discan=0xff。 for(h=0。 h4。 h++) //开机显示“ 8888” scan()。 {display[h]=8。 } 开始 初始化程序 进行报警温度设定并确认 传感器采集温度并实时显示判断达到报警温度。 灯光报警 Y 继续温度采集 N 课程设计用纸。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。