電子開(kāi)發(fā)網(wǎng)

電子開(kāi)發(fā)網(wǎng)電子設(shè)計(jì) | 電子開(kāi)發(fā)網(wǎng)Rss 2.0 會(huì)員中心 會(huì)員注冊(cè)
搜索: 您現(xiàn)在的位置: 電子開(kāi)發(fā)網(wǎng) >> 電子開(kāi)發(fā) >> 單片機(jī) >> 正文

利用PWM給單片機(jī)應(yīng)用增加語(yǔ)音功能

作者:佚名    文章來(lái)源:本站原創(chuàng)    點(diǎn)擊數(shù):    更新時(shí)間:2011-5-6
摘要 隨著嵌入式領(lǐng)域的拓展,目前許多微控制器芯片一般都不具備數(shù)據(jù)一模擬的雙向通道,但幾乎都集成有PWM產(chǎn)生模塊。本文利用飛思卡爾公司HCSl2單片機(jī)的PWM模塊,還原存儲(chǔ)在存儲(chǔ)器中的聲音采樣數(shù)據(jù),在幾乎不增加成本的情況下,實(shí)現(xiàn)嵌入式應(yīng)用中的擴(kuò)展語(yǔ)音功能。
關(guān)鍵詞 單片機(jī)PWM語(yǔ)音低通濾波


    HCSl2系列單片機(jī)未包含數(shù)/模轉(zhuǎn)換的模塊。要給其擴(kuò)展語(yǔ)音功能,通常的做法是增加一塊數(shù)/模轉(zhuǎn)換芯片。雖然這樣做可以得到非常好的音質(zhì)(取決于數(shù)/模轉(zhuǎn)換芯片的性能),但由于耍多使用一塊數(shù)/模轉(zhuǎn)換芯片,在對(duì)音質(zhì)要求不太高的應(yīng)用中,會(huì)給設(shè)計(jì)增加額外的成本,同時(shí)也使電路設(shè)計(jì)相對(duì)復(fù)雜。
    本文介紹利用PWM還原聲音的解決方案,可以很好地解決這個(gè)矛盾。例如安全報(bào)警應(yīng)用中,系統(tǒng)通常已經(jīng)包含了一塊微控制器(用來(lái)處理人機(jī)交互以及系統(tǒng)的控制等),當(dāng)發(fā)出警報(bào)時(shí),可以是“BB”或“當(dāng)當(dāng)”的蜂鳴聲;當(dāng)然,更好的做法是發(fā)出清晰的語(yǔ)音。
    用PWM產(chǎn)生聲音的基本原理,是使用存儲(chǔ)在Flash中的音頻采樣數(shù)據(jù)或通過(guò)某種算法產(chǎn)生的聲音數(shù)據(jù),來(lái)控制PWM每個(gè)波形的占空比;接下來(lái)通過(guò)一低通濾波器濾波,就可將聲音從PWM的脈沖波里分離出來(lái),驅(qū)動(dòng)揚(yáng)聲器發(fā)出聲音。


1 從WAV文件中提取聲音采樣數(shù)據(jù)
    一般來(lái)說(shuō),可以從WAV文件中提取聲音數(shù)據(jù),標(biāo)準(zhǔn)的WAV格式的聲音文件含有聲音的采樣數(shù)據(jù)和文件頭。文件頭描述了后面聲音數(shù)據(jù)的一些信息,如通道數(shù)、采樣頻率、采樣位數(shù)以及數(shù)據(jù)的長(zhǎng)度等。
    通道數(shù),是指聲音的采樣路數(shù),如單聲道、立體聲等。采樣頻率,是指每秒鐘對(duì)聲音的采樣次數(shù),采樣頻率越高,還原出來(lái)的聲音越接近原始聲音,如表l所列。要精確還原出某種頻率的波形,其最小采樣率應(yīng)為該波形的2倍。

    采樣位數(shù),指的是每次采樣的采樣精度。采樣位數(shù)越高,還原出來(lái)的聲音的量化噪聲越小,波形也越接近原波形。WAV文件的文件頭定義:

    提取聲音數(shù)據(jù)時(shí),請(qǐng)注意采樣頻率、采樣位數(shù)、存儲(chǔ)容量與存儲(chǔ)時(shí)間的關(guān)系,如表2所列。通常,11.025 kHz的采樣頻率和8位的采樣位數(shù)可獲得清晰的語(yǔ)音以及較好的音樂(lè)聲,并且占有較少的存儲(chǔ)空間。
    通過(guò)了解和分析WAV文件的格式,可以將文件中的聲音采樣數(shù)據(jù)讀取出來(lái),并轉(zhuǎn)換為C語(yǔ)言格式的數(shù)組結(jié)構(gòu),以便和其他程序一并編譯和下載到芯片中去。例如:


