❶ 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);
}
}
(1)51單片機蜂鳴器原理擴展閱讀:
BUZZER蜂鳴器的分類:
1、按其驅動方式的原理分,可分為:有源蜂鳴器(內含驅動線路,也叫自激式蜂鳴器)和無源蜂鳴器(外部驅動,也叫他激式蜂鳴器)。
2、按構造方式的不同,可分為:電磁式蜂鳴器和壓電式蜂鳴器。
3、按封裝的不同,可分為:DIP BUZZER(插針蜂鳴器)和SMD BUZZER(貼片式蜂鳴器)。
4、按電流的不同,可分為:直流蜂鳴器和交流蜂鳴器,其中,以直流最為常見壓電式蜂鳴器,用的是壓電材料,即當受到外力導致壓電材料發生形變時壓電材料會產生電荷。同樣,當通電時壓電材料會發生形變。
電磁式蜂鳴器,主要是利用通電導體會產生磁場的特性,用一個固定的永久磁鐵與通電導體產生磁力推動固定在線圈上的鼓膜。
由於兩種蜂鳴器發音原理不同,壓電式結構簡單耐用但音調單一音色差,適用於報警器等設備。而電磁式由於音色好,所以多用於語音、音樂等設備。
❷ 本人初學51單片機,請教大神這個驅動這個蜂鳴器響謝啦,下面是原理圖! 最好寫出大致的程序
很明顯,你的這個蜂鳴器是用單片機的p1.4口來控制的,當p1.4口為高電平時,UNL2003中的三級管就可導通,這個時候蜂鳴器的那個接OUT7的引腳就會變成低電平,這個時候蜂鳴器就有了工作電壓了。
UNL2003里邊其實就是一組三級管組成的OC(集電級開路)門。目的是為了提高驅動電流的。因為單片機的引腳輸出和輸入電流有限。
❸ 為什麼我的51單片機蜂鳴器程序需要加延時才響呢
這得看你的蜂鳴器是有源還是無源,如果是無源的蜂鳴器需要經過變頻控制才會發聲,對於有源的蜂鳴器則直接輸出高低電平就可以。
注意,這里的「源」不是指電源。而是指震盪源。 也就是說,有源蜂鳴器內部帶震盪源,所以只要一通電就會叫。
而無源內部不帶震盪源,所以如果用直流信號無法令其鳴叫。必須用2K~5K的方波去驅動它。
兩種蜂鳴器好像一樣,但仔細看,兩者的高度略有區別,有源蜂鳴器a,高度為9mm,而無源蜂鳴器b的高度為8mm。如將兩種蜂鳴器的引腳郡朝上放置時,可以看出有綠色電路板的一種是無源蜂鳴器,沒有電路板而用黑膠封閉的一種是有源蜂鳴器。
迸一步判斷有源蜂鳴器和無源蜂鳴器,還可以用萬用表電阻檔Rxl檔測試:用黑表筆接蜂鳴器 "+"引腳,紅表筆在另一引腳上來回碰觸,如果觸發出咔、咔聲的且電阻只有8Ω(或16Ω)的是無源蜂鳴器;如果能發出持續聲音的,且電阻在幾百歐以上的,是有源蜂鳴器。
❹ 51單片機送低電平就報警,想問下報警的原理請仔細點,謝謝了
圖中利用三極體來驅動蜂鳴器,此處PNP三極體9012工作在飽和產、截止狀態,即當其基極為高電平時截止,低電平時飽和。故當51單片機送低電平時Q1飽和導通,LS1得電發聲實現報警。
❺ 51單片機的工作原理
單片機由運算器、控制器、存儲器、輸入輸出設備構成。
單片機自動完成賦予它的任務的過程,也就是單片機執行程序的過程,即一條條執行的指令的過程,所謂指令就是把要求單片機執行的各種操作用的命令的形式寫下來,這是在設計人員賦予它的指令系統所決定的,一條指令對應著一種基本操作;單片機所能執行的全部指令,就是該單片機的指令系統,不同種類的單片機,其指令系統亦不同。為使單片機能自動完成某一特定任務,必須把要解決的問題編成一系列指令(這些指令必須是選定單片機能識別和執行的指令),這一系列指令的集合就成為程序,程序需要預先存放在具有存儲功能的部件——存儲器中。存儲器由許多存儲單元(最小的存儲單位)組成,就像大樓房有許多房間組成一樣,指令就存放在這些單元里,單元里的指令取出並執行就像大樓房的每個房間的被分配到了唯一一個房間號一樣,每一個存儲單元也必須被分配到唯一的地址號,該地址號稱為存儲單元的地址,這樣只要知道了存儲單元的地址,就可以找到這個存儲單元,其中存儲的指令就可以被取出,然後再被執行。程序通常是順序執行的,所以程序中的指令也是一條條順序存放的,單片機在執行程序時要能把這些指令一條條取出並加以執行,必須有一個部件能追蹤指令所在的地址,這一部件就是程序計數器PC(包含在CPU中),在開始執行程序時,給PC賦以程序中第一條指令所在的地址,然後取得每一條要執行的命令,PC在中的內容就會自動增加,增加量由本條指令長度決定,可能是1、2或3,以指向下一條指令的起始地址,保證指令順序執行。
❻ 51單片機這個蜂鳴器如何發聲
很簡單的
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit fengmingqi=P0^0; //聲明IO口
void delay(uint x)//延時子函數
{
uint i,j;
for(i=x;i>0;i--)
for(j=50;j>0;j--);
}
void main(void)
{
while(1) //循環
{
fengmingqi=1; //p0.0口高電平,蜂鳴器發聲
delay(500); //延時
fengmingqi=0; //p0.0口低電平,蜂鳴器不發聲
delay(500); //延時
}
}
❼ 求大神解釋下51單片機蜂鳴器的工作原理 下面是原理圖 急!
工作原理非常簡單:圖示電路為灌電流驅動方式(低電平有效),Q5為開關三極體,平時I/O口P3.6輸出高電平,因Q5為PNP型三極體,故高電平使得基極電位接近Vcc,三極體截止處於集電極迴路的蜂鳴器不響,當P3.6輸出低電平時Q5經由Vcc-Q5eb-R17-P3.6到地迴路獲得基極電流而飽和導通,蜂鳴器得電發出鳴響。
❽ 用51單片機控制蜂鳴器,如何使蜂鳴器輸出最高聲音
可以通過控制蜂鳴器的發生頻率來改變音調,頻率高時,聲音聽起來就尖銳;感覺聲音就像變大了
❾ C51單片機蜂鳴器工作原理
用延時程序或者定時器控制接蜂鳴器的埠輸出頻率在2KHZ左右的矩形波就能讓蜂鳴器發聲了