基于51单片机的温湿度补偿的超声波测距系统设计

1、简介
基于51单片机的带温湿度补偿的超声波测距系统。该设计使用ATC89C51单片机、DHT11温湿度传感器模块、HC_SR04超声波测距模块、LCD1602显示模块。

2、主要功能
a.通过LCD1602显示实际距离、当前温湿度。

3、环境搭建
资料清单:C程序+仿真+设计报告+使用说明+元件清单+操作视频
仿真版本:Proteus8.6及以上版本
编译平台:Keil C51
编程语言:C语言

4、源程序
使用keil C51软件(内附安装包)实现程序编写与编译。

#include <reg51.h>	
#include "LCD1602.h"
#include <intrins.h> 
/*对数据类型进行声明定义*/
typedef unsigned int u16;	  
typedef unsigned char u8;
/*外设IO定义*/
sbit Data = P3^7; //定义DHT11数据线
sbit Trig = P2^6;
sbit Echo = P2^7;
/*变量定义*/
u16 Distance=0;
bit flag =0;		 
u8 TEMP,HR;//采集值

void DHT11_delay_ms(u16 z)
{
   u16 i,j;
   for(i=z;i>0;i--)
      for(j=110;j>0;j--);
}
void DHT11_delay_us(u8 n)
{
    while(--n);
}

void DHT11_start()
{
   Data=1;
   DHT11_delay_us(2);
   Data=0;
   DHT11_delay_ms(30);   //延时18ms以上
   Data=1;
   DHT11_delay_us(30);
}

u8 DHT11_rec_byte()      //接收一个字节
{
   u8 i,dat=0;
   for(i=0;i<8;i++)    //从高到低依次接收8位数据
   {          
      while(!Data);   ////等待50us低电平过去
      DHT11_delay_us(8);     //延时60us,如果还为高则数据为1,否则为0 
      dat<<=1;           //移位使正确接收8位数据,数据为0时直接移位
      if(Data==1)    //数据为1时,使dat加1来接收数据1
         dat+=1;
      while(Data);  //等待数据线拉低    
    }  
    return dat;
}

void DHT11_receive()      //接收40位的数据
{
	u8 R_H,R_L,T_H,T_L,RH,RL,TH,TL,revise; 
  DHT11_start();
  if(Data==0)
	{
		while(Data==0);   //等待拉高     
		DHT11_delay_us(40);  //拉高后延时80us
		R_H=DHT11_rec_byte();    //接收湿度高八位  
		R_L=DHT11_rec_byte();    //接收湿度低八位  
		T_H=DHT11_rec_byte();    //接收温度高八位  
		T_L=DHT11_rec_byte();    //接收温度低八位
		revise=DHT11_rec_byte(); //接收校正位
		DHT11_delay_us(25);    //结束
		if((R_H+R_L+T_H+T_L)==revise)      //校正
		{
				RH=R_H;
				RL=R_L;
				TH=T_H;
				TL=T_L;
		} 
		/*数据处理,方便显示*/
		TEMP=TH;
		HR=RH;
	}
	DisplayOneChar(5,0,'0'+(TEMP/10));
	DisplayOneChar(6,0,'0'+(TEMP%10));
	DisplayOneChar(12,0,'0'+(HR/10));
	DisplayOneChar(13,0,'0'+(HR%10));
}

5、proteus8.6仿真
采用proteus8.6软件(内附安装包)实现仿真设计,如下图所示。proteus软件一般存在高低版本兼容问题,该仿真是通过proteus8.6导出的,所以请尽量使用proteus8.6打开文件,低于proteus8.6的版本不能够正常使用,高于proteus8.6的版本除了proteus8.8/8.9理论上可以正常使用。

实时显示温湿度值和实际距离:
在这里插入图片描述

6、设计资料清单
设计资料主要包括C程序+仿真+设计报告+使用说明+元件清单+操作视频等,设计报告主要包括硬件电路、软件设计、仿真调试等等,仅供参考。由于不定期更新,最新的资料包不一定与下面图片完全一致,但主要资料都有。
在这里插入图片描述

在这里插入图片描述

7、资料获取方式
HH05下载链接1:百度网盘(推荐)
HH05下载链接2:优快云免积分
有偿,非诚勿扰🙏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值