539 基于单片机超声波视力保护系统设计-毕设课设

摘要:

本文设计了一种基于STC89C51/52单片机的超声波视力保护系统。该系统通过超声波模块测距,实时显示头部与探头的距离、温度以及看书时间,并具备温度补偿、光线检测及报警提示功能。系统硬件包括最小系统、LCD1602液晶显示模块、超声波模块、DS18B20温度采集模块、光线检测模块、ADC0832模块、蜂鸣器模块、LED指示灯模块以及按键模块。实验结果表明,该系统能够实现精确测距、温度补偿和光线检测,为视力保护提供了有效的技术支持。

一、引言

随着科技的不断发展,人们对视力保护的重视程度日益提高。超声波视力保护系统作为一种新型的视力保护手段,具有实时性好、精度高、操作简便等优点,受到了广泛关注。本文旨在设计一种基于单片机的超声波视力保护系统,通过超声波测距、温度补偿和光线检测等功能,实现视力保护的目的。

二、系统硬件设计

本系统以STC89C51/52单片机为核心,结合最小系统、LCD1602液晶显示模块、超声波模块、DS18B20温度采集模块、光线检测模块、ADC0832模块、蜂鸣器模块、LED指示灯模块以及按键模块等构成完整的硬件系统。

  1. 单片机及最小系统:STC89C51/52单片机作为系统的核心控制器,负责整个系统的数据处理和逻辑控制。最小系统为单片机提供必要的电源、时钟和复位电路,确保单片机的稳定运行。

  2. LCD1602液晶显示模块:用于实时显示头部与探头的距离、温度和看书时间。LCD1602具有显示清晰、功耗低等优点,适合用于本系统的信息显示。

  3. 超声波模块:采用超声波测距原理,实现头部与探头距离的实时测量。测量范围0.02m~4m,精度为0.01m,满足视力保护系统的要求。

  4. DS18B20温度采集模块:用于实时采集环境温度,为系统提供温度补偿功能。DS18B20传感器具有精度高、响应速度快等特点,适用于本系统的温度采集。

  5. 光线检测模块与ADC0832模块:光敏电阻作为光线检测元件,将光线强弱转换为模拟信号。ADC0832模数转换芯片将模拟信号转换为数字信号,供单片机处理。通过按键可以设置光线报警值,实现光线过强或过弱时的报警提示。

  6. 蜂鸣器模块与LED指示灯模块:当头部与探头的距离小于30cm或光线过强、过弱时,蜂鸣器和LED指示灯将发出报警提示,提醒用户注意视力保护。

  7. 按键模块:包括复位按键、设置按键、加键和减键,用于实现系统的参数设置和复位功能。

三、系统软件设计

系统软件设计主要包括初始化程序、测距程序、温度采集程序、光线检测程序、显示程序以及报警程序等。初始化程序负责系统各模块的初始化设置;测距程序通过超声波模块实现距离的实时测量;温度采集程序利用DS18B20传感器获取环境温度;光线检测程序通过ADC0832模块将光敏电阻的模拟信号转换为数字信号;显示程序将测距结果、温度和看书时间显示在LCD1602液晶屏上;报警程序根据设定的阈值实现蜂鸣器和LED指示灯的报警提示。

四、实验结果与分析

通过实际测试,本系统能够实现精确的超声波测距、温度采集和光线检测功能。LCD1602液晶显示屏能够实时显示测量数据,蜂鸣器和LED指示灯在距离过近或光线异常时能够发出报警提示。同时,系统具有操作简便、稳定性好等优点,能够满足视力保护的需求。

五、结论与展望

本文设计了一种基于单片机的超声波视力保护系统,通过超声波测距、温度补偿和光线检测等功能,实现了视力保护的目的。实验结果表明,该系统具有较高的实用性和可靠性,为视力保护提供了一种有效的技术手段。未来,可以进一步研究如何提高系统的测距精度和稳定性,以及拓展更多的视力保护功能,以满足不同用户的需求。


//显示模式  0正常  1计时时间调整  2最小值调整
uchar mode=0;

char min=45;
char sec=0;
char Mini=30;
char HG=70;
char LG=30;
//按键标志
uchar k=0;
//数值有误
uchar FW=0;
uint light=0;

/*********************************端口定义**********************************/
sbit CS   = P2^3;
sbit Clk = P2^0;
sbit DATI = P2^1;
sbit DATO = P2^1;

/*******************************定义全局变量********************************/
unsigned char dat = 0x00;      //AD值
unsigned char CH=0;       //通道变量
//uchar pdata tt[51];		   //定义空数组用于AD取平均值
bit bdata flag_BJS=0,flag_BJC=0,flag_BJG=0,jishi=1;
#include "BJ_Key.h"	   	 //报警按键
#include "display.h"			 //显示头函数
#include "ultrasonic_wave.h"//超声波头函数
#include "DS18B20.h"	   	 //温度传感器头函数
点击并拖拽以移动

  

 【资源下载】下载地址:点击下载(539) https://docs.qq.com/doc/p/ffc421513a628b30450ae742547c0b850456d7c8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值