目录

  • 1、主要功能
  • 2、仿真图
  • 3、实验验证
  • 4、程序源码

1、主要功能

如果实际的酒精值小于报警值且在正常显示状态下:绿灯闪,关蜂鸣器和继电器;如果实际的酒精值大于报警值且在正常显示状态:红灯闪,开蜂鸣器和继电器。

2、仿真图

3、实验验证

基于51单片机的酒精测试仪

4、程序源码

/*************************************** Copyright ****************************** File name: // 酒精检测Author:KevinVersion: //1.0Description: // 用于详细说明此程序文件完成的主要功能Others: // 其它内容的说明Log: // 公众号:Kevin的学习站*******************************************************************************///程序头函数
#include <reg52.h>
//显示函数
#include <display.h>
#include <intrins.h>
#include "eeprom52.h"
#include "temp.h"//宏定义
#define uint unsigned int
#define uchar unsigned char
#define Data_ADC0809 P1//管脚声明
sbit P34=P3^4;//温度
sbit LED_R= P2^2; //红指示灯
sbit LED_G= P2^0; //绿色指示灯
sbit FENG = P2^5; //蜂鸣器
//ADC0809
sbit ST=P3^3;
sbit EOC=P3^6;
sbit OE=P3^2;
//按键
sbit Key1=P2^6;    //设置按键
sbit Key2=P2^7; //加
sbit Key3=P3^7;    //减
bit bdata flag;//指示灯和蜂鸣器闪烁报警标志位
uchar set;     //设置标志位//函数声明
extern uchar ADC0809();
extern void Key();//酒精含量变量
unsigned int temp=0;
unsigned int WARNING=25; // 初始报警值
/******************把数据保存到单片机内部eeprom中******************/
void write_eeprom()
{SectorErase(0x2000);byte_write(0x2000, WARNING);byte_write(0x2060, a_a);
}/******************把数据从单片机内部eeprom中读出来*****************/
void read_eeprom()
{WARNING   = byte_read(0x2000);a_a      = byte_read(0x2060);
}/**************开机自检eeprom初始化*****************/
void init_eeprom()
{read_eeprom();     //先读if(a_a != 1)      //新的单片机初始单片机内问eeprom{WARNING=25;a_a = 1;write_eeprom();       //保存数据}
}
//初始化函数
void init()
{TMOD=0x01; //定时器0方式1TL0=0xb0;TH0=0x3c;TL1=65000/256;TH1=65000/256;  //赋初值EA=1;  //开总中断ET0=1;    //允许定时器0中断TR0=1;    //定时器0开
}//主函数
void main()
{Init1602();    //1602初始化init_eeprom();  //开始初始化保存的数据init();     //初始化函数while(1)//主循环{if(set==0) //如果没有按下设置(默认set是0,就是正常显示状态){temp=ADC0809();    //读取酒精值Display_1602(temp,WARNING,ReadTemperature());     //显示酒精值}if(temp<WARNING&&set==0)   //如果实际的酒精值小于报警值且在正常显示状态下{flag=0;  //执行下面flag=0的(主要就是绿灯闪,关蜂鸣器和继电器)}else if(temp>WARNING&&set==0)  //如果实际的酒精值大于报警值且在正常显示状态下{flag=1; //执行下面flag=1的(主要就是红灯闪,开蜂鸣器和继电器)}Key();//按键扫描}
}
//ADC0809读取信息
uchar ADC0809()
{uchar temp_=0x00;//初始化高阻太OE=0;//转化初始化ST=0;//开始转换ST=1;ST=0;//外部中断等待AD转换结束while(EOC==0)//读取转换的AD值OE=1;temp_=Data_ADC0809;OE=0;return temp_;
}
//按键函数
void Key()
{if(Key1==0)  //如果设置按键按下{while(Key1==0);//等待按键释放FENG=0;   //蜂鸣器响set++;  //设置的变量加1flag=0;    //绿灯闪TR0=0; //关定时器0write_com(0x0f);//打开显示 无光标 光标闪烁write_com(0x80+15);//位置
//          write_com(0x06);//当读或写一个字符是指针后一一位FENG=1;    //蜂鸣器关}if(set>=2)   //又按了下设置{set=0;  //正常显示状态
//      write_com(0x38);//屏幕初始化write_com(0x0c);//打开显示 无光标 无光标闪烁FENG=1;    //蜂鸣器关flag=1;   //红灯闪TR0=1; //定时器0开}if(Key2==0&&set!=0)    //在设置的状态下按下加{while(Key2==0);    //等待按键释放FENG=0;       //蜂鸣器响WARNING++;  //报警值加1if(WARNING>=255)  //如果报警值大于等于255WARNING=0;       //报警值归零write_com(0x80+13);write_data('0'+WARNING/100); write_data('0'+WARNING/10%10);write_data('0'+WARNING%10);       //显示报警值//write_com(0x80+0x40+13);//调整位置FENG=1;     //蜂鸣器关write_eeprom();             //保存数据}if(Key3==0&&set!=0)     //在设置的状态下按下减{while(Key3==0);    //等待按键释放FENG=0;         //蜂鸣器响WARNING--;  //报警值减1if(WARNING<=0) //如果报警值小于等于0WARNING=255;    //那么报警值为255write_com(0x80+13);write_data('0'+WARNING/100);write_data('0'+WARNING/10%10);write_data('0'+WARNING%10);//write_com(0x80+0x40+13);//调整位置FENG=1;    //蜂鸣器关write_eeprom();             //保存数据}
}void  time1_int(void) interrupt 1 //定时器中断0
{uchar count;TL0=0xb0;TH0=0x3c;  //重赋初值50mscount++;  ///溢出值加1if(count==10)  //如果时间到半秒{if(flag==0)    //如果flag为0{LED_G=0;  //绿灯亮LED_R=1;  //红灯灭FENG=1;     //蜂鸣器关}if(flag==1)      //如果flag为1{LED_G=1;   //绿灯关LED_R=0;   //红灯亮FENG=0;       //蜂鸣器开}}if(count==20)      //如果时间到1秒{count=0;   //溢出值清零if(flag==0)   //如果flag为0{LED_G=1; //绿灯关LED_R=1;   //红灯灭FENG=1;       //蜂鸣器关}if(flag==1)     //如果flag为1{LED_G=1;   //绿灯关LED_R=1;   //红灯灭FENG=1;       //蜂鸣器关}}
}

