硬件构成:单片机+最小系统+LCD1602液晶显示模块+超声波模块+DS18B20温度采集模块+光线检测模块+ADC0832模块+蜂鸣器模块+LED指示灯模块+按键模块
本设计基于STC89C51/52
- 1.LCD1602液晶显示测量的距离(头部与探头)、温度和看书时间(默认开机是45分钟);
- 2.带有温度补偿功能(DS18B20传感器);
- 3.采用超声波模块测距,测量范围0.02m~4m,精度为0.01m;
- 4.距离小于30cm,蜂鸣器和LED灯报警提示;
- 5.四个按键功能:按键1复位按键、按键2设置、按键3加键、按键4减键;
- 6.附加功能:采用光敏电阻检测光线强弱,AD0832模数转换芯片将模拟量转换成数字量给单片机。光线过强、过弱也会报警提示,按键可以设置光线报警值。
- 【资源下载】下载地址如下(916):https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
//头函数
#include <reg52.h>
#include <intrins.h>
//宏定义
#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;
//温度
uint t_=0;
//显示模式 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;