有源蜂鳴器的聲音是固定的,工作電壓恒定,改變通斷電的時間獲得不同時長的音響,譬如連續(xù)音、快速短音、慢速長音(類似莫爾斯電報)來區(qū)分不同的報警信息。
簡單的說,有源蜂鳴器只能發(fā)出一種聲音,因為它的頻率是固定的。只能根據(jù)響聲的不同間隔長短來區(qū)分。
例如,鬧鐘是:滴滴~滴滴~滴滴~。
有源只要通電就響了,我們只要控制好通電的時間就好。
#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
以上就可以實現(xiàn),滴0.1s滴0.1s (0.6s后)滴0.1s滴0.1s (0.6s后)滴0.1s滴0.1s
人耳聽起來就是常見的鬧鐘 滴滴~滴滴~滴滴~的效果。
這里PWM波,換成DigitalOut也是一樣的,PWM波并沒有什么特殊的意義。
我只是測試PWM有什么影響沒有。
改變PWM波的頻率,蜂鳴器的聲調(diào)沒有變化。
改變PWM波的大小,例如PWM1=0.5,會發(fā)出那種不穩(wěn)定的顫抖的聲效,沒什么用。
所以有源蜂鳴器只是能響而已,聲音固定的。
電平=1就響,=0不響。