利用PWM给单片机应用增加语音功能

标签:MCUPWM
分享到:

摘要 随着嵌入式领域的拓展,目前许多微控制器芯片一般都不具备数据一模拟的双向通道,但几乎都集成有PWM产生模块。本文利用飞思卡尔公司HCSl2单片机的PWM模块,还原存储在存储器中的声音采样数据,在几乎不增加成本的情况下,实现嵌入式应用中的扩展语音功能。
关键词 单片机PWM语音低通滤波


    HCSl2系列单片机未包含数/模转换的模块。要给其扩展语音功能,通常的做法是增加一块数/模转换芯片。虽然这样做可以得到非常好的音质(取决于数/模转换芯片的性能),但由于耍多使用一块数/模转换芯片,在对音质要求不太高的应用中,会给设计增加额外的成本,同时也使电路设计相对复杂。
    本文介绍利用PWM还原声音的解决方案,可以很好地解决这个矛盾。例如安全报警应用中,系统通常已经包含了一块微控制器(用来处理人机交互以及系统的控制等),当发出警报时,可以是“BB”或“当当”的蜂鸣声;当然,更好的做法是发出清晰的语音。
    用PWM产生声音的基本原理,是使用存储在Flash中的音频采样数据或通过某种算法产生的声音数据,来控制PWM每个波形的占空比;接下来通过一低通滤波器滤波,就可将声音从PWM的脉冲波里分离出来,驱动扬声器发出声音。

1 从WAV文件中提取声音采样数据
   
一般来说,可以从WAV文件中提取声音数据,标准的WAV格式的声音文件含有声音的采样数据和文件头。文件头描述了后面声音数据的一些信息,如通道数、采样频率、采样位数以及数据的长度等。
    通道数,是指声音的采样路数,如单声道、立体声等。采样频率,是指每秒钟对声音的采样次数,采样频率越高,还原出来的声音越接近原始声音,如表l所列。要精确还原出某种频率的波形,其最小采样率应为该波形的2倍。

    采样位数,指的是每次采样的采样精度。采样位数越高,还原出来的声音的量化噪声越小,波形也越接近原波形。WAV文件的文件头定义:

   
    提取声音数据时,请注意采样频率、采样位数、存储容量与存储时间的关系,如表2所列。通常,11.025 kHz的采样频率和8位的采样位数可获得清晰的语音以及较好的音乐声,并且占有较少的存储空间。
    通过了解和分析WAV文件的格式,可以将文件中的声音采样数据读取出来,并转换为C语言格式的数组结构,以便和其他程序一并编译和下载到芯片中去。例如:

   

2 产生PWM波形
   
要还原声音,最低要求是HCSl2系列微控制器具备一个PWM模块,芯片选择的另一个细节是要有足够的Flash存储容量,来存储声音的采样数据。MC9S12DP256具有一个16位的PWM模块.可产生16位解析精度的PWM波形,这意味着nr以使用16位的采样数据来产生PWM。MC9S12DP256还具备256 KB的Flash,能够存储23 78 s八位11.025 kHz的采样数据。
    产生PWM波形的步骤:①设置定时器.产生定时中断:如采样率为ll.025 kHz.则设置定时器的定时中断频率为11.025 kHz。②初始化PWM模块,产生11.025kHz的PWM波形。③等待定时器中断,在中断处理程序中取采样数据,并设置PWM占空比寄存器,判断声音是否播放完成。若完成,则关定时器巾断,并停止PWM输出。

   

   

3 低通滤波
    PWM输出后须通过低通滤波器滤波,才能还原成人耳能识别的声音。低通滤波器的类型和参数取决于声音的采样频率和价格预算。最简单的要数RC滤波器。这种滤波器的优点是仪需要两个元件,另一种是有源滤波器,滤波效果好,但相对复杂。
    滤波器截止频率的选择,对于音频输出是非常重要的,推荐设置在采样频率的一半。若要获得更佳的滤波器截止频率,就要进一步对采样数据进行分析,找出最大具有有效声音数据的频率。当然,在一般应用中并没有要求这么严格,甚至在某些场合中,即使用参数不非常明确的元件也能获得很好的声音输出,这时RC滤波器将是最好的选择。
    推荐使用图1所示的滤波器,其截止频率为5.5 kHz(11.025 kHz/2)。这个设计中,使用了2个运算放大器,足够驱动一小型扬声器。

    图2也给出一种简单直接的接法:仅使用一22μF的电容用于低通滤波,驱动一5 kHz、8Ω的小扬声器。

结语
   
利用MC9S12DP256微控制器的PWM功能可为单片机的应用增加语音功能。对声音采样数据的存储方式是用直接的、原始的采样数据。在具体的实际应用中,为存储更长时间的声音数据,还可对声音数据进行压缩,具体算法请参考相关资料。

继续阅读
处理器的安全不是说说而已,需要经过认证的

基于慕尼黑安全会议签订的《The Charter of Trust》和推动物联网安全的承诺,恩智浦半导体宣布,旗下的各类处理器系列获得了Arm平台安全架构 (PSA) 认证计划PSA Certified™的1级认证。

格力电器董事长兼总裁董明珠现身签约仪式现场,格力电器到2023年营业收入要达到6000亿元

12月2日,在中国企业领袖年会上,董明珠表示,自己成为网红的原因有无数个,第一个原因就是做手机,其次就是分红,我做芯片又成了网红。“别人做芯片股价飙升,我一讲做芯片股价就跌了,因为我是真做”,董明珠说。

恩智浦发布发布S08QL系列MCU,为超低功耗的应用提供了优化的性能

近日,园区企业恩智浦半导体上海有限公司(以下简称“恩智浦”)正式发布8位微控制器的新成员——S08QL系列MCU。 作为目前恩智浦8位S08家族中功耗最低的产品,S08QL系列MCU为超低功耗的应用提供了优化的性能,延长电池使用时间,降低了应用成本。

首款基于Cortex-M33的LPC发布,恩智浦再次加快低成本安全边缘处理

近日,园区企业恩智浦半导体发布了LPC5500,旨在加快低成本安全边缘处理。该产品是业界首创的采用单核和双核Arm Cortex-M33及Arm TrustZone技术的微控制器平台。LPC5500微控制器(MCU)系列基于低功耗40nm嵌入式闪存工艺构建,其处理效率、安全性和功能均达到全新水平。

汽车电子风起云涌,恩智浦有望成为下一个高通

对于高通追求了两年而未有结果的恩智浦(NASDAQ:NXPI)来说,此时在汽车电子领域兴起的机会也许会助力其成为下一个“高通”。“目前我们在汽车半导体市场居于首位,未来也会争取保持这个优势。”恩智浦半导体资深副总裁兼汽车电子事业部首席技术官Lars Reger对第一财经记者表示,恩智浦的优势在于产品布局的全面性...