0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于AT89C52单片机和EPlC6Q-240C8实现汽车语音报警系统的设计

电子设计 来源:国外电子元器件 作者:马智远;黄金凤;张 2021-04-05 17:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

作者:马智远;黄金凤;张帆;张承学

1 前言

为了防止汽车发生交通事故,当汽车智能检测装置探测到前方有危险时,必须向驾驶员发出警告信息。语音报警向驾驶员明确提示危险,以便驾驶员能及时准确地采取措施。因此,本文提出数字语音处理技术,先将各种状况的报警信息进行数字化采集、存储,遇到危险时,将判断危险类型并自动选择播放存储的报警信息。由于语音信息量大,直接存储需占用庞大的存储空间,为此,本文采用FPGA实现ADPCM(Adaptive Differential Pulse CodeModulation,自适应差分脉冲编码调制)编解码器设计,对语音信息进行压缩存储.从而使存储信息量增大了一倍。

2 系统结构及原理

本系统设计是以单片机和FPGA为核心。单片机控制系统的工作状态、启动录放音并对录放音时间进行计时、显示。FPGA对采集到的数据进行压缩、存储、解压。单片机与FPGA协调工作,提高了系统的工作效率和稳定性。系统结构如图1所示。

基于AT89C52单片机和EPlC6Q-240C8实现汽车语音报警系统的设计

首先,将所希望采集的各种报警声音经前向通道(话筒、差分放大器滤波器、加法器)再由A/D转换器转换为数字信号并送人FPGA进行ADPCM压缩编码处理,然后存储到静态存储器SRAM中。遇到危险时,单片机对危险进行判断,控制FPGA将相应的语音数据从SRAM中取出并进行解码,然后送至8位的D/A转换器,转换为模拟信号,再经后向通道(滤波器、校正电路、功率放大器、扬声器)复现报警声音。

3 系统主要硬件设计

3.1 前置放大器

采用驻极体话筒采集语音信号,转换其信号幅值为毫伏级的电信号,系统前级对其处理时,要尽可能提高放大器输入端的信噪比,保证放大电路具有精确、稳定的增益。为此,本文设计了如图2所示的检测放大电路。该电路前级采用电压跟随器,利用输入电阻为无穷大而输出趋于零的特性,提供高输入电阻,实现阻抗变换与隔离;后级采用差动放大器,获得较高的共模抑制比,增强电路抗干扰性。

电压跟随器由性能优良的低噪声音频放大器NE5532构成,工作电压为12 V,工作带宽为10 MHz,特别适用于语音信息处理。差动放大器采用AD620实现。AD620内部实际上是一个差分放大器,其失调电压电流小,共模抑制比高,因此处理微弱信号时,也就是放大和消除噪声方面具有优异性能,其增益G=1+(49.4 kΩ/Rg)(Rg为接在1、8引脚之间的电阻)。调节电位器R1,使放大的信号幅值介于-2.5 V和2.5 V之间,便于A/D转换器采样量化。

3.2 带通滤波器

语音信号经放大传输后容易拾取噪声,因此在数据采集之前,需要通过带通滤波器滤除掉带外杂波。人的语音频率范围为300 Hz~3.4 kHz,故滤波器的通带范围应为300 Hz~3.4kHz。如此宽的频带,必须采用低通部分与高通部分相级联的方式实现。

高通滤波器设计指标:通带截止频率fp=300Hz,通带允许最大衰减αp≤3 dB;为消除工频干扰,确定阻带截止频率fs=50 Hz,阻带允许最小衰减as》40 dB。选用两级二阶Butterworth高通滤波器相级联构成.仿真结果如图3所示。

低通滤波器的设计指标为:通带截止频率fp=3 400 Hz,通带允许最大衰减αp≤3 dB;为抑制采样混叠失真,确定阻带截止频率fs=4 000 Hz,阻带允许最小衰减as≥40 dB。由于椭圆滤波器可以获得较其他滤波器窄的过渡带宽,故适用该系统设计。利用滤波器辅助设计软件Filter Wiz Pro获得五阶椭圆低通滤波器电路如图4、仿真结果如图5所示。