其它毕设/课设资源
基于51单片机的智能温控风扇
基于51单片机的智能水箱控制系统
基于51单片机的智能家居安防系统
基于51单片机的计算器设计
基于单片机的声光电子琴
自动浇花系统的设计
基于51单片机数字电压表的设计
基于51单片机的CO浓度报警器设计
基于51单片机的温度报警器设计
51单片机+PM2.5+温湿度
基于51单片机的智能小车
基于51单片机+超声波模块的避障小车
基于51单片机的四通道交通灯设计

项目的仿真和程序工程已经放在下面公众号里面,可以关注公众号:Kevin的学习站,输入关键字:“51酒精测试仪”,就可以获取啦!创作不易,但您的点赞、关注、收藏就是对我最大的鼓励!

基于51单片机的酒精检测仪相关推荐

  1. 基于51单片机的酒精浓度检测仪设计

    本设计仅供参考 基于51单片机的酒精浓度检测仪设计(proteus仿真+程序+原理图+报告) 原理图:Altium Designer 仿真:proteus 8.9 程序编译器:keil 4/keil ...

  2. 基于51单片机智能有毒气体检测仪设计(煤气、酒精、co)(转发分享)

    本设计由STC89C52单片机电路+LCD1602液晶显示电路+MQ-2甲烷传感器模块电路+MQ-3酒精传感器模块电路+MQ-9 CO传感器电路+A/D采样PCF8591电路+蜂鸣器报警电路+LED指 ...

  3. 基于51单片机 + MQ-3酒精传感器 + ADC0832模数转换器 + LCD1602液晶显示器的酒精检测系统

    一.简介 废话不多说,直接上东西.本文是基于51单片机的酒精检测系统设计,用的元器件有:51单片机.MQ-3酒精传感器.ADC0832模数转换器. LCD1602液晶显示器.喇叭等元器件. 二.仿真题 ...

  4. 基于51单片机的酒精浓度检测量仪proteus仿真程序原理图设计数码管液晶LCD1602显示

    硬件设计 (末尾附文件) 仿真文件中的酒精传感器均是用滑动变阻器来模拟 基于数码管显示: 基于LCD1602显示: 程序设计 //程序头函数 #include <reg52.h> //显示 ...

  5. 基于51单片机多功能智能心率检测仪设计(毕设课设)

    这是一款基于51单片机的心率检测仪,可以在LCD1602液晶显示屏上显示你的心率,而且误差非常小,代码结构简单,易于理解,非常适合大众. 而且想做毕业设计的同学,我也附上了我自己写的设计报告,可供大家 ...

  6. 51单片机mq3酒精浓度检测mq3酒驾醉驾检测酒精报警ADC0832采集

    实践制作DIY- GC0058-mq3酒精报警器,酒驾报警器 一.功能说明: 基于51单片机设计-mq3酒精报警器,酒驾报警器 二.功能介绍: STC89C52单片机(AT89C51/52)+lcd1 ...

  7. 基于51单片机的公交车安全智能检测系统、基于51单片机的金属探测仪控制设计、基于单片机的智能电子密码锁系统设计、基于51单片机酒精浓度检测仪设计【资料转发分享】

    630基于51单片机的公交车安全智能检测系统-设计资料 本资料是基于单片机的公交车安全监测系统 具有如下功能: 1.监测环境的温度,超标报警.可以设置上下限 2.监测是否有火灾以及有毒气体,超标报警, ...

  8. 基于单片机的智能电子密码锁系统设计-基于51单片机酒精浓度检测仪设计-基于单片机的水缸加热温控控制系统设计-基于单片机蓝牙技术的温室监测系统设计-基于单片机智能PWM调光灯系统设计【毕设方案】

    600基于单片机的智能电子密码锁系统设计-电路程序资料 本设计采用的是AT89C51单片机作为控制核心,控制外围电路工作的装置.在本次基于单片机的电子密码锁设计中,将采用AT89C51单片机作为控制核 ...

  9. 基于51单片机酒精浓度检测报警系统

    具体实现功能 由STC89C51单片机+MQ-3酒精传感器+ADC0832模块+LCD1602模块+报警模块+电源构成. 具体功能: 1.LCD1602实时显示酒精浓度: 2.可以按键设置报警值,实现 ...

