【proteus仿真】基于 51 单片机距离传感器警报装置设计(仿真图+程序)

一、项目概述

本项目以STC89C52RC 51 单片机为主控核心,搭配 HC‑SR04 超声波测距传感器,实现距离测量、数码管实时距离显示、按键阈值设置、声光报警功能。可作为倒车防撞、障碍物检测、距离预警的简易方案,适合单片机课程设计、毕业设计入门练习,使用 Proteus 完成电路仿真,Keil C51 编写程序代码。

实现功能:

  1. HC‑SR04 超声波传感器实时测量障碍物距离,四位共阳数码管动态刷新显示测量距离;
  2. 3 个独立按键:加、减、设置警报,支持自定义报警距离阈值;
  3. 当实测距离小于设定报警阈值时,蜂鸣器鸣响 + 红色 LED 点亮,完成声光双重警报;
  4. 具备单片机最小系统:复位电路、11.0592MHz 晶振电路,保障主控稳定运行。

二、Proteus 硬件电路分析

1. 单片机最小系统

主控芯片 STC89C52RC,11.0592MHz 晶振搭配 33pF 起振电容提供系统时钟;上电复位 + 手动按键复位电路,完成系统复位启动。

2. 数码管显示电路

采用74HC573 锁存器驱动四位共阳数码管。P0 口输出段码,74HC573 锁存控制,降低 IO 口负载;排阻上拉,保证数码管亮度稳定,动态扫描实时输出距离数值。

3. HC‑SR04 超声波测距模块

Trig 触发引脚、Echo 回响引脚接入单片机 IO 口。单片机输出触发脉冲,模块发射超声波,接收回波后 Echo 输出高电平,通过测量高电平时间换算出障碍物距离。

4. 按键模块

3 路独立按键接 P1 口,分别实现报警阈值增加、减少、确认设置,可以自由修改触发报警的距离。

5. 声光报警电路

PNP 三极管驱动蜂鸣器,距离达到报警条件时三极管导通,蜂鸣器发声;红色 LED 同步点亮,实现声音 + 灯光双重告警提示。

三、工作原理说明

  1. 测距原理 :单片机给 HC‑SR04 的 Trig 引脚发送 10μs 高电平触发信号,模块发出 8 个 40KHz 超声波;超声波遇到障碍物反射,Echo 引脚输出高电平,高电平持续时间等于超声波往返时间。 距离计算公式:距离 = (高电平时间 × 声速) / 2
  2. 阈值设置:按下设置按键进入阈值调节模式,加减按键修改报警距离,再次按下设置保存阈值;
  3. 报警逻辑 :循环读取当前实测距离,若实测距离 < 设置报警阈值,蜂鸣器与 LED 同时开启报警;距离大于阈值,报警关闭;
  4. 显示逻辑:四位数码管动态扫描,实时刷新当前测量距离。

四、参考代码片段

复制代码
#include <reg52.h>
typedef unsigned int uint;
typedef unsigned char uchar;

sbit Trig = P3^0;
sbit Echo = P3^1;
sbit BEEP = P2^0;
sbit LED_ALARM = P2^1;

uchar code seg_table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
uint distance,alarm_thresh=30; //报警阈值默认30cm

void delay_ms(uint ms){
	uint i,j;
	for(i=ms;i>0;i--)
		for(j=110;j>0;j--);
}

uint get_distance(void)
{
	uint time;
	Trig=0;
	Trig=1;
	delay_ms(1);
	Trig=0;
	while(!Echo);
	TR1=1;
	while(Echo);
	TR1=0;
	time=TH1*256+TL1;
	TH1=0;TL1=0;
	return time*0.017;
}

void main(void)
{
	TMOD |=0x01;
	while(1)
	{
		distance = get_distance();
		//数码管显示距离
		//按键处理阈值省略
		if(distance < alarm_thresh)
		{
			BEEP=0;
			LED_ALARM=0;
		}
		else
		{
			BEEP=1;
			LED_ALARM=1;
		}
	}
}

五、仿真调试要点

  1. 晶振必须设置为11.0592MHz,定时器计时才可以匹配测距时间计算;
  2. 74HC573 锁存器 LE 引脚电平需要正确控制,否则数码管出现乱码、闪烁;
  3. HC‑SR04 仿真模型注意引脚 Trig/Echo 不要接反;
  4. 蜂鸣器必须通过三极管驱动,单片机 IO 口驱动能力不足,不可直接接蜂鸣器;
  5. 阈值调节完成务必保存,否则重启仿真阈值丢失。

六、项目拓展方向

  1. 增加 OLED 屏幕替代数码管,显示中文距离、报警阈值;
  2. 加入串口,把距离数据上传电脑;
  3. 增加继电器输出,距离过近控制外部设备停机;
  4. 修改为倒车雷达,距离越近蜂鸣器鸣叫频率越快。

七、总结

本 51 单片机距离传感器警报装置,硬件电路简洁,逻辑清晰,把超声波测距、按键交互、数码管显示、声光报警完整结合。非常适合初学者掌握外部传感器读取、定时器计时、动态扫描显示、条件报警逻辑。Proteus 仿真可以不用实物硬件,快速验证整体方案效果。

通过网盘分享的文件:仿真文件获取.zip 链接: https://pan.baidu.com/s/1V5zzxbpHc_fRqfGIzSdLfg?pwd=6666 提取码: 6666

相关推荐
NamoAmitabha1282 小时前
嵌入式开发中的定时器---deepseek
单片机·嵌入式硬件
福建佰胜张工2 小时前
深度解析 Allen-Bradley 150-B135NBDA 智能电机控制器:选型、参数与工业应用
运维·数据库·单片机·嵌入式硬件·安全·自动化
secondyoung2 小时前
Cortex-R52与TriCore详细对比
arm开发·单片机·嵌入式硬件·mcu
送外卖的工程师2 小时前
STM32仓库环境监测系统
stm32·单片机·嵌入式硬件
2501_922639583 小时前
率能半导体 SS6840单通道H桥驱动芯片:42V/7A,覆盖打印机、办公自动化、机器人、工业缝纫机四大应用场景
stm32·单片机·嵌入式硬件·硬件工程
天空'之城3 小时前
002基于 STM32 的智能灯光窗帘控制系统
stm32·单片机·毕业设计·智能家居·pwm
电子科技圈3 小时前
芯科科技2026年Tech Talks技术系列讲座再增添全新主题共探无线SoC架构演进与安全合规
科技·嵌入式硬件·mcu·物联网·安全·架构·iot
NYFEA3 小时前
跨协议桥接与高精度传感:我们的接口芯片如何连接物理世界?
嵌入式硬件
Zhao136824553915 小时前
DP4330A 与DP4363 测试对比
嵌入式硬件
辛迪聊物业数字化5 小时前
智慧社区小程序落地避坑指南:3类物业方案选型+成本测算,线上服务零翻车
大数据·嵌入式硬件·百度·系统架构