Overview This tutorial will introduce how to use the push button switch to turn on and turn off the buzzer through Raspberry Pi. We provide two coding examples: Initiative GPIO mode and Passive GPIO mode.: In Initiative GPIO mode, raspberry pi will keep scanning GPIO port, once bush button signal is detected, buzzer will beep. This mode will occupy a lot of CPU resources and therefore is not a good coding example. In Passive GPIO mode, push button signal will trigger an CPU interrupt and then make the buzzer beep. Thus CPU resources are only occupied when button switch is pushed.  During other time, CPU resources can be used by other programs. This is a better coding example than Initiative GPIO mode. button_buzzer Parts
Pi3 x1
Active Buzzer x1
Push button x1
10K Resistor x1
breadboard x1
  several jumper wires
Hardware Untitled Sketch_button Software (1)Before running Python code, the GPIO lirary needs to be installed on the Raspberry Pi. Open the termial and type the following code to install GPIO library (if you have done, please skip this step.) Please make sure the raspberry pi is connected to internet. 1)Update
sudo apt-get update
2)Install python
sudo apt-get install python-dev
3)Install python-pip(python-pip: the Python package Index)
sudo apt-get install python-pip
4)Install rpi.gpio
sudo pip install rpi.gpio
5)Test sudo python 图片4 (3)Programming You can use a screen or SSH to access your Raspberry Pi to edit code. 1)Creat a file named led.py in any directory (for example:/home/pi/)
sudo touch button_buzzer.py
2)Open file button_buzzer.py
sudo nano button_buzzer.py
3)Copy below code to button_buzzer.py file: Initiative GPIO mode:
import RPi.GPIO as GPIO
import time   

Button_pin = 25 #button is connected to GPIO 25  
Buzzer_pin = 19 #buzzer is connected to GPIO 19

# GPIO 25 set up as input. It is pulled up to stop false signals
GPIO.setup(Button_pin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
#GPIO 19 set up as output
  while True:
      print "Button is pressed!"
      print "Buzzer will be turn on!"

except KeyboardInterrupt:

Passive mode:
import RPi.GPIO as GPIO
import time

Button_pin = 25
Buzzer_pin = 19
GPIO.setup(Button_pin, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(Buzzer_pin, GPIO.OUT)

BuzzerStatus = True

def my_callback(channel):
    print("button pressed!")
    global BuzzerStatus
    BuzzerStatus = not BuzzerStatus
    if BuzzerStatus:
        GPIO.output(Buzzer_pin, GPIO.LOW)
        GPIO.output(Buzzer_pin, GPIO.HIGH)

GPIO.add_event_detect(Button_pin, GPIO.FALLING, callback=my_callback,bouncetime=200)

while True:
        print("I'm working...")
    except KeyboardInterrupt:

Select mode and copy the corresponding code. 4)After finish the code, press "Ctrl X" and“Y” to save the code. 2017-03-16-061529_1824x984_scrot 2017-03-16-061631_1824x984_scrot 5)Run the code:
sudo python ./button_buzzer.py