Logic: Switch Case

Mastering the Arduino Switch Case Statement

Hey makers! 👋

Ever wanted your Arduino to make choices — like deciding what to do based on which button you press or which sensor reading you get? That’s exactly what the switch...case statement is for!

What Is a Switch Case?

In simple terms, a switch case helps your Arduino handle different actions depending on the value of a variable. It’s like saying:

“If this happens, do that. If something else happens, do something different.”

Instead of stacking a bunch of if and else statements, switch...case keeps your code neat and easy to read.

How It Works

Here’s what a basic switch case looks like:

int mode = 2;

void setup() {
  Serial.begin(9600);
}

void loop() {
  switch (mode) {
    case 1:
      Serial.println("Mode 1: Blinking LED");
      break;

    case 2:
      Serial.println("Mode 2: Reading Sensor");
      break;

    case 3:
      Serial.println("Mode 3: Displaying Message");
      break;

    default:
      Serial.println("Unknown mode");
      break;
  }

  delay(2000);
}

Breaking It Down

  • switch (mode) → checks the value of the variable mode.
  • case 1, case 2, case 3 → defines what to do for each possible value.
  • break → tells the Arduino to stop after executing that case.
  • default → runs if none of the cases match (like a safety net).

Why Use Switch Case?

  • Keeps your code clean when dealing with multiple options.
  • Perfect for menu systems, multi-mode devices, or button-controlled features.
  • Easier to expand — just add another case when you add a new mode.

Real-World Example

You might use a switch case to:

  • Change between different LED patterns.
  • Control modes on a robot (like stop, move, turn).
  • Manage display menus or game levels.

Once you start using switch...case, you’ll realize how much neater and more organized your sketches can be! It’s a must-have tool in your Arduino programming toolbox. 💡