最新文章

  1. python logsumexp示例
  2. 【CV春季划】170分钟学习OpenCV与经典图像处理算法基础
  3. SAP常见问题与解决办法
  4. 爬虫笔记7正则表达式与re库
  5. mysql安装提示language错误_MySQL 安装 CMake Error CMAKE_CXX_COMPILER not set
  6. mongodb数据库淘汰_mongodb 内存数据淘汰策略
  7. 力扣面试题 01.08. 零矩阵
  8. html5页面值在另一个页面反显,2009年上海市高校计算机等级考试(一级A卷)及理论题参考答案...
  9. 雷军:明年2千元以上支持5G的手机,至少发布10款
  10. 魅族android面试题,【魅族小米IT面试题】面试问题:Android… - 看准网
  11. JavaScript的类型转换(字符转数字,数字转字符)
  12. 安装Windows NT4.0
  13. 爱了爱了!0.052 秒打开 100GB 数据,这个开源库火爆了!
  14. 短视频解析技术原理,去水印原理分析整理汇总
  15. PyQt环境的搭建:安装python+pyqt+eric
  16. 如何解决网站不安全信息?免费SSL证书
  17. 用Python摘抄《大道争锋》中的诗句
  18. iOS-----GitHub上比较齐全的iOS 工具和App
  19. 两种批处理方式(操作系统)
  20. 电脑族科学护眼五常识

热门文章

  1. mysql表名能大写么_MySQL中表名大小写问题
  2. 计算机考研复试----技术前沿知识
  3. Nodejs做后端,实现文件压缩下载的几种方案(archiver、compressing、linux的zip命令):
  4. 电子商务策划之商品属性规划
  5. DEBUG: Filtered offsite request to
  6. 情感分析论文阅读之《Aspect Level Sentiment Classification with Deep Memory Network》
  7. 【书影观后感 十四】左晖-做难而正确的事
  8. Jconsole简介
  9. 微软亚太科技有限公司董事长申元庆:微软智能云的核心DNA
  10. 华强北众多三代版本如何选购?