基于51单片机的简易温控水杯恒温杯仿真设计( proteus仿真+程序+设计报告+讲解视频)
基于51单片机的简易温控水杯恒温杯仿真设计( proteus仿真+程序+设计报告+讲解视频)
仿真图proteus7.8及以上
程序编译器:keil 4/keil 5
编程语言:C语言
设计编号:S0099
1. 主要功能:
基于51单片机的简易温控水杯恒温杯仿真设计
1、采用DS18B20检测温度,温度检测范围-55~125摄氏度。
2、LCD1602显示检测温度和设置温度值,温度低于设定值显示low,高于显示high。
3、检测温度小于设定温度-1°时,开启加热器。
检测温度大于设定温度+1时,开启制冷器控制温度。
4、按键加减设置温度设定值,可以通过按键控制电动开关盖。
51单片机、DS18B20温度传感器、LCD1602显示
需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。
2. 讲解视频:
讲解视频包含仿真运行讲解和代码讲解
3. 仿真
开始仿真后LCD1602液晶显示当前测量的温度,设置温度,如果检测到温度大于设置值+1,制冷器开始工作降温。
如果检测到温度小于设置值-1,加热器开始工作加热提高温度。
可以通过按键控制瓶盖开关。
4. 程序代码
使用keil4或者keil5编译,代码有注释,可以结合视频理解代码含义。
#include "reg51.h"
#include"Ds18b20.h"
#include "lcd1602.h"
#define uchar unsigned char //重定义
#define uint unsigned int
sbit k1=P3^0;//按钮
sbit k2=P3^1;
sbit k3=P3^2;
sbit door=P2^2; //开关盖
sbit heat=P2^0; //加热
sbit cold=P2^1; //制冷sbit beep=P2^5;//蜂鸣器uchar time=0,num1=0;//定时
int wendu=0;//温度
uchar Ds_0_flag=0;//0度以上标志位
float tp;
完整代码见文章下载链接
uint down=40;//阀值
uchar disp1[]="wendu:000 C ";
uchar disp2[]="set_wendu:000 C ";
//uchar disp2[]="L:000 C H:000 C";uchar flag=0,beep_flag=0;void delay(uint i)//延时
{while(i--){delay_uint(50000);}
}
void main()
{disp1[9]=0xdf;disp2[13]=0xdf;
// disp2[14]=0xdf;init_1602();//初始化液晶TMOD|=0X11;//选择为定时器0模式,工作方式1,仅用TR0打开启动。TH1=(65536-50000)/256; //给定时器赋初值,定时50msTL1=(65536-50000)%256; ET1=1;//打开定时器1中断允许EA=1;//打开总中断TR1=1;//打开定时器1delay(4);beep_flag = 0;while(1){//按键检测if(!k1){if(down<125) //下限阈值检测范围小down++; //阈值+1while(!k1);}if(!k2){if(down>0)down--; //阈值-1while(!k2);}if(!k3){if(door){door=0;}else{door=1;}while(!k3);}}
}void Timer1() interrupt 3//定时器中断
{TH1=(65536-50000)/256; //给定时器赋初值,定时50msTL1=(65536-50000)%256; if(time<10)time++;else{time=0;wendu=Ds18b20ReadTemp();//测量温度if(wendu<0){Ds_0_flag=0;wendu=wendu-1;wendu=~wendu;tp=wendu;wendu=tp*0.0625+0.5; disp1[6]='-';//计算温度disp1[7]=wendu%100/10+0x30;disp1[8]=wendu%10+0x30;}else{Ds_0_flag=1;tp=wendu;wendu=tp*0.0625+0.5; //温度在寄存器中12位,分辨率:0.0625//加0.5是四舍五入disp1[6]=wendu/100+0x30;//计算温度disp1[7]=wendu%100/10+0x30;disp1[8]=wendu%10+0x30;}disp2[10]=down/100+0x30;//计算阈值disp2[11]=down%100/10+0x30;disp2[12]=down%10+0x30;write_string(1,0,disp1);//显示write_string(2,0,disp2);}if(wendu<down-1||Ds_0_flag==0){write_string(1,12,"Low ");heat = 0;//低温加热cold = 1;}else if(wendu>down+1){write_string(1,12,"High");cold = 0;//高温制冷heat = 1;}else{write_string(1,12," ");heat=cold=1;//取消加热制冷}}
5. 设计报告
7187字设计报告,内容包括硬件设计、软件设计、软硬件框图、调试、结论等
随着科技日新月异的进步和生活质量的不断提升,人们对生活用品的功能性、便利性和智能化程度提出了更高的要求。在这样的时代背景下,智能生活用品正逐渐成为现代生活的标配,它们不仅改善了人们的生活质量,还极大地提高了生活的舒适度与效率。智能恒温水杯作为一种代表性的智能化生活用品,其核心功能在于能够自动感应并调节杯内液体的温度,确保饮品始终保持在最适宜饮用的范围内,无论是热饮还是冷饮,都能做到随心所欲,这无疑极大地迎合了现代快节奏生活中人们对健康饮水习惯的追求,也因其高度的实用性和便捷性而广受市场和消费者的青睐。
针对这一趋势,本课题聚焦于设计一款基于51系列单片机为核心的简易温控水杯恒温杯仿真系统。此设计项目的核心目标有两个方面:首先,从实用角度出发,致力于研发一种能够精确控制水温的技术方案,使水杯能根据预先设定的温度自动启动加热或降温机制,从而实现在任何环境条件下都能让杯中的水温保持在理想的水平,充分满足人们日常生活中对不同饮品适宜温度的需求;其次,从教育与科研层面来看,本课题设计有助于提升学生对嵌入式系统设计理论的理解,通过从理论到实践的设计过程,让学生亲手构建一套包含温度感知、数据处理、控制执行等环节的完整闭环系统,有效锻炼学生的动手能力和工程实践能力。
6. 设计资料内容清单&&下载链接
资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。
0、常见使用问题及解决方法–必读!!!!
1、程序代码注释
2、proteus仿真
3、功能要求
4、软硬件流程图
5、开题报告
6、设计报告
7、讲解视频
Altium Designer 安装破解
KEIL+proteus 单片机仿真设计教程
KEIL安装破解
Proteus元器件查找
Proteus安装
Proteus简易使用教程
单片机学习资料
相关数据手册
答辩技巧
设计报告常用描述
鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url
百度网盘下载链接:-失效请留言
https://pan.baidu.com/s/1gET6ed4LRllvEgB6qmK4kg?pwd=drml
相关文章:

基于51单片机的简易温控水杯恒温杯仿真设计( proteus仿真+程序+设计报告+讲解视频)
基于51单片机的简易温控水杯恒温杯仿真设计( proteus仿真程序设计报告讲解视频) 仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0099 1. 主要功能: 基于51单片机的简易温控水杯恒温…...

王德峰视频讲座,王德峰视频全部大全集,百度云百度网盘资源下载
王德峰教授的视频讲座其内容丰富、观点独到,深受广大学者和爱好者的喜爱。很多朋友想下载王德峰教授的讲座视频,今天我给大家分享一个下载王德峰教授视频的方法 搜索 “方圆资源网官网” 打开 “方圆资源网官网,找到王德峰教授的讲座 总之&a…...

Visual Studio和BOM历史渊源
今天看文档无意间碰到了微软对编码格式解释,如下链接: Understanding file encoding in VS Code and PowerShell - PowerShell | Microsoft LearnConfigure file encoding in VS Code and PowerShellhttps://learn.microsoft.com/en-us/powershell/scrip…...
虚拟现实(VR)游戏与增强现实(AR)游戏的区别
随着科技的飞速发展,沉浸式游戏体验已经成为现代娱乐的重要组成部分。虚拟现实(VR)游戏和增强现实(AR)游戏是这类体验中的两大主流,但它们在技术实现、用户体验和应用场景上有显著的区别。本文将详细探讨VR…...
git已经设置了自己的账号和密码,提交信息还是别人解决方法
1、运行一下命令缓存输入的用户名和密码: git config --global credential.helper wincred2、重新设置自己的邮箱和用户名 查看配置信息 git config --list修改用户名和邮箱地址: git config --global user.name 你自己的username git config --glo…...
探索面向对象与并发编程的完美融合:Java中的实践与思考
探索面向对象与并发编程的完美融合:Java中的实践与思考 在软件开发的世界里,面向对象编程(OOP)与并发编程(Concurrency)常被视为两个独立的领域。然而,Java语言却将这两个领域无缝地融合在一起,使得面向对象思想能够有效简化并发编程的复杂性。那么,如何才能用面向对…...

探索在线问诊系统的安全性与隐私保护
随着远程医疗的普及,在线问诊系统成为医疗服务的重要组成部分。然而,随着医疗数据的在线传输和存储,患者的隐私保护和数据安全面临巨大挑战。本文将探讨在线问诊系统的安全性与隐私保护,介绍常见的安全措施和技术实现,…...

How To: Localize Bar and Ribbon Skin Items
您可以使用Localizer对象自定义皮肤菜单,而不是迭代每个条形皮肤子菜单项和功能区皮肤库项容器来手动修改这些项。此方法允许您同时自定义所有现有栏子菜单和功能区库中的外观项目。 创建BarLocalizer类的派生类并重写XtraLocalizer.GetLocalizedString方法。 pub…...
通过 urllib 结合代理IP下载文件实现Python爬虫
本教程将向您展示如何使用 Python 的 urllib 库结合代理 IP 来下载文件。这种技术对于避免被目标网站封锁 IP 或简单地从不同的地理位置访问网站特别有用。通过这种方式,您可以更安全地进行网页数据的爬取和分析。 安装必须的库 在开始编写代码之前,您…...
单线服务器与双线服务器的区别?
单线服务器和双线服务器之间有什么区别呢?接下来就让小万来为大家具体分析一下吧! 首先单线服务器和双线服务器之间运营商的性质是不同的,单线服务器主要是一家带宽运营商,而双线服务器则是有两家运营商提供带宽的线路。 单线服务…...

使用Hadoop MapReduce实现各省学生总分降序排序,根据省份分出输出到不同文件
使用Hadoop MapReduce实现各省学生总分降序排序,根据省份分出输出到不同文件 本文将展示如何使用Hadoop MapReduce对一组学生成绩数据进行处理,将各省的学生成绩按总分降序排序并按照省份进行分区将结果分别输出到不同的文件中。 数据样例 我们将使用…...

LeetCode | 66.加一
这道题有多个思路,可以依次取数组的每一位,乘10后加下一位,直到最后一位,就得到我们数组所表示的数字,然后加一,然后把新得到的数字再转化为对应的数组,我的做法是直接取数组的最后一位…...

Oracle最终会扼杀MySQL?(译)
原文网站:https://www.percona.com/blog/is-oracle-finally-killing-mysql/ 作者:Peter Zaitsev 自从Oracle收购了MySQL后,很多人怀疑Oracle对开源MySQL的善意,这篇percona的文章深入分析了Oracle已经和将要对MySQL采取的措施&a…...

分布式物联网平台特点
随着物联网(IoT)技术的飞速发展,我们正步入一个万物互联的新时代。在这个时代,设备、数据和服务的无缝集成是实现智能化的关键。分布式物联网平台作为这一进程的核心,正在成为构建智能世界的基石。 一、分布式物联网平…...
【学习笔记】Linux文件编译调试相关(问题未解决)
//-I意为include 指定头文件搜索路径 -l:告诉编译器链接时需要的库 gcc *.c -I /usr/include/fastdfs/ -I /usr/include/fastcommon/ -l fdfsclient//调试gcc -g -rdynamic main.c如何解决 “ 段错误(吐核) ” ??? 【线上排错】记…...

微信小程序毕业设计-驾校管理系统项目开发实战(附源码+论文)
大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:微信小程序毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计…...

【多线程】进程与线程
🥰🥰🥰来都来了,不妨点个关注叭! 👉博客主页:欢迎各位大佬!👈 文章目录 1. 操作系统2. 进程2.1 进程是什么2.2 进程管理2.3 进程调度2.3 内存管理2.4 进程间通信 3. 线程3.1 线程是什…...

【文献阅读】一种多波束阵列重构导航抗干扰算法
引言 针对导航信号在近地表的信号十分微弱、抗干扰能力差的问题,文章提出了自适应波束形成技术。 自适应波束形成技术可以分为调零抗干扰算法和多波束抗干扰算法。 调零抗干扰算法主要应用功率倒置技术,充分利用导航信号功率低于环境噪声功率的特点&…...

前端传递bool型后端用int收不到
文章目录 背景模拟错误点解决方法 背景 我前几天遇到一个低级错误,就是我前端发一个请求,把参数送到后端,但是我参数里面无意间传的布尔型(刚开始一直没注意到,因为当时参数有十几个),但是我后…...

巴伦在接收链路中的应用
一、巴伦的定义 "巴伦"(Balun),是一种平衡-不平衡转换器,通常用于将平衡信号(如差分信号)转换为不平衡信号(如单端信号),或者反之。巴伦在无线通信、广播、天…...

简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...

解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用
在工业制造领域,无损检测(NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统,以非接触式光学麦克风技术为核心,打破传统检测瓶颈,为半导体、航空航天、汽车制造等行业提供了高灵敏…...
[特殊字符] 手撸 Redis 互斥锁那些坑
📖 手撸 Redis 互斥锁那些坑 最近搞业务遇到高并发下同一个 key 的互斥操作,想实现分布式环境下的互斥锁。于是私下顺手手撸了个基于 Redis 的简单互斥锁,也顺便跟 Redisson 的 RLock 机制对比了下,记录一波,别踩我踩过…...

C# winform教程(二)----checkbox
一、作用 提供一个用户选择或者不选的状态,这是一个可以多选的控件。 二、属性 其实功能大差不差,除了特殊的几个外,与button基本相同,所有说几个独有的 checkbox属性 名称内容含义appearance控件外观可以变成按钮形状checkali…...
写一个shell脚本,把局域网内,把能ping通的IP和不能ping通的IP分类,并保存到两个文本文件里
写一个shell脚本,把局域网内,把能ping通的IP和不能ping通的IP分类,并保存到两个文本文件里 脚本1 #!/bin/bash #定义变量 ip10.1.1 #循环去ping主机的IP for ((i1;i<10;i)) doping -c1 $ip.$i &>/dev/null[ $? -eq 0 ] &&am…...

如何做好一份技术文档?从规划到实践的完整指南
如何做好一份技术文档?从规划到实践的完整指南 🌟 嗨,我是IRpickstars! 🌌 总有一行代码,能点亮万千星辰。 🔍 在技术的宇宙中,我愿做永不停歇的探索者。 ✨ 用代码丈量世界&…...

SQL注入篇-sqlmap的配置和使用
在之前的皮卡丘靶场第五期SQL注入的内容中我们谈到了sqlmap,但是由于很多朋友看不了解命令行格式,所以是纯手动获取数据库信息的 接下来我们就用sqlmap来进行皮卡丘靶场的sql注入学习,链接:https://wwhc.lanzoue.com/ifJY32ybh6vc…...

Modbus转Ethernet IP深度解析:磨粉设备效率跃升的底层技术密码
在建材矿粉磨系统中,开疆智能Modbus转Ethernet IP网关KJ-EIP-101的应用案例是一个重要的技术革新。这个转换过程涉及到两种主要的通信协议:Modbus和Ethernet IP。Modbus是一种串行通信协议,广泛应用于工业控制系统中。它简单、易于部署和维护…...