5 · Communication & data
State machine
Expert30 min
Goal
Structure a traffic light into explicit states (GREEN, AMBER, RED).
Why it matters
A state machine replaces unreadable delay() chains with clear logic.
What you need
- Arduino UNO board
- Push button
Nothing to buy: every component below is simulated in the browser.
Steps
- 01Declare enum State { GREEN, AMBER, RED };
- 02Handle transitions with millis() and a switch.
- 03Each state drives its own outputs.
- 04Add a pedestrian button that forces the transition.
This tutorial runs inside the Circuitly simulator: your wiring and your code are checked automatically at every step.
Frequently asked questions
- Do I need to buy hardware for this tutorial?
- No. Everything runs in the browser: Circuitly simulates the board, the components and the code. Real hardware is optional if you want to rebuild the circuit afterwards.
- Which components are used?
- Arduino UNO board, Push button. They are already available in the simulator library.
- How long does it take?
- About 30 minutes, expert level, in 4 guided steps.
- What should I know before starting?
- The previous tutorial in the series, “Remember after power-off (EEPROM)”, is enough preparation. No software install is required.
- Is the code provided and checked?
- The simulator checks your wiring and your code automatically at every step, and shows the commented solution if you get stuck.
For teachers
Get the teaching pack: 6 ready-to-run sessions
Full progression, objectives, student steps and an assessment grid — printable, free.
One address, no spam: just the pack and classroom updates.
In the same series
- Control the board from the keyboard
Switch the LED on/off with the “on” and “off” commands.
- Log data as CSV
Produce “time;value” lines usable in a spreadsheet.
- Remember after power-off (EEPROM)
Keep a setting even after a restart.
- Three tasks in parallel
Blink, measure and display at three different rates.