BakeBit - Buzzer/zh

From FriendlyELEC WiKi
Revision as of 10:44, 28 November 2016 by Tzs (Talk | contribs) (相关资料)

Jump to: navigation, search

English

1 介绍

Buzzer
  • BakeBit - Buzzer是一个无源蜂鸣器模块,无源蜂鸣器内部有音圈和钼片,输入2.7KHz的PWM信号时,PWM信号通过绕在支架上的线包在支架的芯柱上产生一交变的磁通,交变的磁通和磁环恒定磁通进行叠加,使钼片以给定的PWM信号频率振动并配合共振腔发声。
  • 通过调整输入PWM信号的频率即可使无源蜂鸣器发出频率不同的声音。
  • 广泛应用于计算机、报警器、电子玩具、汽车电子设备、定时器等电子产品中作发声器件。

2 特性

  • 使用标准的2.0mm 4 Pin BakeBit接口
  • PWM信号输入
  • PCB尺寸(mm):20x24

无源蜂鸣器PCB

  • 引脚说明:
名称 描述
GND 电源5V
5V
NC
SIG 输入,接PWM

3 示例程序:Button And Buzzer

本示例需要配合BakeBit - Button使用。

3.1 硬件连接

简单的将 蜂鸣器 模块插入 D3接口,将 按键 插入 D4 接口,如下面这样:

Button And Buzzer-1.jpg Button And Buzzer-2.jpg

3.2 示例源代码

import bakebit
import time
# Connect the BakeBit Ultrasonic Ranger to digital port D4
# SIG,NC,VCC,GND
ultrasonic_ranger = 4
 
# Connect the BakeBit LED to digital port D3
led = 3                                                                      
 
bakebit.pinMode(led,"OUTPUT")
light = 0
 
while True:
    try:
        # Read distance value from Ultrasonic
	distance = bakebit.ultrasonicRead(ultrasonic_ranger)
        print(distance)
	if distance > 0:
		if distance<10: 
			if light == 0:
				print("\ton")
				bakebit.digitalWrite(led,1)
				light = 1
		else:
			if light == 1:
				print("\toff")
				bakebit.digitalWrite(led,0)
				light = 0
	time.sleep(.2)
 
    except KeyboardInterrupt:
	bakebit.digitalWrite(led,0)
        break
 
    except TypeError:
        print ("Error")
    except IOError:
        print ("Error")


3.3 运行示例

假设你已经参考bakebit教程安装了BakeBit源代码,
要运行示例程序,可以在开发板上进入 BakeBit/Software/Python目录,运行bakebit_prj_Button_And_Buzzer.py:

cd ~/BakeBit/Software/Python
sudo python bakebit_prj_Button_And_Buzzer.py

3.4 运行结果

当按下按键时,蜂鸣器会响起,松开按键时,蜂鸣器停止。

4 相关资料