单片机的恒温箱(液晶板)系统采用51单片机+按键+液晶1602+DS18B20+继电器+蜂鸣器+DS1302+蓝牙设计而成。 1、能够实时监测温度的变化,并且通过液晶显示,手机蓝牙显示温度值。 2、测量范围为0到99.9摄氏度,精度为0.1摄氏度。 3、可设置上下限控制温度。 4、具有时钟功能,可以将当前的年月日、时分秒显示在液晶上。 5、当环境温度超过设置的上限值,继电器吸合,绿灯亮,代表散热。当环境温度低于设置的下限值,继电器吸合,红灯亮,代表加热。
2023-04-16 16:42:06 27KB 51单片机 DS18B20
1
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理如图3所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号发送给计数器1。高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。
2023-04-05 16:07:19 45KB 单片机 DS18B20 测温
1
本文给大家分享了一个DS18B20测温51驱动程序。
2022-12-30 17:18:06 37KB DS18B20 测温 51驱动程序 文章
1
单个DS18B20测温的proteus仿真电路及C语言程序设计
2022-06-08 15:01:23 48KB proteus c语言 文档资料 开发语言
多个DS18B20测温的proteus仿真电路及C语言程序设计
2022-06-08 15:01:22 63KB proteus c语言 文档资料 开发语言
该程序给出了DS18B20的温度测量,并且定义了温度上下限值,并有报警等功能。
2022-06-02 00:20:30 29KB DS18B20
1
利用51控制DS18B20测温LCD12864显示---亲测无误;内含LCD12864使用手册和相关精品网站
2022-05-10 20:44:48 2.19MB DS18B20 LCD12864
1
DS18B20温度传感器测量温度的电子线路图
2022-04-29 13:07:35 97KB DS18B20
1
LCD1602显示屏+DS18B20测温C51单片机驱动源码KEIL工程文件,可作为你的学习设计参考。 void main() { LCD1602_Init(); //初始化LCD1602 DS1302_Init(); //初始化DS1302 LCD1602_write_com(0x80); LCD1602_write_word("Welcome to use!"); Temp_Buffer = Get_temp(); //读取DS18B20的值 Delay_ms(1000); LCD1602_write_com(0x01); //清屏 while(1) { DS1302_GetTime(&DS1302Buffer); //获取当前RTCC值 if(Flag_Time_Refresh == 1 && Flag_KEY_Set == 0) //数据更新时才刷新LCD { Flag_Time_Refresh = 0; Display_RTCC(); //显示实时时钟 Display_Temp(); //获取并显示温度值 } Scan_Key(); //按键扫描 switch( KEY_NUM ) { case 1: //按键1执行程序 KEY_NUM = 0; //清空按键标志 Flag_KEY_Set = ~Flag_KEY_Set; //设置按键标志位翻转 if(Flag_KEY_Set) { LCD1602_write_com(0x0d); //LCD1602指针闪烁开 LCD1602_write_com(0x80+ 3); //指针设置到第一行第4列 KEY2_Count = 0; //按键S2计数清零 } else { LCD1602_write_com(0x0c); //LCD1602指针闪烁关 } break; case 2: //按键2执行程序 KEY_NUM = 0; //清空按键标志 if(Flag_KEY_Set) //在设置状态时运行 { KEY2_Count++; if(KEY2_Count == 7) KEY2_Count = 0; switch(KEY2_Count) { case 0: LCD1602_write_com(0x80+ 3); //指针指向年,闪烁 break; case 1: LCD1602_write_com(0x80+ 6); //指针指向月,闪烁 break; case 2: LCD1602_write_com(0x80+ 9); //指针指向日,闪烁 break; case 3: LCD1602_write_com(0x80+ 15); //指针指向星期,闪烁 break; case 4: LCD1602_write_com(0x80+ 0x40 + 1); //指针指向小时,闪烁 break; case 5: LCD1602_write_com(0x80+ 0x40 + 4); //指针指向分钟,闪烁 break; case 6: LCD1602_write_com(0x80+ 0x40 + 7); //指针指向秒钟,闪烁 break; default : break; } } break; case 3: //按键3执行程序 KEY_NUM = 0; //清空按键标志 if(Flag_KEY_Set) //在设置状态时运行 { switch(KEY2_Count) { case 0: DS1302Buffer.Year++; if(DS1302Buffer.
ds18b20测温驱动文档和18B20寄生电源程序资料.c语言代码
2022-01-11 08:47:30 178KB ds18b20 测温 文档 源程序
1