历史上的今天
今天是:2024年10月19日(星期六)
2019年10月19日 | 51单片机防酒后驾驶 MQ-3酒精检测系统的仿真
2019-10-19 来源:51hei
基于单片机的防酒后驾驶控制系统的仿真图:
课题任务的内容和要求
(1) 学习气体测量传感器的原理和使用,并完成数据采集、调理电路的设计;
(2) 学习单片机系统的设计及编程,完成系统整体设计;
(3) 通过不同颜色显示灯及触发措施,对应三种酒精含量范围(醉酒状态、少量饮酒状态、正常状态),;
(4) 测量结果动态显示。
酒精传感器采集酒精浓度信息,将其转化为变化的电压信号。电压信号经过处理后通过A/D转换电路实现对信号的模数转换,然后送至单片机系统进行逻辑判断处理。如果驾驶员未饮酒,LED显示绿灯,汽车正常启动;如果驾驶员处于少量饮酒状态,LED显示黄灯,且会发出声光报警;如果驾驶员处于醉酒状态时,LED显示红灯,且会控制继电器动作,自动切断汽车启动系统电源,从而使汽车无法启动,有效的防止驾驶员酒后驾车。
流程图:

MQ-3模块的资料:
单片机源程序:
#include #include<1602.h> sbit CL=P2^2; sbit ST=P2^3; sbit OE=P2^5; sbit EOC=P2^4; //这四个是定义AD转换器的 sbit DOUT=P3^2; //传感器TTL输出接单片机外部中断0 sbit SK=P2^6; //蜂鸣器 uchar code WU[]=" Welcome use "; uchar code TS[]="Alcohol Tester"; uchar code YC[]=" You Can Drive!"; uchar code YN[]=" It's Dangerous!"; uchar code GD[]="Drive carefully"; uchar code AP[]="Watch out,Please"; uchar code YD[]=" You have drunk"; uchar code FS[]="Forbidden Start!"; uchar nd[]="Alcohol: ppm "; uchar i=0,flag=0; uint Z; /*******************蜂鸣器报警**************/ void Beep(uchar t) { uchar i,j; for(i=0;i<200;i++) { SK=~SK; for(j=0;j SK=1; } /*******************AD转换**************/ void AD0809() { ST=0; ST=1; ST=0; // 启动ADC0809 while(EOC==0); // 等待数据转化 OE=1; // 传输数据 Z=P1; OE=0; // 关闭传输数据 delay(1); Z=Z*500.0/255; nd[10]=(Z/100-1)*2+Z%100/10/5+'0'; nd[11]=(Z%100/10%5)*2+'0'; nd[12]='0'; } /*******************主函数**************/ void main() { lcd_init(); lcd_pos(0); dis_date(WU); lcd_pos(0x41); dis_date(TS); delay(2000); EA=1; // 开放总中断 EX0=1; // 允许外部中断0 ET0=1; // 允许定时器0中断 TCON=0x01; // 外部中断0下降沿触发 TMOD=0X01; // 定时器工作方式1 TR0=1; // 打开定时器0 TH0=(65536-100)/256; TL0=(65536-100)%256; //设置T0工作频率 OE=0; while(1) { AD0809(); if(flag==1) // 进入酒精检测模式 { lcd_pos(0); dis_date(nd); if(nd[10]>0x32) { P3=0x3b; // 醉酒饮酒 lcd_pos(0x40); dis_date(FS); } else { P3=0xdb; //少量模式 lcd_pos(0x40); dis_date(YN);
史海拾趣
|
我想找些V型MEMS热微执行器在实际应用中有关[url=https://bbs.eeworld.com.cn/thread-75155-1-1.html]驱动[/url]力和[url=https://bbs.eeworld.com.cn/thread-75155-1-1.html]驱动[/url]位移的具体数据,网上一直没找到,在这希望各位帮帮忙,谢谢 ...… 查看全部问答> |
|
DSP+BUILDER与VHDL混合设计方法实现DDS信号源 本帖最后由 paulhyde 于 2014-9-15 08:55 编辑 DSP+BUILDER与VHDL混合设计方法实现DDS信号源 … 查看全部问答> |
|
我用MSP430的spi口控制cc1100。数据已经写到spi口的缓冲区内。请问怎么知道数据应经通过cc1100发送出去? void main(void) { INT8U txBuffer[4]; &nbs ...… 查看全部问答> |
|
我在定制好CE6.0的平台后,建立了一个MFC Smart Deviece Application 。选的Dialog其他的没有设置。然后进去了。我想看看是否有错,创建完之后我就build solution一下,但是报出了57个错误和11个警告。我都疯了。会不会是因为我的SDK没有定制好? ...… 查看全部问答> |
|
特意设计了一款MJ经典造型的帽子台灯,将MJ表演时常带的帽子作为台灯灯罩,内置,而巧妙之处在于就是倾斜帽子的角度,将帽子向上掀起台灯就会亮起,相反将帽子向下压台灯就会熄灭。 加上这款LED科技的星光浴缸Nirvana,能使你洗 ...… 查看全部问答> |
|
TI目前提供了书序库下载,配合CCS使用。16位的MCU毕竟是有其性能上限的,目前的这个库提供的浮点计算可以提高26倍的计算性能(来自介绍说明)。 不过还没有验证过,但是数学库的提供明显更方便使用了。 目前仅支持:5系列、6系列和FRAM系列,附件 ...… 查看全部问答> |
|
「ADI模拟大学堂」DSP/嵌入式系统设计的基础(2013.6.6) replyreload += \',\' + 1483173;「ADI模拟大学堂」DSP/嵌入式系统设计的基础(2013.6.6) (每日一份资料) 从今天开始,「ADI模拟大学堂」开始每天更新一份资料,资料更新目录在后面,希望大家支持。希望能获得大家的回帖,我也不用做回复可见。 ...… 查看全部问答> |




