利用MAXQ3210產(chǎn)生壓電信號
摘要:MAXQ3210微控制器集成了一個(gè)壓電揚聲器驅動(dòng)器,以固定頻率驅動(dòng)高音揚聲器。本應用筆記演示了怎樣改動(dòng)揚聲器驅動(dòng)器反饋單元,利用軟件來(lái)產(chǎn)生各種頻率信號。
引言
壓電蜂鳴器或揚聲器使用壓電晶體單元,壓電晶體在加電時(shí)會(huì )出現輕微變形,將電信號轉換為聲音。晶體單元連在揚聲器錐體或面板,當施加快速變化的電壓時(shí),它會(huì )快速振動(dòng)。這種振動(dòng)激發(fā)出空氣中的聲波,從而產(chǎn)生頻率基于電波頻率的音調。
早期的計算機和電子游戲使用壓電揚聲器產(chǎn)生的各類(lèi)聲音,從單音、汽笛音到白噪聲等。和早期相比,個(gè)人計算機的聲音產(chǎn)生技術(shù)有了很大的進(jìn)步。今天,系統即使增加了多通道、數字聲音和音樂(lè ),以及基于MIDI的音樂(lè )合成器系統,仍然使用簡(jiǎn)單的壓電揚聲器。汽車(chē)報警、煙霧探測器、銷(xiāo)售點(diǎn)(PoS)終端、小型電子玩具和游戲以及很多應用都依靠壓電聲發(fā)生器來(lái)產(chǎn)生單音、大分貝報警音效。
改動(dòng)硬件驅動(dòng)揚聲器
對系統中的壓電揚聲器增加硬件非常簡(jiǎn)單。
對于只需要一路頻率輸出的應用,可以對壓電揚聲器進(jìn)行優(yōu)化,以一定的音頻振蕩。通過(guò)加入反饋網(wǎng)絡(luò )和逆變器,揚聲器在接通后以共振頻率開(kāi)始自激振蕩。這類(lèi)網(wǎng)絡(luò )通常用于在煙霧探測器、二氧化碳傳感器和安防系統中產(chǎn)生大分貝報警音。
Maxim的MAXQ3210微控制器集成了這類(lèi)壓電揚聲器驅動(dòng)電路(圖1)。軟件界面非常簡(jiǎn)單,包括一個(gè)控制位,用于打開(kāi)或者關(guān)斷揚聲器。輸出音的頻率和音量完全由壓電揚聲器和反饋網(wǎng)絡(luò )元件決定。
圖1. MAXQ3210微控制器的壓電音驅動(dòng)電路
在軟件控制下迅速接通和關(guān)斷揚聲器可以產(chǎn)生各種嘀噠、啁啾等聲音效果,但是輸出頻率不變。怎樣才能產(chǎn)生各種不同的輸出頻率呢?
為改變輸出頻率,必須去掉自動(dòng)反饋環(huán)路,直接通過(guò)端口引腳來(lái)控制揚聲器輸出。數字揚聲器的輸入可以在固定電壓和地之間切換,微控制器的數字I/O引腳可直接驅動(dòng)它。根據壓電揚聲器輸出大小和所需的分貝數,可能需要專(zhuān)門(mén)的驅動(dòng)電路或者IC來(lái)處理壓電揚聲器引腳的高壓,或者將大電流驅動(dòng)到揚聲器中,以產(chǎn)生高音。在這些情況下,微控制器I/O引腳被用于打開(kāi)或者關(guān)斷揚聲器,設置輸出頻率。I/O引腳不直接驅動(dòng)壓電單元。
MAXQ3210還可用于產(chǎn)生多個(gè)揚聲器輸出頻率。反饋輸入引腳直接連接到器件的一個(gè)其他端口引腳上。只要內置揚聲器逆變器能夠跟上端口引腳驅動(dòng)的頻率,按照合適的速率觸發(fā)端口引腳都可以產(chǎn)生所需的音調。
注意:本應用筆記的源代碼可以下載(ZIP, 4.5kB)。
音樂(lè )合成器
為能夠產(chǎn)生簡(jiǎn)單的音樂(lè )信號,揚聲器必須接通一段時(shí)間,然后關(guān)斷相同的時(shí)間。產(chǎn)生的聲音頻率由下面的公式給出:
輸出頻率 = 1/(長(cháng)周期 + 短周期)
為能夠產(chǎn)生一定時(shí)間長(cháng)度的聲音,需要計算進(jìn)行驅動(dòng)的完整周期數:
周期數 = (聲音持續時(shí)間 × 輸出頻率)
以中C基本鋼琴音標音頻為例。對這些頻率進(jìn)行調諧,音符“中C的A”等于440Hz。表1中列出的值是近似值。
表1. 音符和接近的聲音頻率
Note | Frequency (Hz) |
Middle C | 261 |
C sharp/D flat | 277 |
D | 294 |
D sharp/E flat | 311 |
E | 330 |
F | 349 |
F sharp/G flat | 370 |
G | 392 |
G sharp/A flat | 415 |
A | 440 |
A sharp/B flat | 466 |
B | 494 |
C (next octave up) | 523 |
以一定頻率來(lái)接通和關(guān)斷MAXQ3210端口引腳最簡(jiǎn)單的方法是使用軟件循環(huán)。使用微控制器的單周期指令執行頻率來(lái)計算內循環(huán)延時(shí),該頻率典型值為3.57MHz。
move HRNC, #1 ; Turn the piezoelectric horn driver on.
評論