级联高通和低通滤波器,即可得到300 Hz~3.4kHz带通滤波器,实验表明,该滤波器效果良好,达到设计指标。后向通道的带通滤波器的设计与此相同。

4 系统软件的设计

4.1 FPGA部分

选用Altera公司的Cyclone系列的EPlC6Q-240C8实现ADPCM编码器和解码器。该器件含有120 000典型门资源、5 980个逻辑单元、6个RAM模块、92 160 Bit RAM或ROM、2个数字PLL、185个可编程I/O口,最高工作时钟可达300 MHz以上,并通过JTAG接口实现在系统配置。

ADPCM是一种利用样本间的高度相关性和量化阶自适应压缩数据的波形编码技术。ADPCM综合了APCM的自适应特性和DPCM的差分特性。它的核心思想是利用自适应改变量化阶的大小,即就是使用小的量化阶编码小的差值,使用大的量化阶来编码大的差值;使用过去

的样本值估算下一个输入样本的预测值,实际样本值和预测值之间的差值总是最小。ADPCM编解码器的输入信号是G.711 PCM代码,若采样频率为8 kHz,每个代码为8位,则它的数据率为64 Kb/s,而ADPCM的输出代码是“自适应量化器”的输出,该输出是4位的差分信号,它的采样频率仍是8 kHz,数据率为32 Kb/s,这样就获得了2:1的数据压缩。

编码过程:计算8位的二进制补码的当前采样值Sc和上一预测采样值Sp之间的差值d,该差值经量化编码输出4位ADPCM代码I。在算法中,定义一个结构变量存储预测采样值Sp和量化步长q,并制定了两个表:一个表为索引调整表,其输入为差值量化编码I,用于更新步长索引;另一个表为步长调整表,其输入为步长索引,输出为步长q。编码时,首先用上一个采样点的步长索引查步长调整表求出步长q,然后根据下式来确定4位ADPCM编码值I:

再将编码值I作为索引调整表的输入,查表输出索引调整,并和结构变量中原步长索引相加,产生新的步长索引,在下一个采样值的编码中使用。编码器输出I后,还需要重复进行与解码完全一样的计算过程,求出新的预测采样值Sp。

解码过程:首先通过步长索引查步长调整表得到量化步长,差值量化编码I经逆量化得到语音差值d,这是求I的逆过程;然后与前次预测值Sp。一起重建当前语音信号Sc;最后利用Sp=Sc,更新预测值Sp,用I更新量化步长索引。

设计完成后,对ADPCM编解码器进行仿真,仿真结果如图6所示。AD_DataBus为编码前输入信号,采用Testbench产生。在编码使能信号P1_7为“0”时,开始编码,P1_7跳变到“1”时,编码被屏蔽。此时解码使能信号P1_4为“0”,开始解码,P1_4跳变到“1”时,解码被屏蔽。可以看出编码前输入信号AD_DataBus和解码器输出DA_DataBus基本符合要求。由于ADPCM算法本身是有损压缩,可以确定本部分的设计是正确可靠的。

4.2 单片机部分

单片机是整个系统的控制中心.负责检测危险并判断其类型以选择播放相应的报警信息。其工作流程如图7所示。本文给出了采用3个按键代表3种危险的发生,供单片机检测。

选择常用的51系列单片机AT89C52,用C51语言编程可完成程序设计,实验效果理想。

5 结束语

