单片机鸡舍温度控制系统(电路图+程序) 第6页
系统程序主要包括主程序,读出温度子程序,复位应答子程序,写入子程序等。
1)主程序
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图19所示。
通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两个单元中,然后通过调用显示子程序显示出来。
图19 主程序流程图
2)读出温度子程序
读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。
图20 读出温度子程序
DS18B20的各个命令对时序的要求特别严格,所以必须按照所要求的时序才能达到预期的目的,同时,要注意读进来的是高位在后低位在前,共有12位数,小数4位,整数7位,还有一位符号位。
3)复位、应答子程序图21复位、应答子程序
4)写入子程序图22 写入子程序
5)系统总的流程图
图23系统总的流程图
6 总结与体会
经过将近三周努力,完成了鸡舍温度控制系统的设计,达到预计的设计目标,从心底里说,非常高兴,通过这次设计将硬、软件做了出来,并能按照预定的要求工作了,但高兴之余不得不深思呀!
在本次设计的过程中,我发现很多的问题,虽然以前没有独立做过这样的设计,但这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的事,举个例子,以前写的那几次,数据加减时,我用的都是BCD码,这一次,我全部用的都是16进制的数直接加减,显示处理时在用除法去删分,感觉效果比较好,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。
从这次的设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识运用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次设计中的最大收获。
通过对多种温度控制系统的分析研究,本论文自行设计并实现了一种温度测试控制系统。该系统基于51系列单片机的控制,通过AT89S51处理温度传感器检测的数字信号,从而控制固态继电器的打开和关闭,实现对温度的控制,同时配合按键的手动控制,使得系统操作更加方便、人性化。通过对硬件与软件的调试情况,系统基本能实现论文所预期的设计功能,不过系统仍然存在一些不足之处,有待改进。
从设计方案的选择到最终系统功能的实现,我在这个过程中学到了许多新的知识。首先是阅读了一些参考文献,使我对温度控制系统有了全新的认识。在这次系统设计的过程中遇到了很多困难,但通过自己的努力都一一克服了。这次设计我不光在硬件方面有很大提高,在理论上也学到了很多。
当然由于自己前一段时间不抓紧,搞的到最后几天拼命赶论文,弄的自己很狼狈,这是我以后要吸取教训的地方,凡事都得有计划。
7 结束语
本设计使用的温度控制器结构简单、测温准确,具有一定的实际应用价值。该智能温度控制器只是DS18B20在温度控制领域的一个简单实例,还有许多需要完善的地方,例如可以将测得的温度通过单片机与通讯模块相连接,以手机短消息的方式发送给用户,使用户能够随时对温度进行监控。此外,还能广泛地应用于其他一些工业生产领域,如建筑,仓储等行业。本温度控制系统可以应用于多种场合,像鸡舍的温度、育婴房的温度、水温的控制。用户可灵活选择本设计的用途,有很强的实用价值
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页