2020/01/07 星期二 作者:Astilbe 問題:如何利用Stduino制作報(bào)警器?
我們先將報(bào)警器簡化一下,它實(shí)現(xiàn)了什么功能呢? 首先當(dāng)我們靠經(jīng)報(bào)警器,觸發(fā)時(shí),它會(huì)開始報(bào)警——發(fā)出很響的警報(bào)聲。同時(shí)會(huì)有燈光開始閃爍。 而警報(bào)身可以通過一個(gè)新的電子元件——蜂鳴器來實(shí)現(xiàn),而燈光我們可以利用LED燈進(jìn)行模擬。 因此,制作警報(bào)器就被我們簡化為了: 當(dāng)觸發(fā)警報(bào)器時(shí),蜂鳴器、LED燈運(yùn)行。
蜂鳴器分為有源蜂鳴器和無源蜂鳴器。有源蜂鳴器給上電源它就會(huì)響。無源蜂鳴器需要輸入音頻信號才會(huì)響,如果是單片機(jī)的話就是輸入一定頻率脈沖。 同時(shí),有源蜂鳴器的音頻頻率與響度是固定的,同時(shí)控制比較簡單。而無源蜂鳴器可以有多種變化,因此可以有非常豐富的使用情形。當(dāng)然我們在這里使用的是有源蜂鳴器。
與點(diǎn)亮LED燈類似,我們只需讓接著蜂鳴器的數(shù)字引腳輸出低電平(這一點(diǎn)與LED燈相反),蜂鳴器就會(huì)運(yùn)行,反之亦然。 代碼如下: void setup() { // put your setup code here, to run once: pinMode(8,OUTPUT);//8號引腳初始化 pinMode(13,OUTPUT);//13號引腳初始化 }
void loop() { // put your main code here, to run repeatedly: digitalWrite(8,LOW);//蜂鳴器運(yùn)行 digitalWrite(13,HIGH);//LED燈運(yùn)行 delay(1000); digitalWrite(8,HIGH);//蜂鳴器不運(yùn)行 digitalWrite(13,LOW);//LED燈不運(yùn)行 delay(1000); }
|