0
0
AutocadHow-ToBeginner · 3 min read

What Programming Language Does Arduino Use? Simple Explanation

Arduino uses a simplified version of C++ programming language designed for easy use with its hardware. The Arduino IDE lets you write code in this language using simple functions like setup() and loop().
📐

Syntax

Arduino code is written in a simplified C++ style with two main functions: setup() and loop(). setup() runs once to initialize settings, and loop() runs repeatedly to keep the program active.

You use functions like digitalWrite() and digitalRead() to control pins on the board.

arduino
void setup() {
  // runs once
  pinMode(13, OUTPUT); // set pin 13 as output
}

void loop() {
  digitalWrite(13, HIGH); // turn LED on
  delay(1000);           // wait 1 second
  digitalWrite(13, LOW);  // turn LED off
  delay(1000);           // wait 1 second
}
💻

Example

This example blinks the built-in LED on pin 13 on and off every second. It shows how to use setup(), loop(), and basic pin control.

arduino
void setup() {
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);
  delay(1000);
  digitalWrite(13, LOW);
  delay(1000);
}
Output
The built-in LED on pin 13 blinks on for 1 second, then off for 1 second, repeatedly.
⚠️

Common Pitfalls

  • Forgetting to set pin modes with pinMode() causes pins to not work as expected.
  • Using delay() too much can make your program unresponsive.
  • Not understanding that loop() runs forever can confuse beginners.
arduino
/* Wrong: missing pinMode */
void setup() {
  // pinMode(13, OUTPUT); // forgot this
}

void loop() {
  digitalWrite(13, HIGH);
  delay(1000);
  digitalWrite(13, LOW);
  delay(1000);
}

/* Right: set pinMode */
void setup() {
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);
  delay(1000);
  digitalWrite(13, LOW);
  delay(1000);
}
📊

Quick Reference

  • setup(): Runs once at start
  • loop(): Runs repeatedly
  • pinMode(pin, mode): Set pin as INPUT or OUTPUT
  • digitalWrite(pin, value): Set pin HIGH or LOW
  • delay(ms): Pause program for ms milliseconds

Key Takeaways

Arduino uses a simplified C++ language with easy-to-understand functions.
Every Arduino program has setup() to initialize and loop() to run repeatedly.
Always set pin modes with pinMode() before using pins.
Avoid excessive delay() to keep your program responsive.
Arduino code controls hardware pins using digitalWrite() and digitalRead().