- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
基于单片机烟雾检测系统的软件设计案例综述
目录
TOC\o1-3\h\u67741.1主程序流程设计 1
254401.2温度检测子函数设计 2
283121.3按键检测子函数设计 3
321261.4报警子函数设计 5
224801.5显示模块子流程设计 6
1.1主程序流程设计
主函数在程序设计过程中起着重要的作用,而主函数的独立存在为我们建立了一个独立的进程,使得我们的程序员具有了一个对应的主函数入口,可以对其它的进程函数进行相应的声明而且也无需再重新进行定义。主函数方法编写时我们应该严格遵循简洁、适当的编写原则,便于后期检查。具体器件定义的功能应该编写入相应的子函数里面去,后期直接调用[13]。
由下图4-1主程序流程图可知,首先单片机进行I/O初始化,具体就是初始化时钟和串口,然后传感器预热,简单来说,就是烟雾传感器中AD转换芯片需要进行初始化,内部电路自检或者数据缓冲这样,程序的全部初始化工作完成后,系统则会自动进入一个实时运行的状态,对周围环境中的烟雾浓度及温度进行实时检测。
在整个系统实时工作过程中,对采集到的信号进行数模转化送到单片机,尔后单片机通过控制LCD进行显示,同时进行检测数据与预设报警上限值进行比较,根据比较结果,由主控单元决定后续的执行操作。
图4-SEQ图4-\*ARABIC1主程序处理流程图
1.2温度检测子函数设计
DS18B20芯片实时读取检测到的信息,自读取温度的过程中,首先对DS18B20芯片进行初始化,然后先读取温度的低字节,再次读取高字节,在芯片内部进行高位低位转化,并最终将周围的温度读取出来,并在显示液晶屏上显示。若读取的温度大于设定的初始值时,报警系统将启动报警,否则不进行报警。
uintread_temp()
{
uintvalue;
ucharlow;
delay_uint(50); //500us
init_18b20(); //初始化18b20
write_18b20(0xcc); //跳过64位ROM
write_18b20(0xbe); //发出读取暂存器命令
EA=0;
low=read_18b20(); //读温度低字节
value=read_18b20();//读温度高字节
EA=1;
value=8;
value|=low;
value*=0.0625;
returnvalue;
其温度程序流程图如图4-2所示。
图4-SEQ图4-\*ARABIC2温度检测子流程图
1.3按键检测子函数设计
由第3章的硬件电路模块介绍可知,本文设计烟雾报警系统用的按键主要有手动报警及阈值设置按键,具体的功能描述如下:
手动报警就是,你按下系统就会一直报警,即蜂鸣器一直响。
设置增加阈值功能,就是在设计系统中,将温度报警或者烟雾报警的上限阈值设置高一点。
设置减少阈值功能,功能和上面一致,作用相反即可。
进入设置功能,就是按下此按键,系统进入功能设置。按键部分的子函数代码分析如下所示:
voidkey_with()
{
if(key_can==4) //紧急报警键手动报警
{
menu_1=0;
}
if(menu_1==0)
init_1602();//初始化显示
}
if(menu_1==0)
{
if((key_can==2)||(key_can==3))
shoudong=0;//取消手动报警
}
if(menu_1==1) //设置烟物报警
{
if(key_can==2)
{
s_dengji++; //烟物报警值加1
if(s_dengji=700)
s_dengji=700;
}
if(key_can==3)
{
s_dengji--; //烟物报警值减1
if(s_dengji=1)
s_dengji=1;
}
}
1.4报警子函数设计
符合程序判断机制时,蜂鸣器会发出一种报警鸣声,对应于此时LED灯闪亮起,并伴随着点击风扇的开启,风扇进行烟雾的驱散和温度的降低。当烟雾值降低至设定初始值之下时,蜂鸣器停止发出报警声,报警取消,此时电机风扇也停止运行。设置完成后,程序运行,报警检测进行环境的监控。
voidclock_h_l()
{
staticu8value;
if((yuzhi=s_yuzhi)||(tempe
您可能关注的文档
- 2025《“互联网+”对H银行支付业务的影响回归分析》5200字.docx
- 2025《“英雄联盟”的营销策略现状分析》5400字.docx
- 2025《“英雄联盟”赛事产业链体系营销模式分析》5000字.docx
- 2025《1#宿舍楼施工组织设计的施工部署案例》6900字.docx
- 2025《60KV变电站的电气主接线设计及方案的确定案例》3300字.doc
- 2025《阿波罗卫浴财务风险分析与防范》论文任务书 .doc
- 2025《阿波罗卫浴公司并购的融资方式及绩效分析》开题报告3400字.docx
- 2025《阿波罗卫浴公司财务风险分析及对策研究》8800字.docx
- 2025《阿波罗卫浴公司财务风险管理研究》(开题报告+论文)12000字.doc
- 2025《阿波罗卫浴公司财务风险及对策研究》开题报告文献综述2800字.doc
- 2025《基于绿色建筑的办公楼空调系统设计方案》15000字(论文).doc
- 2025《基于生活化教学理念的小学习作教学研究的文献综述》3200字.doc
- 2025《基于中色股份现金流管理分析及对策研究》15000字(论文).doc
- 2025《基于重心法的选址问题研究的国内外文献综述》2400字.docx
- 2025《夹具误差的分析计算过程案例》1300字.docx
- 2025《建筑资质管理研究的国内外文献综述》2700字.docx
- 2025《降低飞行疲劳感的措施分析》4500字.docx
- 2025《街道办事处职能职权研究的国内外文献综述》2900字.docx
- 2025《金融结构与经济增长的关系研究国内外文献综述》2400字.docx
- 2025《金融结构与经济增长关系的理论分析》1800字.docx
最近下载
- 装饰图案概述.ppt VIP
- 香港中學會考試題(甲部).doc VIP
- 德阳市城市道路更新技术导则(2022).pdf
- 2023年香港亚洲国际数学奥林匹克公开赛(AIMO)竞赛复赛数学试卷.doc VIP
- “双减”背景下家长的教育焦虑及消解路径.docx VIP
- 装饰图案第6章 装饰图案色彩.ppt VIP
- 海尔基于工业4.0智能制造工厂服务平台智能柔性生产线方案(224页).ppt VIP
- 装饰图案第8章 装饰图案与应用设计.ppt VIP
- 房屋市政工程生产安全重大事故隐患判定标准(2024版)危险性较大的分部分项工程专项施工方案严重缺陷清单解读.pdf VIP
- 装饰图案第5章 装饰图案的造型、构图及组织形式.ppt VIP
文档评论(0)