开始 18B20复位 否 18B20存在? 是 发出温度转换命令 显示测温写入18B20 点位置 延时 延时 读温度前复位 发出读温度命令 写入18B20 读入温度值数据 返回
图7程序流程图
(五)系统电源电路的设计
控制系统主控制部分电源需要用5V直流电源供电,其电路如图8所示,把频率为50Hz、有效值为220V的单相交流电压转换为幅值稳定的5V直流电压。其主要原理是把单相交流电经 过电源变压器、整流电路、滤波电路、稳压电路转换成稳
定的直流电压。
由于输入电压为电网电压,一般情况下所需直流电压的数值和电网电压的有效值相差较大,因而电源变压器的作用显现出来起到降压作用。降压后还是交流电压,所以需要整流电路把交流电压转换成直流电压。由于经整流电路整流后的电压含有较大的交流分量,会影响到负载电路的正常工作。需通过低通滤波电路滤波,使输出电压平滑。稳压电路的功能是使输出直流电压基本不受电网电压波动和负载电阻变化的影响,从而获得稳定性足够高的直流电压。本电路使用集成稳压芯片7805解决了电源稳压问题。
在该温度控制系统中,其电源电路设计如下图8所示。
图8电源电路模块
(六)LED显示电路
本课题设计的温度控制系统是采用液晶屏4-LED数码管作为显示模块,其接口原理图如下图9所示:
图9 液晶显示接口电路
(七)按键接口电路
本课题设计采用的键盘模块,其接口原理图如下图10所示
图10 键盘模块电路
三、系统软件设计
系统的软件主要是采用C语言,对单片机进行变成实现各项功能。主程序对模块进行初始化,而后调用读温度、处理温度、显示、键盘等模块。用的是循环查询方式,来显示和控制温度,主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值并负责调用各子程序,其程序流程如图11
系统程序流程图。
初始化 开始 启动DS18B20 读温度 计算温度 LED显示
图11系统程序流程图
(一)计算温度子程序
读出温度子程序的主要功能包括初始化,判断DS18B20是否存在,若存在则进行一系列的读操,作若不存在则返回。其程序流程图如图12所示。
开始 初始化 DS18B20存在? ROM操作命令 存储操作命令 读取温度值 返回
图12读温度流程图 (二)按键处理子程序
按键处理子程序主要是负责参数的设置,主程序每循环一次都要对按键进行扫描,判断是否有输入键按下则进行一系列的按键输入操作。其程序流程框图如图13所示。