A. 單片機蜂鳴器工作原理是什麼哪位高手可以指教一下
蜂鳴器工作發聲原理:
蜂鳴器的發聲原理由振動裝置和諧振裝置組成,而蜂鳴器又分為無源他激型與有源自激型。
無源他激型蜂鳴器的工作發聲原理是:方波信號輸入諧振裝置轉換為聲音信號輸出。
有源自激型蜂鳴器的工作發聲原理是:直流電源輸入經過振盪系統的放大取樣電路在諧振裝置作用下產生聲音信號。
電路原理:PORTC.3/T0 作為I/O 口通過三極體Q2 來驅動蜂鳴器LS1,而PORTC.2/PWM0 則作為PWM 輸出口通過三極體Q1 來驅動蜂鳴器LS2。另外在PORTA.3 和PORTA.2 分別接了兩個按鍵,一個是PWM 按鍵,是用來控制PWM 輸出口驅動蜂鳴器使用的;另一個是PORT 按鍵,是用來控制I/O 口驅動蜂鳴器使用的。連接按鍵的I/O 口開內部上拉電阻。
(1)單片機無源蜂鳴器圖片擴展閱讀:
蜂鳴器的應用領域
蜂鳴器廣泛應用領域:計算機行業(主板蜂鳴器,機箱蜂鳴器,電腦蜂鳴器)列印機(控制板蜂鳴器)、復印機、報警器行業(報警蜂鳴器,警報蜂鳴器)、電子玩具(音樂蜂鳴器)、農業、汽車電子設備行業(車載蜂鳴器,倒車蜂鳴器,汽車蜂鳴器,摩托車蜂鳴器)電話機(環保蜂鳴器)、定時器,空調,醫療設備等電聲行業。
B. protues中蜂鳴器如何發出聲音 給個電路圖
電路圖如下:
蜂鳴器發聲原理是電流通過電磁線圈,使電磁線圈產生磁場來驅動振動膜發聲的,因此需要一定的電流才能驅動它,單片機IO引腳輸出的電流較小。
單片機輸出的TTL電平基本上驅動不了蜂鳴器,因此需要增加一個電流放大的電路。三極體的作用為驅動,通過三極體放大驅動電流,從而可以讓蜂鳴器發出聲音。
有源蜂鳴器和無源蜂鳴器的區別:
這里的「源」不是指電源。而是指震盪源。 也就是說,有源蜂鳴器內部帶震盪源,所以只要一通電就會叫。
而無源內部不帶震盪源,所以如果用直流信號無法令其鳴叫。必須用2K~5K的方波去驅動它。
有源蜂鳴器往往比無源的貴,就是因為裡面多個震盪電路。
無源蜂鳴器的優點是:便宜且聲音頻率可控,可以做出「多來米發索拉西」的效果。在一些特例中,可以和LED復用一個控制口 有源蜂鳴器的優點是:程序控制方便 。
C. (無源)蜂鳴器,stc89c52單片機,npn8050,求分析,有圖
1,STC89C52推動8050的I/O必須配置為推挽輸出(配置方法詳見數據手冊)再2K電阻連接;
2,無源蜂鳴器需要音頻脈沖驅動;
3,8050各正指飢極的電壓:靜態且驅動I/舉返O為0時,基極0V,發射極0V,集電極 = VCC;
動態電壓與音頻脈沖的占空比有關,假定占空比為50%,那麼:基極約0.35V,逗洞發射極電壓0V,
集電極電壓與蜂鳴器的阻抗有關,8歐?16歐?32歐?64歐?與8050的hFE有關,只能給個大概,約1/2VCC。
D. 51單片機蜂鳴器報警電路,實物有源蜂鳴器可以工作,模擬不能響
這實物與模擬是有區別的,有時實物對,模擬不對,反之,模擬行,實物不行的例子更多。
因實物響了,就不說了。
只說模擬,有時很嚴格,有時卻隨便。你遇上嚴格的了,有源蜂鳴器是有電壓的,雙擊就可以改成5Ⅴ。還有一個原因,你把蜂鳴器接三極體發射極上,基極電阻加低電平,三極體導通,但發射結要分0.7V的壓降,加到蜂鳴器的電壓剩4.3Ⅴ,嚴格要求不足5V,所以不響。
修改方法,三極體發射極接電源,把蜂鳴器接到集電極上,就OK了。
其實,這模擬有不嚴格的,你卻沒用,反倒麻煩了。蜂鳴器可以直接連接在單片機引腳上就行,還省事,少用一個三極體。但實物肯定是不行的,必須用三極體驅動。可模擬卻又不嚴格了,它行了,可你沒用。
E. 單片機驅動蜂鳴器電路
單片機驅動蜂鳴器電路如下:
蜂鳴器經常用於電腦、列印機、萬用表這些設備上做提示音,提示音一般也很簡單,就是簡單發出個聲音就行,我們用程序簡單做了個 4KHZ 頻率下的發聲和 1KHZ 頻率下的發聲程序代碼如下:
#include
sbit BUZZ = P1^6; //蜂鳴器控制引腳
unsigned char T0RH = 0; //T0 重載值的高位元組
unsigned char T0RL = 0; //T0 重載值的低位元組
voidOpenBuzz(unsigned int frequ);
void StopBuzz();
void main(){
unsigned int i;
TMOD = 0x01; //配置 T0 工作在模式 1,但先不啟動
EA = 1;
while(1){ //使能全局中斷
OpenBuzz(4000); //以 4KHz 的頻率啟動蜂鳴器
for (i=0; i<40000; i++);
StopBuzz(); //停止蜂鳴器
for (i=0; i<40000; i++);
OpenBuzz(1000); //以 1KHz 的頻率啟動蜂鳴器
for (i=0; i<40000; i++);
StopBuzz(); //停止蜂鳴器
for (i=0; i<40000; i++);
}
}
/* 蜂鳴器啟動函數,frequ-工作頻率 */
void OpenBuzz(unsigned int frequ){
unsigned int reload;//計算所需的定時器重載值
reload = 65536 - (11059200/12)/(frequ*2); //由給定頻率計算定時器重載值
T0RH = (unsigned char)(reload >> 8); //16 位重載值分解為高低兩個位元組
T0RL = (unsigned char)reload;
TH0 = 0xFF; //設定一個接近溢出的初值,以使定時器馬上投入工作
TL0 = 0xFE;
ET0 = 1; //使能 T0 中斷
TR0 = 1; //啟動 T0
}
/* 蜂鳴器停止函數 */
void StopBuzz(){
ET0 = 0; //禁用 T0 中斷
TR0 = 0; //停止 T0
}
/* T0 中斷服務函數,用於控制蜂鳴器發聲 */
void InterruptTimer0()interrupt1{
TH0 = T0RH; //重新載入重載值
TL0 = T0RL;
BUZZ = ~BUZZ; //反轉蜂鳴器控制電平
}
F. 無源蜂鳴器與有源蜂鳴器的區別是什麼
1、外形不同
兩種蜂鳴器的引腳郡朝上放置時,可以看出有綠色電路板的一種是無源蜂鳴器,沒有電路板而用黑膠封閉的一種是有源蜂鳴器。
2、測試聲音不同
用黑表筆接蜂鳴器 「+」引腳,紅表筆在另一引腳上來回碰觸,如果觸發出咔、咔聲的且電阻只有8Ω的是無源蜂鳴器;如果能發出持續聲音的,且電阻在幾百歐以上的,是有源蜂鳴器。
3、振動頻率不同
用直流電壓輸入相應電壓(可以由小調到大),頻率大概2.7KHZ ,可以直接響的為有源電磁式蜂鳴器,不直接響的,需 要方波來驅動才可以響的為無源電磁式蜂鳴器。
(6)單片機無源蜂鳴器圖片擴展閱讀:
蜂鳴器驅動電路一般包含:一個三極體、一個續流二極體、一個濾波電容、一個蜂鳴器。蜂鳴器作為發聲元件,在其兩端施加方波或者電壓就可以發聲。
續流二極體起到提供續流的作用,否則在蜂鳴器的兩端會產生幾十伏的尖端電壓,有可能將三極體損壞,還有可能幹擾整個電路中的其它部分。
而濾波電容的作用是濾波,濾出蜂鳴器電流對其他部分的影響,並且起到了改善電源的交流抗阻。
G. 上圖為PIC單片機開發板上面的蜂鳴器的原理圖,我用proteus模擬蜂鳴器不會響,當我把電阻換成下圖的樣子就
說實話,我剛才做了一下模擬,我按照你下面那個圖接的,但是也沒響,我用的是Proteus 7.8
模擬軟體這東西,沒個完全准確的結果,只是用來模擬可以.
我可以告訴你,你上面的那個圖是沒什麼大錯誤的,如果是在正常的板子上,可以響的.
只是有可能會造成電流過大,如果實際的板子電流過大了,那麼,把上圖的R16的值調大一點就可以了.
我在實際中碰到過這個問題,後來把上圖R16值調大了,讓三極體工作在放大狀態,就沒問題了.
H. 51單片機蜂鳴器程序是什麼
51單片機蜂鳴器程序為:
#include"reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;
sbit beep=P1^5;
void delay(u16 i)
{
while(i--);
}
void main()
{
while(1)
{
beep=~beep;
delay(1000);//控制音調頻率
beep=~beep;/控制聲音大小
delay(10);
}
}
(8)單片機無源蜂鳴器圖片擴展閱讀:
BUZZER蜂鳴器的分類:
1、按其驅動方式的原理分,可分為:有源蜂鳴器(內含驅動線路,也叫自激式蜂鳴器)和無源蜂鳴器(外部驅動,也叫他激式蜂鳴器)。
2、按構造方式的不同,可分為:電磁式蜂鳴器和壓電式蜂鳴器。
3、按封裝的不同,可分為:DIP BUZZER(插針蜂鳴器)和SMD BUZZER(貼片式蜂鳴器)。
4、按電流的不同,可分為:直流蜂鳴器和交流蜂鳴器,其中,以直流最為常見壓電式蜂鳴器,用的是壓電材料,即當受到外力導致壓電材料發生形變時壓電材料會產生電荷。同樣,當通電時壓電材料會發生形變。
電磁式蜂鳴器,主要是利用通電導體會產生磁場的特性,用一個固定的永久磁鐵與通電導體產生磁力推動固定在線圈上的鼓膜。
由於兩種蜂鳴器發音原理不同,壓電式結構簡單耐用但音調單一音色差,適用於報警器等設備。而電磁式由於音色好,所以多用於語音、音樂等設備。
I. 單片機蜂鳴器
1、單片機與蜂鳴器連接圖已附.
2、通常P1、P2、P3口都可以用來作為控制,P0口也可以,但因其內部無上拉電阻,所以外接時,應接一1K的上拉電阻,其他一樣。有源蜂鳴器驅動電路設計,無須外加驅動電路。
3、C語言編程為:
#include<reg51.h>//頭文件
sbitd1=P1^2;//位定義,把P1口的P1.2位設為驅動口,當然其它口也可。
voidmain()//主函數
{
d1=0//單片機默認狀態為1,不用初始化了,此處直接賦值0則可驅動
};
此為最最簡單的電路程序設計。下載後,蜂鳴器一會一直處於鳴叫狀態。
你可以加一個延時函數,再把d1口置高,可讓它,叫一下關閉。也可以加個while(1)大循環,讓它「滴、滴」不停地叫。還可以設置一個按鍵,按一個亮一下。
隨程序的變化,現象也會各不同。