有源蜂鳴器的聲音是固定的,工作電壓恒定,改變通斷電的時(shí)間獲得不同時(shí)長(zhǎng)的音響,譬如連續(xù)音、快速短音、慢速長(zhǎng)音(類似莫爾斯電報(bào))來(lái)區(qū)分不同的報(bào)警信息。
簡(jiǎn)單的說(shuō),有源蜂鳴器只能發(fā)出一種聲音,因?yàn)樗念l率是固定的。只能根據(jù)響聲的不同間隔長(zhǎng)短來(lái)區(qū)分。
例如,鬧鐘是:滴滴~滴滴~滴滴~。
有源只要通電就響了,我們只要控制好通電的時(shí)間就好。
#include "mbed.h"
PwmOut PWM1(PB_13);
int main()
{
while(1)
{
PWM1 = 1;//響
wait(0.1);//響0.1s
PWM1 = 0;//不響
wait(0.1);//不響0.1s
PWM1 = 1;//再響
wait(0.1);//響0.1s
PWM1 = 0;//不響
wait(0.6);//不響0.6s
}
}//end main
以上就可以實(shí)現(xiàn),滴0.1s滴0.1s (0.6s后)滴0.1s滴0.1s (0.6s后)滴0.1s滴0.1s
人耳聽(tīng)起來(lái)就是常見(jiàn)的鬧鐘 滴滴~滴滴~滴滴~的效果。
這里PWM波,換成DigitalOut也是一樣的,PWM波并沒(méi)有什么特殊的意義。
我只是測(cè)試PWM有什么影響沒(méi)有。
改變PWM波的頻率,蜂鳴器的聲調(diào)沒(méi)有變化。
改變PWM波的大小,例如PWM1=0.5,會(huì)發(fā)出那種不穩(wěn)定的顫抖的聲效,沒(méi)什么用。
所以有源蜂鳴器只是能響而已,聲音固定的。
電平=1就響,=0不響。