
What is a circuit? Resistor? LED?
Learn the basics of what is used to wire up a circuit, and how to create one on a breadboard.
Sometimes we need to change the amount of current flowing through a device in a circuit. We can do that with a potentiometer.
Everyone eventually learns that electronics run on magic blue smoke. Once you let it out, everything stops working!
Let's cover some basics to avoid damaging components and potential injuries.
AC vs DC current
Voltage levels
Overcurrent
More on magic smoke:
https://en.wikipedia.org/wiki/Magic_smoke
http://www.catb.org/jargon/html/M/magic-smoke.html
The moment of truth! Let's get this display wired up and say hello!
The Serial connection to our Arduino goes both ways and we can use it for a lot more than just printing a message on the screen!
Sometimes autoscroll doesn't do what you want, and you just need a little more control. Let's learn how we can move things manually.
Sometimes you want to print something that is too long to fit on screen. How can we handle that?
Printing text is great and all, but how are we supposed to make this screen into something resembling a game with just text?
Now that we have some custom characters let's learn how to animate them.
It isn't a game if it isn't interactive, and it isn't interactive if their isn't input, so let's add a button to solve that problem.
Now that our character can move, how about we give it something to avoid?
For now obstacles will be placed at a fixed interval to keep it simple. We'll make it more interesting in later lectures.
You may have noticed some issues with the button. Let's update the game logic to make the button behave better.
(NOTE: we discover in a later video that the breadboard I'm using is faulty, so some of the button issues I see are also related to that, but this logic is necessary to fix the main issues discussed here.)
The game isn't very interesting if you can just let the obstacles float through your character. Let's fix that.
Now it is starting to feel more like a game, but how do we tell others how far we've gone? Let's show a score on screen so you can tell how far you've gone.
Just one obstacle makes the game slow and boring. Let's kick it up a notch.
As you gain more points you show how good you are. So let's increase the difficulty over time to keep things challenging.
Now that the game is getting a little more difficult it might be a good idea to add the ability to pause.
To do that we'll need a second button, so let's learn how to handle more than one button at a time.
The sky is the limit for how you can apply what you've learned here.
You can make more than just games. The same code we've written today can be adapted to make a simple interface for a piece of hardware, for example. Or you could add a second program to your game 'console' and create a menu that lets you select which game you want to play.
This is all on a breadboard that can easily come apart. What if you could make all the connections a bit more permanent instead so everything could stay together? (Stay tuned for a future course to learn how to do just that!)
After that maybe you want to put it in a case and add some removable batteries so it is easier to take on the go. (Sounds like another future course to watch out for!)
What else can you think of? What do you want to do next?
Bring electronics and programming to life by building your own playable game with an Arduino and a 16x2 LCD display.
In this hands-on beginner-friendly course, you’ll learn how to connect common electronics components to an Arduino, write to an LCD screen, read button input, and write code that turns simple hardware into an interactive game. By the end of the course you’ll have created a real project you can play, modify, and expand.
To set you up for success, and avoid component damage, we start with a basic introduction to electronics including, what voltage and current mean, how buttons and resistors are used, and how to safely connect components. Then you'll wire up a 16x2 LCD and buttons so you'll be ready to build your own game step by step.
You’ll learn how to:
Read button presses for player input
Move a character across the screen
Create custom LCD characters and simple animation
Add obstacles and collision detection
Track score and high score
Add a pause menu
Increase difficulty as the game progresses
and more!
You’ll also learn how to think like an embedded developer—breaking a larger idea into smaller features and building them one piece at a time.
This course is ideal for beginners who want to learn Arduino through a real project instead of disconnected examples. It’s also great for hobbyists, parents, students, and anyone curious about electronics and how to use code to interact with real hardware.
By the time you finish, you’ll have the skills to customize your game and build your own future Arduino projects.
If you’ve wanted to learn Arduino but didn't know where to begin, this is the place.