当前位置:首页 > 嵌入式 > 嵌入式硬件

1 引言

汽车发生追尾的真正原因是因为前后车“刹车不同步”。急刹车时,后车司机始终滞后于前车,对于120 km/h的车速,需要向前多冲17米。

哪怕向前少冲1米,也许就少发生一场追尾事故。LED车灯具有反应速度快,辨识效果好,耐震性强等特性。智能LED紧急刹车灯系统是在车辆紧急刹车时,利用LED车灯优异的特性快速点亮刹车灯,警示后车,从而避免事故发生。本文以ATmega8L单片机为核心给出一种智能LED刹车灯的设计方案,该系统设计利用加速度传感器迅速获取车辆加速度的变化,并将结果传输至ATmega8L单片机,ATmega8L单片机再对接收到的信息进行判断、处理,并根据结果决定是否点亮紧急刹车灯。

2 器件选型

2.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种可通过软件选择的省电模式。

2.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电路测得的偏移应与输出电压成比例。

3 硬件电路设计

本系统设计的硬件电路主要是由单片机控制电路、传感器与单片机的接口电路、电源电路、发光二极管阵电路等组成。图1所示为系统硬件结构原理图。

3.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不
输出信号。

3.2 传感器与单片机的接口电路

MMA1260D加速度传感器对汽车加速度数据进行采集并通过ATmega8L的PC0端口(ADC0)传输至ATmega8L,MMA1260D加速度传感器的输出电压与加速度成正比。为了测量加速度传感器的输出电压,通常使用带有A/D的微控制器,具体连接如图3所示。VOUT与A/D IN引脚之间的RC具有滤波,用于减小时钟噪声。加速度传感器与微控制器之间不能存在大电流。电源与地之间的0.1 μF电容为去耦电容。加速度传感器要尽可能的靠近微控制器放置。同时为了使体积尽可能小,器件通常选用表贴封装。

3. 3 稳压电源电路

稳压电源电路由7805组成,可将外接电源转换为稳定的+5 V电源,并由VOUT输出,向ATmega8L和MMA1260D提供稳定的5 V电源。该电路主要由二极管、电阻、三端稳压管、电容构成。当紧急刹车时,+12 V先通过电阻降压(主要是为了三端稳压管散热),然后再通过三端稳压管电路稳定于+5 V,并与单片机、发光二极管及加速度传感器电路连接。

3.4 发光二极管阵电路

发光二极管电路由LED、二极管和电阻构成,LED车灯的放置遵循由内到外摆成3圈,用于紧急刹车灯时由内→中→外→内循环点亮熄灭,且亮度较高,以此警示后面的司机注意刹车。该电路主要由ATmega8L单片机的3个引脚控制,其LED车灯放置如图4所示。

4 软件设计

根据系统硬件设计的相关要求,软件设计用于完成系统的初始化、对加速度传感器信号提取与分析,并根据设置的门限来决定是否点亮紧急灯。系统软件流程设计如图5所示。通过对ATmega8L进行嵌入式C语言编程,实现紧急刹车灯功能。一旦系统满足门限条件,软件编程可使内、中、外三圈灯通过延时不断以高亮度闪烁,并循环判断条件来决定是否继续点亮刹车灯,这样就易于引起后面汽车司机的警觉。一旦门限条件不满足,刹车灯熄灭,单片机继续等待中断。

5 结束语

本文讨论基于ATmega8L的智能LED紧急刹车灯的方案,简要介绍了系统各个硬件模块,利用中断控制来增强小车的智能性,并给出系统软件设计流程。该系统各部分功能模块化,易于调试,易于扩展其他功能。本设计应用前景良好。避免汽车追尾事故的发生,尤其是在夜晚,具有良好的安全效应。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在嵌入式系统和底层驱动开发中,C语言因其高效性和可控性成为主流选择,但缺乏原生单元测试支持成为开发痛点。本文提出一种基于宏定义和测试用例管理的轻量级单元测试框架方案,通过自定义断言宏和测试注册机制,实现无需外部依赖的嵌入...

关键字: C语言 嵌入式系统 驱动开发

在Linux设备驱动开发中,等待队列(Wait Queue)是实现进程睡眠与唤醒的核心机制,它允许进程在资源不可用时主动放弃CPU,进入可中断睡眠状态,待资源就绪后再被唤醒。本文通过C语言模型解析等待队列的实现原理,结合...

关键字: 驱动开发 C语言 Linux

在科技飞速发展的当下,5G 技术正以前所未有的态势席卷各个行业,汽车领域也不例外。5G 的引入,犹如为汽车行业注入了一剂强大的 “催化剂”,彻底颠覆了传统汽车的运作模式。凭借其令人惊叹的高速率、卓越的连接性以及极低的延迟...

关键字: 汽车 5G 智能

在数字化时代,电子墨水屏(E-Ink)因其独特的显示效果和低功耗特性,在电子书、智能手写本等领域得到了广泛应用。然而,电子墨水屏的刷新率一直是其发展的瓶颈,如何在保证低功耗的同时提高刷新率,成为了驱动开发中的一个重要课题...

关键字: 电子墨水屏 E-Ink 驱动开发

为保持地下综合管廊良好的运行环境 , 需对管廊环境与设备进行监控 。鉴于此 ,设计并实现了一种高效 、可靠的针对管廊环境与设备的智能化监控方法 。该方法通过对环境参数的实时可靠采集 ,对设备有效控制以及智能联动和模式控制...

关键字: 综合管廊 环境与设备 智能 监控

随着人工智能、大数据、物联网等新一代技术的蓬勃发展,物流行业正经历着前所未有的变革。物流智慧化改造,即以智能化、自动化为核心,通过引入先进的技术手段,优化物流流程,提升运营效率,已成为物流行业发展的重要趋势。智能物流系统...

关键字: 物流 智能 技术

9月4日消息,据国际星闪联盟官方介绍,近期面向智能社会的先进技术多样化与产品战略论坛在日本成功举办。

关键字: 星闪 智能

在Linux驱动开发中,设备树(Device Tree)作为一种描述硬件信息的数据结构,扮演着至关重要的角色。它使得操作系统能够以一种更加灵活和标准化的方式识别和管理硬件设备。然而,在实际的开发过程中,设备树配置错误或理...

关键字: Linux 驱动开发 Debug

在嵌入式系统与设备驱动开发的广阔领域中,时钟、定时器以及延时函数扮演着至关重要的角色。它们不仅是系统时间管理的基石,更是实现高效、精确控制硬件行为的关键工具。本文将深入探讨这三种机制在驱动开发中的具体应用、实现方式及注意...

关键字: 驱动开发 嵌入式系统 延时函数

在Linux内核的广阔领域中,驱动开发是连接硬件与软件、实现设备功能的关键环节。在这个过程中,文件操作函数与I/O操作函数作为两大核心工具,各自扮演着不可或缺的角色。本文旨在深入探讨这两种函数在Linux驱动开发中的区别...

关键字: I/O操作函数 文件操作函数 Linux 驱动开发
关闭