基于AVR单片机的便携式醉酒驾驶仪器设计 - 包含原理图和完整代码 联系客服

发布时间 : 星期三 文章基于AVR单片机的便携式醉酒驾驶仪器设计 - 包含原理图和完整代码更新完毕开始阅读5a5fe11fc281e53a5802ff14

图表 6

5、蜂鸣器报警子程序:传感器输入值经A/D转换后,调用比较程序,再经过数据处理后显示的测量值与程序中设定的报警阈值比较,小于等于阈值则继续执行显示程序,大于阈值则将单片机PA5端口输出高电平进行报警。

9

大于阈值 蜂鸣器报警

图表 7

四、 测试过程处理

调试分析包括硬件调试分析和软件调试分析及软、硬件联调。由于硬件调试分析和软件调试分析是独立进行的,所以可以先调硬件再调软件。在调试中找出错误、缺陷,判断各种故障,并做出软硬件的修改,直至设计作品能够正确体现其功能。 1、硬件调试

硬件调试包括传感器电路、显示电路、单片机外围电路、报警电路等。下面主要介绍传感器电路、报警电路的调试。

首先把MQ303A酒精传感器,接1.5v左右电压上由于电压预热3秒以上,酒精传感器里已经集成了放大电路,而用万用表测量可证实传感器输入电路中输出是一稳定的0-5V的电压信号,符合单片机的输入条件,因此此信号可以直接接人单片机进行A/D转换而不需要放大、滤波等。

其次对于声光报警电路的调试分为蜂鸣器和LED的调试。经试验可知蜂鸣器在高电平时正常工作,LED为共阳极。 2、仿真调试

10

软件调试为利用ICCAVR,CVAVR,AVR Studio软件进行模块化调试。调试过程中观察各个变量的变化,查找所写程序的错误,并改正。

ADC 转换结果

转换结束后(ADIF 为高),转换结果被存入ADC 结果寄存器(ADCL, ADCH)。 单次转换的结果如下:

1024是2的10次方,因为转换结果是10位的

仿真电路图:

报警时:

11

不报警时:

3、综合调试

利用AVR Studio软件和硬件电路板进行软硬件联合仿真,首先将软件程序下载到AVR Studio中,然后运行一下,确认无误后,再把程序写入硬件之中。对调试过程中出现的错误要仔细分析,然后不断修正,直至达到理想效果为止。在软硬件联调时,根据在程序中设定的阈值,用酒精渐渐接近传感器来模仿酒精浓度的增大,显示结果良好,报警结果十分精确,在到达阈值时能够准确发出报警声。 4、测试过程问题分析:

1、 PCB板多处电路不通,只能在开发板上调试 2、 MQ-3传感器的输入和输出非线性,因此计算它的浓度和输出电压的值的关系非常困难,

我们只能测出数据,然后折合为几条曲线,通过编程控制输出,由于硬件参数存在的误差,开始我们的输出数据不理想,通过多次调试,逐渐把它的输入和输出值接近真实值。 3、 该开发只能在100-1000这个值内进行工作,由于受加热温度的影响,加热时间对输出有

比较大影响,所以超出这个范围,我们都强制它等于0,这个范围已经可以够我们进行酒后驾车的测试了,避免了超出输出范围,很难进行数据的处理这个方面的设计。 4、 酒精传感器的电阻值随时间,温度和酒精浓度变化较大,这是我们不能进行定量计算的

难点。

5、 用酒靠近传感器进行测量,有相应的数据输出,但撤去酒精的时候,数值只能缓慢地下

降至低值,可能是因为酒精残留的缘故。所以酒精传感器不能进行快速的多次测量。这

12