基于51单片机的双机通信温度检测报警系统的仿真设计

一、设计要求

主机、从机均以AT89C52单片机为控制核心。从机利用DS18B20检测温度,并将温度值通过串口发送给主机。主机将从机发送的温度值与报警上下阈值比较后,发送控制命令给从机,从机收到控制命令后执行相应的动作。

二、设计内容

从机利用DS18B20数字温度传感器检测温度,并将温度值(保留两位小数)在LCD1602的第一行显示,同时将温度值通过串口发送给主机。主机接收从机发送的温度值,并将温度值显示在LCD1602的第一行。主机通过矩阵按键输入温度报警上下限的阈值,上下阈值在LCD1602的第二行显示。主机将从机发送的温度值与上下阈值比较,当温度值在上下阈值范围内(不包括上下阈值)时,主机发送命令,从机接收命令控制直流电机转动;当温度值等于或超出上下阈值时,主机发送命令,从机接收命令控制直流电机停转、蜂鸣器报警。

三、设计方案

本次设计主要包括两个LCD1602显示模块、矩阵键盘输入模块、直流电机模块、蜂鸣器模块、DS18B20测温模块,串口通信模块。

LCD1602显示模块:主机和从机的LCD1602显示模块相同,下面以主机为例说明。主机的P0端口连接LCD1602的D0~D7引脚控制数据的输入输出;主机的P2^5、P2^6、P2^7引脚分别连接LCD1602的RW、RS、E引脚控制LCD1602的读/写选择、数据/指令选择和使能信号。如下图所示:

矩阵键盘输入模块:主机的P1端口控制4X4矩阵键盘。矩阵键盘能输入数字0~9、小数点、负号,还有删除、确认、设置上限、设置下限的功能。如下图所示:

DS18B20测温模块:从机的P3^7引脚连接DS18B20的DQ引脚。如下图所示:

关于DS18B20的相关知识,我在之前的文章中介绍过,在此就不赘述了,可以访问下方链接:

https://blog.youkuaiyun.com/weixin_45755708/article/details/142387374?spm=1011.2415.3001.10575&sharefrom=mp_manage_linkhttps://blog.youkuaiyun.com/weixin_45755708/article/details/142387374?spm=1011.2415.3001.10575&sharefrom=mp_manage_link

直流电机模块:从机的P2^0引脚连接驱动芯片ULN2003输入端的1B引脚,ULN2003的输出端的1C引脚连接直流电机的一端,直流电机的另一端接+5V。如下图所示:

蜂鸣器模块:从机的P1^5引脚连接PNP三极管的基极,三级管的发射极接+5V、集电极接蜂鸣器。如下图所示:

串口通信模块:主机的P3^0引脚(即接收端)与从机的P3^1引脚(即发送端)连接;主机的P3^1引脚(即发送端)与从机的P3^0引脚(即接收端)连接。 

四、设计仿真

仿真环境:Proteus 8 Professional

功能描述:

1.从机利用DS18B20检测温度并显示在LCD1602上;
2.从机将检测的温度发送给主机,主机将温度显示在LCD1602的第一行;
3.主机通过矩阵键盘设定报警温度的上下阈值,并将上下阈值显示在LCD1602的第二行;
4.主机将从机发送的温度和上下阈值比较后,发送控制命令给从机;
5.从机收到主机的命令后,执行相应的操作(控制直流电机转动或蜂鸣器报警);

演示视频如下:

基于51单片机的双机通信温度检测报警系统的仿真设计

关于本设计的具体Keil工程和Proteus电路图可访问下方链接:

https://item.taobao.com/item.htm?ft=t&id=900479543031

最重要的一点,祝大家天天开心!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值