Maker Screen Magic 8 Ball

Use the ‘Parts List’ image along with the component cards in your box to correctly plug in the electronic hardware to your Maker Board. The colorful dots next to the legs of the components match up to the ports where that leg should go on Maker Board’s ports.

Code

The code in the editor below is ready to run! Plug in the electronic components just like the Parts List card above, connect Maker Board to your computer's USB port with the cable, and hit 'Upload Your Code!'. Tinker with the code and change something! If you get stuck, you can hit the 'Restore' button to make the code go back to the working example.


/* Magic 8 ball on the Maker Screen. Press button 6 to see one of the 6 random responses. */ #include "MakerScreenXVI.h" //A code library enables new functions to be used with the screen MakerScreenXVI lcd; //the library name is followed by the 'name' you give the LCD screen. Here it is 'lcd' int eightball; //create a variable called 'eightball' that is an integer (whole number). It doesn't have any starting value void setup() { lcd.begin(); //.begin() 'sets up' the screen. You'll always need it when using Maker Screen lcd.backlightOn(); pinMode(6,INPUT_PULLUP); //button } void loop() { lcd.setCursor(0,0); //Set the cursor on the screen in the upper-left corner (0 column, 0 row) lcd.print("Ready to roll!"); //Show the message 'ready to roll!' on the screen if(digitalRead(6)==LOW){ //if button 6 is pressed... eightball = random(1,7); //eightball will randomly be decided to be 1,2,3,4,5,or6 lcd.clear(); //clear the LCD of any messages delay(1000); //wait 1000 milliseconds (1 second) with a blank screen if(eightball ==1){ //if the variable was randomly selected as 1... lcd.print("Definitely!"); //show 'definitely' on the screen } else if(eightball == 2){ //if eightball = 2... lcd.print("Good Chance"); //show the 'Good Chance' message } else if(eightball == 3){ //continue the pattern for each random value 'eightball' might be lcd.print("It could happen"); } else if(eightball == 4){ lcd.print("It's a toss-up"); } else if(eightball == 5){ lcd.print("Not Looking Good :/"); } else if(eightball == 6){ lcd.print("No Way"); } delay(3000); //wait 3000 milliseconds (3 seconds) with the message displayed on the screen lcd.clear(); //clear the screen and restart the loop } } // (c) 2019 Let's Start Coding. License: www.letsstartcoding.com/bsdlicense
 

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 challenge? 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?




2. Which syntax ends a single code command?