现在的位置: 首页单片机知识正文

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

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

要还原声音,最低要求是HCSl2系列微控制器具备一个PWM模块,芯片选择的另一个细节是要有足够的Flash存储容量,来存储声音的采样数据。 MC9S12DP256具有一个16位的PWM模块.可产生16位解析精度的PWM波形,这意味着nr以使用16位的采样数据来产生PWM。 MC9S12DP256还具备256 KB的Flash,能够存储23 78 s八位11.025 kHz的采样数据。

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

在线咨询