Lab 3: Parallel Piano |
Goals
|
|---|---|
Part 1: Buttons in Parallel |
Button in ParallelThis circuit is designed to produce a different voltage for each button because each button is in series with a different resistor.Build the circuit
Program the Arduino
|
Part 2: Calculations |
Voltage Divider
A voltage divider is a passive circuit which produces a Vout which is a fraction of the Vin. In this lab we will be using a voltage divider to differentiate between different button presses.
Calculate expected values
Program the ArduinoProgram the arduino to print the specific resistor value associated with a button when it is pressed.Resistors in Parallel
|
Part 3: Speaker |
Piezo Electric Buzzer
Piezo elements convert vibration to voltage or voltage to vibration. They can be used as a buzzer for making beeps, tones and alerts and can be used it as a sensor, to detect fast movements like knocks. It's rated for up to 12Vpp use but you can also use 5V square waves.
Build the circuitFollow the circuit diagram provided.Program the ArduinoUse the tone() function to produce a different note frequency (A-G) for each button. Turn off the tone when no buttons are being pressed with noTone(). Here is a reference that includes constants for each note. .
|
Check-in |
Check-inThe goal is for you to have the keyboard working by the check-in. It's okay if you don't, just submit a check-in (video&doc) of what you have done so far and you'll receive 75% on the check-in (-5% of your project grade). You can only turn in extensions if your check-in is ontime and complete.Submit a video and Check-in document on Google ClassroomUpload a 0.5-2 minute Documentation Video with narration.
|
Head-Start (Optional) |
Project 3 Head-StartModify your code so if two buttons are pressed at the same time, it prints the name of the note associated with both buttons. Use the equation you derived for Vout when two buttons are pressed at the same time to calculate the expected A0 readings.Registers, Interrupts and PWMFor this weeks reading watch these three videos on Registers, External Interrupts and Timer Interrupts. Introduction to RegistersIntroduction to External Interrupts Introduction to Timer Interrupts Helpful Reference: ATmega328P Datasheet |




