试验室温度检测与控制系统设计

发布时间 : 星期四 文章试验室温度检测与控制系统设计更新完毕开始阅读

系统整体设计

(4) 继电器电路

图中P1.1引脚控制加热器继电器。给P1.1低电平,三极管导通,电磁铁触头放下来开始工作。

图5-4 继电器电路图

(5) 晶振控制电路

图5-5 晶振控制电路图

(6) 复位电路

图5-6复位电路图

16

系统整体设计

4.2 系统软件设计

4.2.1 系统软件设计整体思路

一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。因此充分利用其内部丰富的硬件资源和软件资源,采用与S51系列单片机相对应的51汇编语言和结构化程序设计方法进行软件编程。

程序设计语言有三种:机器语言、汇编语言和高级语言。机器语言是机器唯一能“懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(成为目标程序),计算机才能“看懂”,然后逐一执行。

高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程时不必仔细了解所用的计算机的具体性能与指令系统,而且语句的功能强,常常一个语句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和交流,但是本系统却选用了汇编语言。原因在于,本系统是编制程序工作量不大、规模较小的单片机微控制系统,使用汇编语言可以不用像高级语言那样占用较多的存储空间,适合于存储容量较小的系统。同时,本系统对位处理要求很高,需要解决大量的逻辑控制问题。

MCS—51指令系统的指令长度较短,它在存储空间和执行时间方面具有较高的效率,编成的程序占用内存单元少,执行也非常的快捷,与本系统的应用要求很适合。而且MCS—51指令系统有丰富的位操作(或称位处理)指令,可以形成一个相当完整的位操作指令子集,这是MCS—51指令系统主要的优点之一。对于要求反应灵敏与控制及时的工控、检测等实时控制系统以及要求体积小、系统小的许多“电脑化”产品,可以充分体现出汇编语言简明、整齐、执行时间短和易于使用的特点。

本装置的软件包括主程序、读出温度子程序、复位应答子程序、写入子程序、以及有关DS18B20的程序(初始化子程序、写程序和读程序)。 4.2.2 系统程序流图

程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合。为实现预期目的而进行操作的一系列语句和指令一般分为系统程序和应用程序两大类。程序就是为使电子计算机执行一个或多个操作,或执行某

17

系统整体设计

一任务,按序设计的计算机指令的集合。

程序是由序列组成的,告诉计算机如何完成一个具体的任务。程序是软件开发人员genuine用户需求开发的、用程序设计语言描述的适合计算机执行的指令(语句)序列。由于现在的计算机还不能理解人类的自然语言,所以还不能用自然语言编写计算机程序。

一个程序应该包括以下两方面的内容:

1 对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构。

2 对操作的描述。即操作步骤,也就是算法。

在这个系统程序主要包括主程序,读出温度子程序, 复位应答子程序,写入子程序等。

(1)主程序

图4-7 主程序流程图

主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度。

通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两个单元中,然后通过调用显示子程序显示出。

(2)读出温度子程序

18

系统整体设计

读温度命令子程序 写入子程序 跳过ROM匹配命令 DS18B20复位、应答子程序 显示子程序(延时) 写入子程序 写入子程序 跳过ROM匹配命令 DS18B20复位、应答子程序 温度转换命令 终 止 图4-8 读出温度子程序

读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。

DS18B20的各个命令对时序的要求特别严格,所以必须按照所要求的时序才能达到预期的目的,同时,要注意读进来的是高位在后低位在前, 共有12位数,小数4位,整数7位,还有一位符号位。

(3)复位、应答子程序

19

联系合同范文客服:xxxxx#qq.com(#替换为@)