国产精品成人VA在线观看-国产乱妇乱子视频在播放-国产日韩精品一区二区三区在线-国模精品一区二区三区

壓電、蜂鳴器

品牌 tdk 型號 多種
種類 蜂鳴器(片) 材質 -
規格尺寸 -(mm) 聲道數 多聲道

蜂鳴器

 

鳴器;如果能發出持續聲音的,且電阻在幾百歐以上的,是有源蜂鳴器。   有源蜂鳴器直接接上額定電源(新的蜂鳴器在標簽上都有注明)就可連續發聲;而無源蜂鳴器則和電磁揚聲器一樣,需要接在音頻輸出電路中才能發聲。

編輯本段
蜂鳴器驅動模塊

  在單片機應用的設計上,很多方案都會用到蜂鳴器,大部分都是使用蜂鳴器來做提示或報警,比如按鍵按下、開始工作、工作結束或是故障等等。這里對單片機在蜂鳴器驅動上的應用作一下描述。

驅動方式

  由于自激蜂鳴器是直流電壓驅動的,不需要利用交流信號進行驅動,只需對驅動口輸出驅動電平并通過三極管放大驅動電流就能使蜂鳴器發出聲音,很簡單,這里就不對自激蜂鳴器進行說明了。這里只對必須用1/2duty 的方波信號進行驅動的他激蜂鳴器進行說明。   單片機驅動他激蜂鳴器的方式有兩種:一種是pwm 輸出口直接驅動,另一種是利用i/o 定時翻轉電平產生驅動波形對蜂鳴器進行驅動。   pwm 輸出口直接驅動是利用pwm 輸出口本身可以輸出一定的方波來直接驅動蜂鳴器。在單片機的軟件設置中有幾個系統寄存器是用來設置pwm 口的輸出的,可以設置占空比、周期等等,通過設置這些寄存器產生符合蜂鳴器要求的頻率的波形之后,只要打開pwm 輸出,pwm 輸出口就能輸出該頻率的方波,這個時候利用這個波形就可以驅動蜂鳴器了。比如頻率為2000hz 的蜂鳴器的驅動,可以知道周期為500μs,這樣只需要把pwm 的周期設置為500μs,占空比電平設置為250μs,就能產生一個頻率為2000hz 的方波,通過這個方波再利用三極管就可以去驅動這個蜂鳴器了。   而利用i/o 定時翻轉電平來產生驅動波形的方式會比較麻煩一點,必須利用定時器來做定時,通過定時翻轉電平產生符合蜂鳴器要求的頻率的波形,這個波形就可以用來驅動蜂鳴器了。比如為2500hz 的蜂鳴器的驅動,可以知道周期為400μs,這樣只需要驅動蜂鳴器的i/o 口每200μs 翻轉一次電平就可以產生一個頻率為2500hz,占空比為1/2duty 的方波,再通過三極管放大就可以驅動這個蜂鳴器了。

蜂鳴器驅動電路

  由于蜂鳴器的工作電流一般比較大,以致于單片機的i/o 口是無法直接驅動的,所以要利用放大電路來驅動,一般使用三極管來放大電流就可以了。

蜂鳴器驅動設計

  由于這里要介紹兩種驅動方式的方法,所以在設計模塊系統中將兩種驅動方式做到一塊,即程序里邊不僅介紹了pwm 輸出口驅動蜂鳴器的方法,還要介紹i/o 口驅動蜂鳴器的方法。所以,我們將設計如下的一個系統來說明單片機對蜂鳴器的驅動:系統有兩個他激蜂鳴器,頻率都為2000hz,一個由i/o 口進行控制,另一個由pwm 輸出口進行控制;系統還有兩個按鍵,一個按鍵為port 按鍵,i/o 口控制的蜂鳴器不鳴叫時按一次按鍵i/o 口控制的蜂鳴器鳴叫,再按一次停止鳴叫,另一個按鍵為pwm 按鍵,pwm 口控制的蜂鳴器不鳴叫時按一次按鍵pwm輸出口控制的蜂鳴器鳴叫,再按一次停止鳴叫。

