Arduino: Die einsteigerfreundliche Mikrocontroller-Plattform für Maker, Bildung & Prototyping

Arduino: Die einsteigerfreundliche Mikrocontroller-Plattform für Maker, Bildung & Prototyping

Was ist Arduino?

Arduino ist eine Open-Source-Plattform aus Mikrocontroller-Boards (z. B. Uno, Nano, Mega) und einer leicht zu bedienenden Arduino IDE. Dank tausender Bibliotheken und Beispiele lassen sich Sensoren, Motoren, LEDs & Co. in wenigen Minuten zum Laufen bringen.

Warum Arduino?

  • Einfacher Einstieg: klare Pin-Belegung, viele Tutorials.
  • Großes Ökosystem: Unmengen an Libraries, Shields und kompatiblen Modulen.
  • Stabil & zuverlässig: ideal für IO-Aufgaben, Bildung und schnelle Prototypen.
  • Plattformübergreifend: Windows, macOS, Linux; Web-Editor verfügbar.

Wichtige Boards (Kurzüberblick)

  • Uno / Nano (ATmega328P): Klassiker für den Einstieg, viele Shields/Beispiele.
  • Mega 2560: mehr Flash/RAM & viele Pins für größere Projekte.
  • Nano Every / Leonardo / Micro: kompakte Alternativen, teils mit USB-HID.
  • Nano RP2040 Connect / Portenta-Reihe: modernere Leistung & Konnektivität.

Schnittstellen & Pegel

  • Logikpegel: Uno/Mega typ. 5 V, viele moderne Sensoren 3,3 V → ggf. Pegelwandler.
  • I²C: Uno A4 (SDA) / A5 (SCL), Pull-Ups beachten.
  • SPI: Pins 10–13 (bzw. ICSP-Header).
  • UART: Pins 0/1 (Seriell, auch für Upload).
  • PWM: ~-markierte Pins (z. B. 3, 5, 6, 9, 10, 11 am Uno).

Stromversorgung

  • Über USB oder DC-Buchse (Vin) – On-Board-Regler erzeugt 5 V/3,3 V (boardabhängig).
  • I/O-Ströme begrenzt (z. B. LED mit Vorwiderstand).
  • Für Motoren/LED-Strips separate Versorgung + MOSFET/ Treiber verwenden.

Beispiel: Blink (Arduino IDE)


void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(500);
  digitalWrite(LED_BUILTIN, LOW);
  delay(500);
}

Beispiel: I²C-Sensor (BME280 mit Bibliothek)


#include <Wire.h>
#include <Adafruit_BME280.h>

Adafruit_BME280 bme;

void setup() {
  Serial.begin(115200);
  Wire.begin();                // Uno: A4/A5
  if (!bme.begin(0x76)) {  // Adresse je nach Modul 0x76/0x77
    Serial.println("BME280 nicht gefunden!");
    while (1) delay(10);
  }
}

void loop() {
  Serial.print("T: "); Serial.print(bme.readTemperature());
  Serial.print(" °C  RH: "); Serial.print(bme.readHumidity());
  Serial.print(" %  p: "); Serial.print(bme.readPressure() / 100.0);
  Serial.println(" hPa");
  delay(2000);
}

Troubleshooting (Kurz)

  • Upload schlägt fehl: richtigen Port/Board wählen, ggf. Treiber (CH340/CP2102).
  • Bibliothek nicht gefunden: über Library Manager installieren.
  • Sensor reagiert nicht: Verkabelung, I²C-Adresse, gemeinsame Masse, Pull-Ups prüfen.
  • Flackernde LEDs/Motorscheinen: ausreichende Versorgung, Masseführung, Entstörung/Kondensatoren.

Weiterführend: ESP32, I²C, SPI, UART, PWM, BME280, MOSFET, MicroPython/CircuitPython (modellabhängig).

0 Kommentare

Kommentieren

Bitte beachten Sie, dass Kommentare vor ihrer Veröffentlichung genehmigt werden müssen.