新聞中心
聯(lián)系我們
公司新聞
蜂鳴器的原理以及它的結(jié)構(gòu)原理
1.電壓式蜂鳴器 壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。有的壓電式蜂鳴器外殼上還裝有發(fā)光二極管。
蜂鳴器多諧振蕩器由晶體管或集成電路構(gòu)成。當(dāng)接通電源后(1.5~15V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5kHZ的音頻信號,阻抗匹配器推動壓電蜂鳴片發(fā)聲。
壓電蜂鳴片[1]由鋯鈦酸鉛或鈮鎂酸鉛壓電陶瓷材料制成。在陶瓷片的兩面鍍上銀電極,經(jīng)極化和老化處理后,再與黃銅片或不銹鋼片粘在一起。
2.電磁式蜂鳴器 電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動膜片及外殼等組成。
接通電源后,振蕩器產(chǎn)生的音頻信號電流通過電磁線圈,使電磁線圈產(chǎn)生磁場。振動膜片在電磁線圈和磁鐵的相互作用下,周期性地振動發(fā)聲。
蜂鳴器的發(fā)聲原理由振動裝置和諧振裝置組成,而蜂鳴器又分為無源他激型與有源自激型。
無源他激型蜂鳴器的工作發(fā)聲原理是:方波信號輸入諧振裝置轉(zhuǎn)換為聲音信號輸出,無源他激型蜂鳴器蜂鳴器工作原理
有源自激型蜂鳴器的工作發(fā)聲原理是:直流電源輸入經(jīng)過振蕩系統(tǒng)的放大取樣電路在諧振裝置作用下產(chǎn)生聲音信號,有源自激型蜂鳴器的工作發(fā)聲原理
PORTC.3/T0 作為I/O 口通過三極管Q2 來驅(qū)動蜂鳴器LS1,而PORTC.2/PWM0 則作為PWM 輸出口通過三極管Q1 來驅(qū)動蜂鳴器LS2。另外在PORTA.3 和PORTA.2 分別接了兩個按鍵,一個是PWM 按鍵,是用來控制PWM 輸出口驅(qū)動蜂鳴器使用的;另一個是PORT 按鍵,是用來控制I/O 口驅(qū)動蜂鳴器使用的。連接按鍵的I/O 口開內(nèi)部上拉電阻。
軟件設(shè)計(jì)方法
先分析一下蜂鳴器。所使用的蜂鳴器的工作頻率是2000Hz,也就是說蜂鳴器的驅(qū)動信號波形周期是500μs,由于是1/2duty 的信號,所以一個周期內(nèi)的高電平和低電平的時(shí)間寬度都為250μs。軟件設(shè)計(jì)上,我們將根據(jù)兩種驅(qū)動方式來進(jìn)行說明。
a) PWM 輸出口直接驅(qū)動蜂鳴器方式
由于PWM 只控制固定頻率的蜂鳴器,所以可以在程序的系統(tǒng)初始化時(shí)就對PWM 的輸出波形進(jìn)行設(shè)置。
首先根據(jù)SH69P43 的PWM 輸出的周期寬度是10 位數(shù)據(jù)來選擇PWM 時(shí)鐘。系統(tǒng)使用4MHz 的晶振作為主振蕩器,一個tosc 的時(shí)間就是0.25μs,若是將PWM 的時(shí)鐘設(shè)置為tosc 的話, 則蜂鳴器要求的波形周期500μs 的計(jì)數(shù)值為500μs/0.25μs=(2000)10=(7D0)16,7D0H 為11 位的數(shù)據(jù),而SH69P43 的PWM
輸出周期寬度只是10 位數(shù)據(jù),所以選擇PWM 的時(shí)鐘為tosc 是不能實(shí)現(xiàn)蜂鳴器所要的驅(qū)動波形的。
這里我們將PWM 的時(shí)鐘設(shè)置為4tosc,這樣一個PWM 的時(shí)鐘周期就是1μs 了,由此可以算出500μs 對應(yīng)的計(jì)數(shù)值為500μs/1μs=(500)10=(1F4)16,即分別在周期寄存器的高2 位、中4 位和低4 位三個寄存器中填入1、F 和4,就完成了對輸出周期的設(shè)置。再來設(shè)置占空比寄存器,在PWM 輸出中占空比的實(shí)現(xiàn)是
通過設(shè)定一個周期內(nèi)電平的寬度來實(shí)現(xiàn)的。當(dāng)輸出模式選擇為普通模式時(shí),占空比寄存器是用來設(shè)置高電平的寬度。250μs 的寬度計(jì)數(shù)值為250μs/1μs=(250)10=(0FA)16。只需要在占空比寄存器的高2 位、中4 位和低4 位中分別填入0、F 和A 就可以完成對占空比的設(shè)置了,設(shè)置占空比為1/2duty。
以后只需要打開PWM 輸出,PWM 輸出口自然就能輸出頻率為2000Hz、占空比為1/2duty 的方波。
b) I/O 口定時(shí)翻轉(zhuǎn)電平驅(qū)動蜂鳴器方式
使用I/O 口定時(shí)翻轉(zhuǎn)電平驅(qū)動蜂鳴器方式的設(shè)置比較簡單,只需要對波形分析一下。由于驅(qū)動的信號剛好為周期500μs,占空比為1/2duty 的方波,只需要每250μs 進(jìn)行一次電平翻轉(zhuǎn),就可以得到驅(qū)動蜂鳴器的方波信號。在程序上,可以使用TIMER0 來定時(shí),將TIMER0 的預(yù)分頻設(shè)置為/1,選擇TIMER0 的始終為系統(tǒng)時(shí)鐘(主振蕩器時(shí)鐘/4),在TIMER0 的載入/計(jì)數(shù)寄存器的高4 位和低4 位分別寫入00H 和06H,就能將TIMER0 的中斷設(shè)置為250μs。當(dāng)需要I/O 口驅(qū)動的蜂鳴器鳴叫時(shí),只需要在進(jìn)入TIMER0 中斷的時(shí)候?qū)υ揑/O 口的電平進(jìn)行翻轉(zhuǎn)一次,直到蜂鳴器不需要鳴叫的時(shí)候,將I/O 口的電平設(shè)置為低電平即可。不鳴叫時(shí)將I/O 口的輸出電平設(shè)置為低電平是為了防止漏電。