電路原理圖

  如圖1-3 所示,使用sh69p43 為控制芯片,使用4mhz 晶振作為主振蕩器。   portc.3/t0 作為i/o 口通過三極管q2 來驅動蜂鳴器ls1,而portc.2/pwm0 則作為pwm 輸出口通過三極管q1 來驅動蜂鳴器ls2。另外在porta.3 和porta.2 分別接了兩個按鍵,一個是pwm 按鍵,是用來控制pwm 輸出口驅動蜂鳴器使用的;另一個是port 按鍵,是用來控制i/o 口驅動蜂鳴器使用的。連接按鍵的i/o 口開內部上拉電阻。   軟件設計方法   先分析一下蜂鳴器。所使用的蜂鳴器的工作頻率是2000hz,也就是說蜂鳴器的驅動信號波形周期是500μs,由于是1/2duty 的信號,所以一個周期內的高電平和低電平的時間寬度都為250μs。軟件設計上,我們將根據兩種驅動方式來進行說明。

a) pwm 輸出口直接驅動蜂鳴器方式

  由于pwm 只控制固定頻率的蜂鳴器,所以可以在程序的系統初始化時就對pwm 的輸出波形進行設置。   首先根據sh69p43 的pwm 輸出的周期寬度是10 位數據來選擇pwm 時鐘。系統使用4mhz 的晶振作為主振蕩器,一個tosc 的時間就是0.25μs,若是將pwm 的時鐘設置為tosc 的話, 則蜂鳴器要求的波形周期500μs 的計數值為500μs/0.25μs=(2000)10=(7d0)16,7d0h 為11 位的數據,而sh69p43 的pwm   輸出周期寬度只是10 位數據,所以選擇pwm 的時鐘為tosc 是不能實現蜂鳴器所要的驅動波形的。   這里我們將pwm 的時鐘設置為4tosc,這樣一個pwm 的時鐘周期就是1μs 了,由此可以算出500μs 對應的計數值為500μs/1μs=(500)10=(1f4)16,即分別在周期寄存器的高2 位、中4 位和低4 位三個寄存器中填入1、f 和4,就完成了對輸出周期的設置。再來設置占空比寄存器,在pwm 輸出中占空比的實現是   通過設定一個周期內電平的寬度來實現的。當輸出模式選擇為普通模式時,占空比寄存器是用來設置高電平的寬度。250μs 的寬度計數值為250μs/1μs=(250)10=(0fa)16。只需要在占空比寄存器的高2 位、中4 位和低4 位中分別填入0、f 和a 就可以完成對占空比的設置了,設置占空比為1/2duty。   以后只需要打開pwm 輸出,pwm 輸出口自然就能輸出頻率為2000hz、占空比為1/2duty 的方波。

b) i/o 口定時翻轉電平驅動蜂鳴器方式

  使用i/o 口定時翻轉電平驅動蜂鳴器方式的設置比較簡單,只需要對波形分析一下。由于驅動的信號剛好為周期500μs,占空比為1/2duty 的方波,只需要每250μs 進行一次電平翻轉,就可以得到驅動蜂鳴器的方波信號。在程序上,可以使用timer0 來定時,將timer0 的預分頻設置為/1,選擇timer0 的始終為系統時鐘(主振蕩器時鐘/4),在timer0 的載入/計數寄存器的高4 位和低4 位分別寫入00h 和06h,就能將timer0 的中斷設置為250μs。當需要i/o 口驅動的蜂鳴器鳴叫時,只需要在進入timer0 中斷的時候對該   i/o 口的電平進行翻轉一次,直到蜂鳴器不需要鳴叫的時候,將i/o 口的電平設置為低電平即可。不鳴叫時將i/o 口的輸出電平設置為低電平是為了防止漏電
電子產品資料
相關代理商
最新IC采購型號