77范文网 - 专业文章范例文档资料分享平台

基于51的温度报警器设计 - 图文(3)

来源:网络收集 时间:2020-04-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

开始编写相关子函数主函数调用液晶初始化函数主函数调用温度采集函数主函数调用温度上下限函数否采集温度在设定范围是LCD显示温度LCD显示温度蜂鸣器报警

图4.1 主程序流程图

程序首先进行相关宏定义,定义变量和数组,编写所需要的子函数,然后在主函数中调用液晶初始化子函数对液晶进行初始化,并在液晶第一行显示‘温度

11

显示’四个汉字,调用温度采集函数对当前温度进行采集,调用温度上下限设定子函数设定适合现场的温度范围,然后将采集到的温度值同设定的温度上下限进行比较。若在设定范围内,则调用液晶显示函数显示当前温度并返回到温度采集子函数调用处;若不在设定范围内,则调用液晶显示函数显示当前温度,使蜂鸣器报警,程序返回温度采集子函数调用处。

4.2 键盘扫描程序设计

开始四行中只将第一行设为低电平否检测是否有键按下是延时5ms否检测是否有键按下是读IO口电平switch语句获取键值松手检测按上述方法扫描第二行按上述方法扫描第三行按上述方法扫描第四行结束

图4.2 键盘扫描程序流程图

该键盘扫描程序采用行扫描的方式,从第一行扫描到第四行,首先将第一行设为低电平,其余行为高电平,通过读取P1口高四位电平情况判断是否有键按下,若无键按下则扫描下一行,若有键按下,延时5ms消抖,再次判断是否有

12

键按下,若无键按下则扫描下一行,若有键按下则通过switch语句获取相应键值,松手检测后扫描下一行。

4.3 温度上下限设定子程序设计

开始调用键盘扫描函数否键值是否为10是for循环执行三次获得三个键值计算温度下限调用键盘扫描函数是 键值是否为11否for循环执行三次获得三个键值计算温度上限结束

图4.3 温度上下限设定子程序流程图

该程序功能是设定温度上下限,程序开始,调用键盘扫描函数获取一个键值,通过第一个if语句判断该键值是否为10,若是则通过for循环执行三次依次获取三个键值并赋给数组b[ ],从而计算出温度下限l,然后再次调用键盘扫描函数通

13

过第二个if语句进行所得键值是否为11的判断;在第一个if语句判断中若键值不为10,则通过第二个if语句进行所得键值是否为11的判断。在第二个if语句进行所得键值是否为11的判断中,若键值为11,则通过for循环执行三次依次获取三个键值并赋给数组c[ ],从而计算出温度上限h,然后程序结束;若不为11,则程序结束。

4.4 延时子程序设计

开始i=0是i

图4.4 延时子程序流程图

由于单片机采用的是12MHZ晶振,则执行一条空指令所用时间恰为1us,子函数中设定的参数x是空指令执行次数,所以这是一个us级的软件延时函数。

5 系统调试

由于实验室的仪器较老,有些损坏,为了更好地调试,最终采用了自己买的51开发板。首先利用Keil软件进行编程,反复调试无错后生成了一个Hex文件,然后将程序烧录进单片机里面,进行运行。单片机运行后采集到当时室内温度为11.6℃,如图5.1,用矩阵键盘将温度上下限设为10℃~15℃,用手捏住温度传感器DS18B20一段时间,当传感器采集到的温度大于15℃时,如图5.2,蜂鸣器成功报警,说明该单片机系统能够很好地完成预期的功能。

14

图5.1 采集室内温度显示

图5.2 加热后温度显示

15

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于51的温度报警器设计 - 图文(3)在线全文阅读。

基于51的温度报警器设计 - 图文(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/986761.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: