/* Press a button to double the pitch of Buzz's chirp */
int pitch = 40; //create a variable named 'pitch' that is an integer (whole number)
void setup(){
pinMode(2,OUTPUT); //speaker
pinMode(13,INPUT_PULLUP); //button
}
void loop(){
tone(2,pitch); //play a hertz value equal to 'pitch' on the speaker
if(digitalRead(13)==LOW){ //If button 13 is pressed
pitch=pitch*2; // Double the pitch variable. With no delays, pitch will rise quickly!
delay(100); //a delay keeps the pitch from immediately going out of hearing range
}
if(pitch>10000){ //If pitch is greater than 10,000...
pitch=40; //reset the variable to 40 so the scale can start again
}
}
// (c) 2023 Let's Start Coding. License: www.letsstartcoding.com/bsdlicense
It looks like your computer isn't set up to code yet.
Success!
Compile errors:
Serial port monitor:
Input:
Walkthrough Video
Watch the video for a line-by-line explanation of how the example program works. Then you'll be ready to make some changes of your own!
Challenges
Can you complete the challenges? Change the code in your code editor above. Upload your code to see the effect when you're finished. Complete a challenge? Check it off the list!
Concepts
These are the new code concepts covered in this example program. To become a great coder, read through these concepts to learn new vocabulary.
Quiz
If you're having trouble, try to run an experimental program or look at the example code to help you find the answer.
1. Which syntax ends the entire 'void loop' function?