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