基于51单片机超声波测量报警LCD1602显示( proteus仿真+程序+设计报告+讲解视频)

基于51单片机超声波测量报警LCD1602显示

  • [1. 主要功能:](#1. 主要功能:)
  • [2. 讲解视频:](#2. 讲解视频:)
  • [3. 仿真](#3. 仿真)
  • [4. 程序代码](#4. 程序代码)
  • [5. 设计报告](#5. 设计报告)
  • [6. 下载链接](#6. 下载链接)

基于51单片机超声波测量报警LCD1602显示( proteus仿真+程序+设计报告+讲解视频)

仿真图proteus8.15(有低版本)

程序编译器:keil 4/keil 5

编程语言:C语言

设计编号:P20

1. 主要功能:

基于51单片机的超声波测距报警设计

具体功能

1、51单片机驱动超声波模块HC-SR04获取超声波测试距离,带有超声波精度温度补偿;

2、LCD1602液晶显示测量的距离和温度;

3、可以通过按键设置距离报警上下限值;

按键功能有:距离加键,距离减键,距离设置键。

4、超过设定的报警上下限值则开始蜂鸣器报警。

(目前仅完全适配普中51-实验板234,其他普中开发板型号可能需要做代码修改或额外接线)

需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

以下为本设计资料展示图:

2. 讲解视频:

讲解视频包含仿真运行讲解和代码讲解

3. 仿真

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。

液晶LCD1602显示测量温度和测量距离值。测量距离值超过报警值后蜂鸣器报警。

按下设置键可以设置超声波测距的报警上下限值。

4. 程序代码

使用keil4或者keil5编译,代码有注释,可以结合视频理解代码含义。

复制代码
//宏定义
#define uchar unsigned char 
#define uint unsigned int
#define ULint unsigned long int //温度零上与零下的标志位
char flag=0;				    //超声波
char flags=0;				    //超声波距离
char flag1s=0;				    //计算定时间
uint time=0;				    //计算距离
ULint L_=0;					    //温度
int t_=0;				        //显示模式  0正常  1最大值调整  2最小值调整
uchar mode=0;

uint Max=200;
uint Min=30; //按键标志
uchar k=0;	  //数值有误
uchar FW=0;	 //头函数
#include <reg51.h>
#include <intrins.h>
#include "key.h"	   	 //按键
#include "display.h"			 //显示头函数
#include "ultrasonic_wave.h"//超声波头函数
#include "DS18B20.h"	   	 //温度传感器头函数

//函数声明
void delayms(uint ms);

/*********************************************************/
// 毫秒级的延时函数,time是要延时的毫秒数
/*********************************************************/
void Delay_Ms(uint time)
{
	uint i,j;
	for(i=0;i<time;i++)
		for(j=0;j<112;j++);
}
//主函数
void main()
{
	uchar time_cnt=0;
	Init_ultrasonic_wave();
	//屏幕初始化
	Init1602();
	//温度初始化
    while(tmp() == 850)		// 等待温度传感器初始化完成
    {
        Delay_Ms(10);
    }
	//循环显示
	while(1)
	{
	
		Key();
		time_cnt++;
		//正常显示
//		Feng_Start();
		if(mode==0)
		{
			if((time_cnt%100)==0){
				StartModule();//启动超声波
				while(!RX);	  //当RX为零时等待
				TR0=1;		  //开启计数
				while(RX);	  //当RX为1计数并等待
				TR0=0;		  //关闭计数
		
				delayms(1);  //1MS
	//			tmpchange();  //温度转换
				t_=tmp();     //度温度
				Conut(t_/10); //计算距离
				Display_1602(t_/10,L_);
				}

			if(L_>Max||L_<Min)
			{
				Feng_Start();
			}
			else
			{
				if(FW!=1)
				Feng_Stop();
			}
		
		}
		//调整显示
		else if(mode!=0)
		{
			//最大最小值
			Init_MaxMin();
			while(mode!=0)
			{
				
				Key();
				if(k==1&&mode==1)
				{
					Init_MaxMin();	
   				write_com(0x8d);//设置位置					
				}
				else if(k==1&&mode==2)
				{
					Init_MaxMin();	
   				write_com(0x8d+0x40);//设置位置	
				}
				k=0;
			}
			//界面初始化
			Init1602();
		}
	}
}

void delayms(uint ms)
{
	uchar i=100,j;
	for(;ms;ms--)
	{
		while(--i)
		{
			j=10;
			while(--j);
		}
	}
}


//T0中断用来计数器溢出,超过测距范围
void CJ_T0() interrupt 1
{
    flags=1;							 //中断溢出标志
}

5. 设计报告

10877字设计报告,内容包括硬件设计、软件设计、软硬件框图、调试、结论等

单片机技术的迅速兴起与蓬勃发展,其稳定、安全、高效、经济等优点十分突出,所以其应用也十分广泛。单片机已经无处不在、与我们生活息息相关,并且渗透到生活的方方面面,如空调、VCD机、手机、微波炉、自动洗衣机及汽车电子设备等。单片机的特点是体积较小,也就是其集成特性,其内部结构是普通计算机系统的简化,增加一些外围电路,就能够组成一个完整的小系统,单片机具有很强的可扩展性。它具有和普通计算机类似的、强大的数据处理功能,通过使用一些科学的算法,可以获得很强的数据处理能力。所以单片机在工业应用中,可以极大地提高工业设备的智能化、数据处理能力和处理效率,而且单片机无需占用很大的空间。

同时,随着社会的发展和进步,超声波测距系统日益重要,应用范围迅速扩大,由于超声测距是一种非接触检测技术,不受光线、被测对象颜色等的影响,在较恶劣的环境(如含粉尘)具有一定的适应能力,因此用途极度广泛。在测绘地形图,建造房屋、桥梁、道路、开挖矿山、油井等,倒车雷达、建筑施工工地以及一些工业现场,例如液位、井深、管道长度等场合应用比较普遍。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求。

6. 下载链接

链接: https://pan.baidu.com/s/1PcmNvNvHzeBh3VchH_sS5A?pwd=j6h9

提取码: j6h9

资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

0、常见使用问题及解决方法--必读!!!!

1、程序

2、proteus仿真

3、功能要求

4、软硬件流程图

5、开题报告

6、设计报告

7、烧录工具

8、讲解视频

9、实物图

Altium Designer 安装破解

KEIL+proteus 单片机仿真设计教程

KEIL安装破解

Proteus元器件查找

Proteus安装

Proteus简易使用教程

单片机学习资料

相关数据手册

答辩技巧

设计报告常用描述

鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url

相关推荐
穿越光年21 分钟前
MCP实战:在扣子空间用扣子工作流MCP,一句话生成儿童故事rap视频
人工智能·音视频
深圳市青牛科技实业有限公司 小芋圆24 分钟前
CS4334:一款高性能的立体声音频数模转换器
科技·嵌入式硬件·音视频·智能家居·新能源·工控主板
小陈从不熬夜1 小时前
HarmonyOS AVPlayer 音频播放器
华为·音视频·鸿蒙
编程、小哥哥3 小时前
Java面试场景:从音视频到AI应用的技术探讨
spring boot·spring cloud·微服务·音视频·java面试·ai应用
白熊1883 小时前
【图像生成大模型】Step-Video-T2V:下一代文本到视频生成技术
人工智能·opencv·yolo·计算机视觉·大模型·音视频
小咖自动剪辑4 小时前
美女热舞混剪视频批量剪辑生产技术实践:智能处理与原创性提升方案解析
实时互动·音视频·语音识别·实时音视频·视频编解码·美女
gantengsheng14 小时前
基于51单片机和8X8点阵屏、矩阵按键的记忆类小游戏
51单片机·小游戏·矩阵按键·普中开发板·stc89c52rc·记忆类·8x8点阵屏
小辉懂编程15 小时前
C语言:51单片机实现数码管依次循环显示【1~F】课堂练习
c语言·开发语言·51单片机
Unlimitedz15 小时前
iOS音视频解封装分析
ios·音视频
三块钱079419 小时前
【原创】基于视觉大模型gemma-3-4b实现短视频自动识别内容并生成解说文案
开发语言·python·音视频