本系统设计是单片机与FPGA配合使用,充分发挥各自的优点。获得理想效果,具有很强的实用性,同时还证明了采用可编程逻辑器件实现语音数字压缩处理的高效性。实验证明,本系统可以很好地再现录入的报警语音,具有较高的保真度。驾驶员可以根据自己的喜好随意改变报警声音。危急情况下,本系统会自动发出明确的报警提示,大大提高了驾驶的安全性。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1664

    文章

    22502

    浏览量

    639148
  • 单片机
    +关注

    关注

    6078

    文章

    45579

    浏览量

    673558
  • 报警系统
    +关注

    关注

    5

    文章

    663

    浏览量

    77084
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Renesas M16C/6S 16位单片机:特性、功能与应用全解析

    Renesas M16C/6S 16位单片机:特性、功能与应用全解析 作为一名电子工程师,在寻找高性能、高集成度的单片机时,Renesas M16C
    的头像 发表于 04-13 16:05 123次阅读

    深入剖析Renesas M16C/6S:一款高度集成的16位单片机

    深入剖析Renesas M16C/6S:一款高度集成的16位单片机 在电子工程师的世界里,单片机是不可或缺的核心组件。Renesas M16C
    的头像 发表于 04-13 14:00 130次阅读

    深入解析 SANYO LC87F57C8A 8单片机:特性、参数与应用考量

    深入解析 SANYO LC87F57C8A 8单片机:特性、参数与应用考量 在电子设计领域,单片机作为核心控制元件,其性能和特性对整个系统
    的头像 发表于 04-11 10:05 326次阅读

    AT89LV52单片机特性与应用全解析

    AT89LV52单片机特性与应用全解析 在嵌入式控制应用领域,单片机扮演着至关重要的角色。AT89LV52作为一款经典的低电压、高性能CMOS 8
    的头像 发表于 04-06 11:40 708次阅读

    AT89LS52:低成本高性能8单片机的设计秘诀

    AT89LS52:低成本高性能8单片机的设计秘诀 作为一名电子工程师,在嵌入式系统设计中,单片机是我们常用的核心组件之一。今天,我要给大家
    的头像 发表于 04-06 09:15 322次阅读

    AT89C52:一款经典的8位微控制器

    AT89C52:一款经典的8位微控制器 在嵌入式控制应用领域,AT89C52这款8位微控制器凭借其出色的性能和丰富的功能,一直是众多工程师的选择。尽管现在它已不推荐用于新设计(建议使用
    的头像 发表于 04-06 09:10 346次阅读

    探索TS80C54/58X2:高性能8单片机的技术剖析

    探索TS80C54/58X2:高性能8单片机的技术剖析 在电子设计领域,单片机是不可或缺的核心组件。今天,我们聚焦于TS80C54/58X
    的头像 发表于 04-05 15:15 743次阅读

    Infineon C505系列8单片机:特性、应用与设计要点

    Infineon C505系列8单片机:特性、应用与设计要点 在嵌入式系统设计领域,单片机作为核心控制部件,其性能和特性直接影响着整个
    的头像 发表于 03-30 14:25 171次阅读

    Infineon C167CR/C167SR 16位单片机深度解析

    Infineon C167CR/C167SR 16位单片机深度解析 在电子工程领域,单片机作为核心控制部件,其性能和功能直接影响着整个系统
    的头像 发表于 03-30 14:25 195次阅读

    深入解析Infineon C165 16位单片机:特性、参数与应用指南

    深入解析Infineon C165 16位单片机:特性、参数与应用指南 在当今的电子设计领域,单片机作为核心控制元件,广泛应用于各种智能设备和工业控制系统中。Infineon
    的头像 发表于 03-30 14:20 218次阅读

    8XC51FX:高性能8单片机的全方位解析

    8XC51FX:高性能8单片机的全方位解析 在单片机的世界里,8XC51FX系列以其卓越的性能和丰富的功能脱颖而出,成为众多电子工程师在设
    的头像 发表于 03-29 13:15 245次阅读

    Infineon C515C 8单片机:功能特性与应用解析

    Infineon C515C 8单片机:功能特性与应用解析 在嵌入式系统设计领域,单片机作为核心控制部件,其性能和功能直接影响着整个
    的头像 发表于 03-29 09:15 152次阅读

    学习单片机快速方法

    的80C51系列单片机主要产品有:Intel的80C31、80C51、87C51,80C32、80C52
    发表于 01-14 07:42

    AT89C51 单片机中文资料

    电子发烧友网站提供《AT89C51 单片机中文资料.pdf》资料免费下载
    发表于 06-24 15:29 1次下载

    单片机c语言编程实例大全

    单片机c语言编程实例大全_18
    发表于 04-30 16:11 7次下载