2 產(chǎn)生PWM波形
    要還原聲音,最低要求是HCSl2系列微控制器具備一個(gè)PWM模塊,芯片選擇的另一個(gè)細(xì)節(jié)是要有足夠的Flash存儲(chǔ)容量,來(lái)存儲(chǔ)聲音的采樣數(shù)據(jù)。MC9S12DP256具有一個(gè)16位的PWM模塊.可產(chǎn)生16位解析精度的PWM波形,這意味著nr以使用16位的采樣數(shù)據(jù)來(lái)產(chǎn)生PWM。MC9S12DP256還具備256 KB的Flash,能夠存儲(chǔ)23 78 s八位11.025 kHz的采樣數(shù)據(jù)。
    產(chǎn)生PWM波形的步驟:①設(shè)置定時(shí)器.產(chǎn)生定時(shí)中斷:如采樣率為ll.025 kHz.則設(shè)置定時(shí)器的定時(shí)中斷頻率為11.025 kHz。②初始化PWM模塊,產(chǎn)生11.025kHz的PWM波形。③等待定時(shí)器中斷,在中斷處理程序中取采樣數(shù)據(jù),并設(shè)置PWM占空比寄存器,判斷聲音是否播放完成。若完成,則關(guān)定時(shí)器巾斷,并停止PWM輸出。


3 低通濾波
    PWM輸出后須通過(guò)低通濾波器濾波,才能還原成人耳能識(shí)別的聲音。低通濾波器的類(lèi)型和參數(shù)取決于聲音的采樣頻率和價(jià)格預(yù)算。最簡(jiǎn)單的要數(shù)RC濾波器。這種濾波器的優(yōu)點(diǎn)是儀需要兩個(gè)元件,另一種是有源濾波器,濾波效果好,但相對(duì)復(fù)雜。
    濾波器截止頻率的選擇,對(duì)于音頻輸出是非常重要的,推薦設(shè)置在采樣頻率的一半。若要獲得更佳的濾波器截止頻率,就要進(jìn)一步對(duì)采樣數(shù)據(jù)進(jìn)行分析,找出最大具有有效聲音數(shù)據(jù)的頻率。當(dāng)然,在一般應(yīng)用中并沒(méi)有要求這么嚴(yán)格,甚至在某些場(chǎng)合中,即使用參數(shù)不非常明確的元件也能獲得很好的聲音輸出,這時(shí)RC濾波器將是最好的選擇。
    推薦使用圖1所示的濾波器,其截止頻率為5.5 kHz(11.025 kHz/2)。這個(gè)設(shè)計(jì)中,使用了2個(gè)運(yùn)算放大器,足夠驅(qū)動(dòng)一小型揚(yáng)聲器。

    圖2也給出一種簡(jiǎn)單直接的接法:僅使用一22μF的電容用于低通濾波,驅(qū)動(dòng)一5 kHz、8Ω的小揚(yáng)聲器。

結(jié)語(yǔ)
    利用MC9S12DP256微控制器的PWM功能可為單片機(jī)的應(yīng)用增加語(yǔ)音功能。對(duì)聲音采樣數(shù)據(jù)的存儲(chǔ)方式是用直接的、原始的采樣數(shù)據(jù)。在具體的實(shí)際應(yīng)用中,為存儲(chǔ)更長(zhǎng)時(shí)間的聲音數(shù)據(jù),還可對(duì)聲音數(shù)據(jù)進(jìn)行壓縮,具體算法請(qǐng)參考相關(guān)資料。
Tags:單片機(jī),語(yǔ)音功能  
責(zé)任編輯:admin
請(qǐng)文明參與討論,禁止漫罵攻擊,不要惡意評(píng)論、違禁詞語(yǔ)。 昵稱(chēng):
1分 2分 3分 4分 5分

還可以輸入 200 個(gè)字
[ 查看全部 ] 網(wǎng)友評(píng)論
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線(xiàn)幫助 - 文章列表
返回頂部
刷新頁(yè)面
下到頁(yè)底
晶體管查詢(xún)
[中文][3d全彩]舞房之夜| 荡公乱妇hd在线| 国产精品亚洲精品爽爽| 99热这里有精品| 国产精品黄大片观看| 99久久国产免费中文无字幕| 国产色综合天天综合网| 99国产精品久久| 国产精品无打码在线播放 | 恋脚app直播软件| 中文字幕在线日韩| 少妇太爽了在线观看| 一本大道香蕉久在线不卡视频| 天下第一日本高清国语在线观看 | 在线看片中文字幕| 99国产在线播放| 国产精品国产三级国产专不∫| 1000部精品久久久久久久久| 国产成人无码专区| 西西人体欧美大胆在线| 国产三级久久久精品麻豆三级| 美女被a到爽视频在线观看| 啦啦啦资源在线观看视频| 男孩子和男孩子在一起do| 免费又黄又爽又猛的毛片| 欧美精品久久一区二区三区| 亚洲欧美电影一区二区| 欧美h版在线观看| 五月天综合视频| 无码人妻熟妇AV又粗又大| 中文字幕国产视频| 天天干天天操天天| 99re免费99re在线视频手机版| 国产破外女出血视频| 菠萝菠萝蜜在线免费视频| 国产-第1页-浮力影院| 瑟瑟网站在线观看| 亚洲欧美精品久久| 日韩精品久久久肉伦网站| 久久精品国产99精品国产亚洲性色| 成人影片在线免费观看|