Inspiration: We wanted to create an interactive game that takes into account user inputs.

What it does: We first created a c++ version of the game, which is strictly on the computer. Then, we modified the game to display questions on an LCD and take inputs via buttons on a breadboard, controlled by an Arduino.

Challenges I ran into:

1) In c++, the program waits for an input after being asked a question. In the Arduino IDE however, this is not the case. We had to create a while loop so that while no buttons were pushed, the program waited. Then, when a button was pushed, the loop was broken and the program moved on. 2) The Arduino has a somewhat small memory bank, so we had to reduce our variable usage. 3) The LCD can only display 32 characters at a time, so we had to experiment with scrolling characters across the screen.

Accomplishments that I'm proud of: We have a total of two weeks c++ experience, and this was an awesome way to use the limited commands I know to accomplish something useful!

What I learned: I learned how to incorporate the LCD in a circuit, and a number of the programming commands associated with it.

What's next for 20 Degree Questions: We haven't yet finished implementing the game on the Arduino. After finishing this, we could modify the program to make it shorter - using 2D arrays or mapping, which will be a whole new learning experience!

Built With

  • arduino-uno
Share this project: