基于51单片机的恒温控制系统设计

您所在的位置:网站首页 基于51单片机的温度控制系统设计能写进cv里吗 基于51单片机的恒温控制系统设计

基于51单片机的恒温控制系统设计

2024-07-05 20:46| 来源: 网络整理| 查看: 265

硬件方案

        本设计采用51单片机作为电路系统的控制核心。恒温控制器通过按键将设置好的温度值传给单片机,通过温度显示模块显示出来。初始温度设置好后,单片机开启输出控制模块,使电热器开始加热,同时将从数字温度传感器DS18B20测量到的温度值实时的显示出来,当加热到设定温度值时,单片机控制声光报警模块,发出声光报警,同时关闭加热器。         整体电路主要由51单片机最小系统,LCD1602显示屏电路,加热及制冷控制继电器,温度采集模块,蜂鸣器模块,LED指示灯模块,按键模块;原理图如图:

PCB及仿真图如下:

 

设计功能 采用LCD1602显示屏显示当前数据,第一行显示当前的实时温度,第二行显示上限值和下限值。按键可以设置报警值,当温度超过设定的上或下限时,相应的指示灯亮,同时相应的继电器吸合,继电器可以驱动负载(风扇、制冷片、加热管等)。温度在上下限值之内,加热和制冷不工作。按键为设置按键、加键和减键。可设置上下限温度控制范围。采用DS18B20温度传感器测温;温度测量范围0到99.0摄氏度,精度为0.1摄氏度; 软件设计

main源码

void main(void) {     unsigned char i=0;     //P3=0xef;     P2=0xef;P1=0xff;BEEP=1;//端口初始化,      LCD_Initial();     //LCD 初始化          Read_Temperature(); //读取温度值     writestring(1,0,"DS18B20 Alarmer");      //显示“DS18B20 Alarmer”     delayms(1000);        //延时1S     writestring(0,0,"Current T=      ");      //显示“Current T= ”     writestring(0,1," Low=10  Top=40 ");      //显示“ Low=10  Top=40 ”          //NG=0;     while(1)     {          Read_Temperature();    //    //读取温度值         Display_Temperature();        //显示温度值         SetFun();//参数设置,按键功能         Alarm();//报警子函数         if((CurrentT(AlarmTempLow*10)))//当前温度在设置范围内         {             Cool=1;Heat=1;//不加热,不降温         }         else if((CurrentT>=(AlarmTempTop*10)))//当前温度高过设定值上限         {             Cool=0;Heat=1;//不加热,降温         }         else if((CurrentT


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3