解析基于ATmega8L的智能LED紧急刹车灯设计
智能LED紧急刹车灯系统是在车辆紧急刹车时,利用LED车灯优异的特性快速点亮刹车灯,警示后车,从而避免事故发生。本文以ATmega8L单片机为核心给出一种智能LED刹车灯的设计方案,该系统设计利用加速度传感器迅速获取车辆加速度的变化,并将结果传输至ATmega8L单片机,ATmega8L单片机再对接收到的信息进行判断、处理,并根据结果决定是否点亮紧急刹车灯。
1 器件选型
1.1 ATmega8L简介
本系统设计选用美国Atmel公司推出的AT-mega8L器件,它是基于增强的AVR RISC 结构的低功耗8位CMOS微控制器,增强型RISC内载Flash的单片机,片上Flash存储器附在用户产品中,可随时编程,易于用户产品设计,便于产品更新。AT-mega8L具有先进的指令集和单时钟周期指令执行时间,其数据吞吐率高达1 MIPS/MHz,从而缓解系统在功耗和处理速度之间的矛盾。同时,ATmega8L内部集成有增强RISC 8位CPU与在线系统编程和应用编程的Flash存储器,使其成为功能强大的单片机,为许多嵌入式控制应用提供了灵活且低成本的解决方案。
ATmega8L内含8 KB的系统内可编程Flash(具有同时读写的能力,即RWW),512字节EEPROM,1KB SRAM,32个通用I/O端口线,32个通用工作寄存器,3个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,面向字节的两线串行接口,10位6路(8路为TQFP与MLF封装)A/D转换器,具有片内振荡器的可编程看门狗定时器,1个SPI串行端口,以及5种可通过软件选择的省电模式。
1.2 MMA1260D简介
本系统设计选用MMA1260D作为加速度传感器。MMA1260D是一款1.5 g的z轴向加速度传感器,它由G-单元和信号调理ASIC电路两部分组成。其中,G-单元是机械结构,采用半导体制作技术、由多晶硅半导体材料制成,并且密封。而信号调理ASIC电路是由积分、放大、滤波、温度补偿、控制逻辑和EEPROM相关电路、振荡器、时钟生成器、以及自检等电路组成,用于完成G-单元测量的电容值向电压输出的转换。
G-单元相当于在两个固定的电容极板中间放置一个可移动的极板。当加速度作用于系统时,中间极板偏离静止位置。利用中间极板偏离静止位置的距离测量加速度,中间极板与一个固定极板的距离增加,而与另一个固定极板的距离减少,且距离变化值相等。距离的变化使得两极板间的电容改变,电容值的计算公式:C=Ae/D,其中A是极板的面积,D是极板间的距离,e是电介质常数。信号调理ASIC电路将G-单元测量的两电容值转换为加速度值,并使加速度与输出电压成正比。滤波单元由二阶开关电容滤波器组成,用Bessel实现平稳的延时响应,从而将脉冲完整保留。自检单元用于保证G-单元和加速计中的电路工作正常,在G-单元中有4个极板,当ST引脚施加高电平时,校准电压加在自检极板和中间极板之间,在电场的作用下使中间极板移动,由信号调理ASIC电路测得的偏移应与输出电压成比例。
2 硬件电路设计
本系统设计的硬件电路主要是由单片机控制电路、传感器与单片机的接口电路、电源电路、发光二极管阵电路等组成。图1所示为系统硬件结构原理图。
2.1 单片机控制电路
单片机控制电路由Atmel公司的ATmega8L型单片机、滤波电容和A/D转换电路构成,用于采集加速度传感器信号,将采集到的信号与预先设置的阈值相比较,控制发光二极管的闪烁,如图2所示。ATmega8L每个端口引脚都有3个寄存器位:DDxn、PORTxn和PINxn。DDxn位于DDRx寄存器,PORTxn位于PORTx寄存器,PINxn位于PINx寄存器。DDxn用于选择引脚方向,DDxn为“1”时,Pxn设置为输出,否则设置为输入。当引脚置为输入时,PORTxn为“1”,上拉电阻使能。如果需要关闭该上拉电阻,可将PORTxn清零,或者将该引脚置为输出。复位时各引脚为高阻态,即使此时并没有时钟在运行。当引脚配置为输出时,若PORTxn为“1”,引脚输出高电平,否则输出低电平。ATmega8L判断和处理加速度传感器MMA1260D测得的信息,若能满足条件则通过PD0、PD1、PD2引脚产生3路信号施加到3个继电器依次对内、中、外三圈的LED灯进行点亮与熄灭控制。若不满足条件,则ATmega8L不输出信号。
2.2 传感器与单片机的接口电路
MMA1260D加速度传感器对汽车加速度数据进行采集并通过ATmega8L的PC0端口(ADC0)传输至ATmega8L,MMA1260D加速度传感器的输出电压与加速度成正比。为了测量加速度传感器的输出电压,通常使用带有A/D的微控制器,具体连接如图3所示。VOUT与A/D IN引脚之间的RC具有滤波,用于减小时钟噪声。加速度传感器与微控制器之间不能存在大电流。电源与地之间的0.1 μF电容为去耦电容。加速度传感器要尽可能的靠近微控制器放置。同时为了使体积尽可能小,器件通常选用表贴封装。
2. 3 稳压电源电路
稳压电源电路由7805组成,可将外接电源转换为稳定的+5 V电源,并由VOUT输出,向ATmega8L和MMA1260D提供稳定的5 V电源。该电路主要由二极管、电阻、三端稳压管、电容构成。当紧急刹车时,+12 V先通过电阻降压(主要是为了三端稳压管散热),然后再通过三端稳压管电路稳定于+5 V,并与单片机、发光二极管及加速度传感器电路连接。
2.4 发光二极管阵电路
发光二极管电路由LED、二极管和电阻构成,LED车灯的放置遵循由内到外摆成3圈,用于紧急刹车灯时由内→中→外→内循环点亮熄灭,且亮度较高,以此警示后面的司机注意刹车。该电路主要由ATmega8L单片机的3个引脚控制,其LED车灯放置如图4所示。
3软件设计
根据系统硬件设计的相关要求,软件设计用于完成系统的初始化、对加速度传感器信号提取与分析,并根据设置的门限来决定是否点亮紧急灯。系统软件流程设计如图5所示。通过对ATmega8L进行嵌入式C语言编程,实现紧急刹车灯功能。一旦系统满足门限条件,软件编程可使内、中、外三圈灯通过延时不断以高亮度闪烁,并循环判断条件来决定是否继续点亮刹车灯,这样就易于引起后面汽车司机的警觉。一旦门限条件不满足,刹车灯熄灭,单片机继续等待中断。