盐城工学院本科生毕业设计说明书(2013)
图3-7键盘模块
3.4.3温度传感器(DS18B20)模块
DS18B20它是第一片使用“一线总线”接口的温度传感器,温度传感器DS18B20可以分为三脚T0-92直插式和八脚S0IC贴片式。贴片式不常用,所以我选择的是直插式封装。温度传感器DS18B20它的体积更加小、性能更突出、工作更加稳定、功耗更低、兼容大多数单片机,它可以直接输出数字量的温度信号供处理器处理。
在DS18B20进行温度转换的时候,I/O端口为DS18B20提供稳定的电压使得传感器能很好的进行温度转换,因为DS18B20正常工作时的电流需要1mA,所以在同一个I/O端口上使用几个温度传感器同时进行测温时,单单使用一个上拉电阻时是无法使DS18B20正常进行工作的,可能会使测量的温度值不准确甚至是无法进行测量。
因此,在如图3-8所示的电路只能保证单个DS18B20正常工作,如果使用多个传感器后者电源供电不稳定,就会使DS18B20内部的寄生电源接受到的电流太小,无法驱动传感器正常工作,使得传感器测量不准确。所以在实际使用中,必须保证电源的电压稳定在+5V,是DS18B20能够正常工作。
图3-8温度传感器模块
3.4.4 报警电路模块
报警电路如图3-9所示,采用蜂鸣器发声报警。蜂鸣器的负极接地,正极接到三 11
基于单片机的果园环境温度检测报警系统设计
级管集电极,三极管发射极接到电源VCC上,三极管的基集接到单片机上,三极管起到一个开关的作用,当P0.1输出低电平时,三极管导通,这样蜂鸣器就有电流经过,形成回路,然后蜂鸣器发出声音。当P0.1输出高电平时,三极管就截止,蜂鸣器不发出声音。
图3-9报警电路模块
12
盐城工学院本科生毕业设计说明书(2013)
3.4.5显示电路模块
具体电路如图3-10所示:
图3-10数码管显示模块
本设计采用的是4位LED供阳极数码管显示,如图3-10所示。数码管采用的静态扫描方式,因为数码管位数少,采用静态扫描的方式使得显示非常的稳定,使用CPU的时间短,大大简化了显示部分的程序设计。
13
基于单片机的果园环境温度检测报警系统设计
4 软件设计
4.1 程序设计流程
(1)主程序设计
主函数完成对DS18B20的初始化,读取温度的转换值,调用数据处理的子程序然后再生成显示代码,再将温度显示出来,然后根据温度显示的代码判断温度值是否超出了预设的范围。如果超出,则调用报警电路,蜂鸣器会响起来。然后返回到主函数开始的位置,无论温度值是否超出预设值,程序都会返回开始的位置重复循环。
主程序流程图如下:
14