Arduino Cheat Sheet


© Silvia Rothen, rothen ecotronics, Schweiz

Autorin: Dr. Silvia Rothen, rothen ecotronics, Bern, Schweiz
Letzte Überarbeitung: 15.05.18

Diese Dokumentation ist schon lange über das A4-Mass eines Cheat Sheets hinausgewachsen. Es handelt sich eher um eine umfassende Dokumentation zu allem, was ich im Zusammenhang mit Arduino, physical computing und Elektronikbasteleien nützlich finde.


Inhaltsverzeichnis


Was ist Arduino?

Arduino ist ein Board, das einen Mikrocontroller, d.h. einen Minicomputer, mit Schnittstellen für Sensoren und Aktoren kombiniert. Das Board lässt sich via USB-Port an einen Computer anschliessen und von dort aus mit der Arduino-Entwicklungsumgebung in einer C-ähnlichen Sprache programmieren. Damit ist es möglich, rasch Prototypen von elektronischen Geräten zu bauen.

Zurück zum Inhaltsverzeichnis


Hardware

Das Arduino-Board

Mein Board, ein Arduino Uno R3, besteht aus den folgenden Komponenten:

Eine gute Erläuterung der Komponenten auf dem UNO-Board findet man bei Lady Ada.

Wer viele Anschlüsse benötigt, sollte gleich zum MEGA 2560 greifen, diese Variante kommt mit über 50 Anschlüssen daher.

Die Stromversorgung erfolgt über den USB-Anschluss mit 5V und bis zu 0.5 Ampere oder über die externe Stromversorgung mit einer 9V-Batterie oder einem Netzteil mit 9 bis 12Volt und 0.5 bis 1 Ampere. Die Polung der 2.1mm-Buchse ist beim Arduino innen Plus, aussen Minus, siehe http://www.arduino-tutorial.de/2010/06/netzteil/. Bei 5V gibt es pro I/O-Pin 40 mA Strom.

Steckbretter / Breadboards

Natürlich kann man für einfache Schaltungen Arduino direkt mit den entsprechenden Komponenten verkabeln. Oder man kann seine Komponenten auf Leiterplatten verlöten. Wenn man aber mit Arduino vor allem experimentieren und Prototypen von Geräten zusammenstecken möchte, dann ist ein Steckbrett oder englisch Breadboard am komfortabelsten. Ein Steckbrett ist nichts anderes als eine Platte mit vielen Löchern, die mit Leiterbahnen verbunden sind. Dadurch kann man seine Schaltungen zusammenstecken, das heisst Komponenten und die Verbindungskabel verkabeln. Dazu muss man natürlich wissen, wie die Leiterbahnen im Breadboard verlaufen. Im Normalfall findet man links und rechts je 2 vertikale Bahnen, die für den Anschluss von Strom und Masse dienen, sowie dazwischen 2 Sets von horizontalen Reihen, in die man seine Komponenten und Kabelanschlüsse steckt.

Komponenten

Ohne Komponenten kann man mit Arduino noch nicht viel anfangen. Zwar gibt es auf dem Board ein integriertes LED an Pin 13, so dass man zumindest mit einem ersten Programm ein LED zum Blinken bringen kann (man findet es in der Entwicklungsumgebung unter Examples - Blink).

Wer ein konkretes Projekt hat, kann sich die Komponenten im Elektronikfachhandel oder in einem der zahlreichen Online-Shops einzeln zusammenkaufen. Für Experimente ist es aber praktischer, sich eines der Experimentier-Kits anzuschaffen, die zu Arduino angeboten werden, da man damit schon einen Satz an Sensoren, Aktoren und Kabelverbindungen zum Starten hat. Es gibt zahlreiche Anbieter für solche Kits, u.a. auch Verlage, die das Kit in Kombination mit einem Buch anbieten (im deutschsprachigen Raum z.B. Franzis).

Sensoren

Sensoren messen einen Wert in der realen Welt und liefern diesen als Input an Arduino zurück. Der Wert kann binär (kein Strom oder Strom d.h. 0 oder 1), PWM (Pulse Width Modulation 0 bis 255) oder analog (0 bis 1023) sein.

Infrarotempfänger

Ein Infrarotempfänger dekodiert den Output von Infrarot-Fernbedienungen, wie sie bei Geräten wie TVs eingesetzt werden. Das vorliegende Modell ist ein VS1838B, bei anderen Modellen ändert sich u.U. die Anordnung der Beinchen, aber ansonsten bleibt der Bestückungsplan derselbe.

Bestückungsplan:

Bestückungsplan für Arduino und IR-Sensor vom Typ VS/1838B

Piezo-Summer als Erschütterungssensor

Ein Piezo-Summer wird normalerweise als Aktor verwendet, um Töne zu erzeugen. In Kombination mit einem hohen Widerstand von 1 Megaohm lässt sich die Wirkung aber auch umdrehen: Das Piezo-Element fungiert nun als Sensor für Erschütterungen und laute Töne. Das Lichtobjekt "Les Fleurs du Mal" macht auf diese Weise von einem Summer gebrauch.

Bestückungsplan:

Bestückungsplan für Arduino und Piezo-Summer als Erschütterungssensor

Photowiderstand

Ein Widerstand, der auf Licht reagiert und deshalb zur Helligkeitsmessung eingesetzt werden kann.

Bestückungsplan:

Bestückungsplan für Arduino und Photowiderstand

Aktoren

Aktoren wandeln die elektrischen Impulse, die sie vom Arduino erhalten, in eine Aktion um: LEDs leuchten, Motoren drehen sich, Servomotoren nehmen eine bestimmte Position ein.

4 Digit 7 Segment LED Display

Solche LED-Displays mit 4 Zeichen gibt es unzählige, deshalb unbedingt Pins zählen und das Datenblatt durchsehen. Beim vorliegenden Display handelt es sich um ein multiplexed Display mit 12 Pins und common cathode vom Typ LN3461AS2B. Ein vollständiges Tutorial mit Code findet sich in meinem Blog. Das Display wird übrigens am Besten vertikal in die zwei mittleren Reihen des Steckbretts gesteckt, das konnte ich aus Platzgründen im Bestückungsplan nicht abbilden. Die Beinchen der Pins sind übrigens zu dünn für den Female-Anschluss eines Jumperkabels, also bleibt nur Löten oder Steckbrett.

Komponenten:

Bestückungsplan für Arduino und multiplexed 4 Digit 7 Segment LED Display vom Typ LN3461AS2B

Gleichstrommotor

Ein Gleichstrommotor benötigt auch in der Spielzeugversion im Normalfall mehr Strom, als ein Pin des Arduino liefern kann. Deshalb wird ein NPN-Transistor als Schalter eingesetzt, um mit einem geringen Strom am Base-Pin des Transistors den stärkeren Strom für den Motor zu steuern. Zwischen Base-Pin und Arduino-Pin kommt zum Schutz des Transistors ein Widerstand, im aktuellen Fall von 2.2 kOhm. Die Diode wiederum schützt alle Komponenten (insbesondere den Arduino) vor den Induktionsströmen, die entstehen, wenn die Stromzufuhr des Motors unterbrochen wird und das Magnetfeld im Motor zusammenbricht.

In meinem Blog finden sich die folgenden Tutorials mit Gleichstrommotoren:

Bestückungsplan für Arduino und Gleichstrommotor

LED

LED steht für light-emitting diode oder Leuchtdiode. LEDs gibt es in diversen Farben, die gängigsten sind grün und rot.

Bestückungsplan:

Bestückungsplan für Arduino mit LED 5mm

RGB-LED

Eine RGB-LED ist eine Leuchtdiode, bei der die Farben Rot, Grün und Blau so gemischt werden, dass damit ein Grossteil des Farbspektrums abgebildet werden kann. Es gibt Anoden- und Kathoden-RGB-LED.

Bestückungsplan für eine Anoden-RGB-Led:

Bestückungsplan für Arduino mit RGB-LED

Zurück zum Inhaltsverzeichnis


Formeln, Schaltungen und elektrische Grundlagen

Wenn man sich mit Elektronik beschäftigt, kommt man um ein paar Formeln nicht herum. Spätestens dann, wenn eine Schaltung nicht läuft, weil 40 mA aus einem Arduino-Pin nicht ausreichen, muss man sich mit ein paar Grundlagen der Elektrizitätslehre auseinandersetzen.

Ohmsches Gesetz

Diese Formel kommt immer wieder vor, z.B. wenn man Vorwiderstände für LEDs berechnen will.

Spannung U = Widerstand R * Strom I

oder in Einheiten ausgedrückt:

Volt = Ohm * Ampere

Eine Anwendung des Ohmschen Gesetzes ist die Berechnung von Vorwiderständen für LEDs. LEDs sind ja für eine bestimmte Spannung und einen bestimmten Strom ausgelegt. Wenn die Spannungsversorgung wie beim Arduino höher ist, dann muss man sie mit einem Widerstand herabsetzen, um die LED nicht zu zerstören.

Mit dem Multimeter habe ich ausgemessen, dass meine grünen LEDs für 2.16 Volt und 10.7 mA ausgelegt sind. Versorgt wird die LED mit 5V aus dem Arduino. Der Vorwiderstand muss nun mindestens so hoch sein wie die Spannungsdifferenz / Strom.

Vorwiderstand = Spannungsdifferenz / Strom

oder in Einheiten:

Ohm = Spannungsdifferenz in Volt / Ampere

266 Ohm = 2.16 V / 0.0107 A

Brücken-Gleichrichterschaltung

Eigentlich dient diese Schaltung dazu, aus Wechselstrom Gleichstrom zu machen. Meine Fragestellung war etwas anders: Wenn ich einen Gleichstrommotor als Generator in einem Windrad einsetze, kann sich Plus- und Minuspol vertauschen, wenn sich der Wind und damit die Drehrichtung des Windrads dreht. Die Kondensatoren dienen zur Glättung. Die LED zeigt an, ab Strom geliefert wird.

Es ist mir zwar nicht gelungen, die Schaltung mit Strom aus einem Windrad zu versorgen, aber sie funktioniert, das habe ich mit einer Batterie getestet, indem ich den positiven und negativen Anschluss vertauscht habe.

Quellen:

Zurück zum Inhaltsverzeichnis


Programmiersprache

Das Arduino kommt mit einer eigenen Entwicklungsumgebung und einer eigenen, an C++ angelehnten Programmiersprache. Für mich als Java-Programmiererin ist das praktisch, denn die Syntax entspricht von ganz wenigen Ausnahmen abgesehen einfach Java. Ich verzichte deshalb auch auf eine Einführung der grundlegenden Elemente, denn allen Java- und C#-Entwickler/innen muss ich nicht erklären, was eine Variable ist oder wie man Verzweigungen und Schleifen programmiert. In Arduino kann man die Syntax für if und for unverändert übernehmen. Ausserdem gibt es unzählige Tutorials im Netz, die in die Grundlagen der Programmierung mit Arduino. einführen. Ich konzentriere mich deshalb auf jene Sprachelemente, die spezifisch für das Arduino-Board sind. Die Angaben zu Pins beziehen sich übrigens auf Arduino Uno R3, andere Varianten weisen z.T. mehr Pins auf.

Notwendige Methoden

void setup {...}

void loop {...}

Typen

Bei Arduino gilt, was man in den letzten Jahren in der Programmierung eher vergessen hat: "Memory matters!". Im Gegensatz zu modernen Rechnern ist Arduino nicht endlos mit Memory ausgestattet, so dass es durchaus Sinn macht, den (in Bits und Bytes) kleinstmöglichen Datentyp für eine Variable zu wählen, um das Memory zu schonen (für PWM-Pins z.B. byte).

Ganzzahltypen

    Arduino UNO und ATMega Arduino Due
Type Vorzeichen Anzahl Bit Wertebereich Anzahl Bit Wertebereich
byte ohne 8 0-255 dito dito
short mit 16 -32'768 bis 32'767 dito dito
word ohne 16 0-65'535 dito dito
int mit 16 -32'768 bis 32'767 32 -2'147'483'648 bis 2'147'483'647
unsigned int ohne 16 0-65'535 32 0 bis 4'294'967'295
long mit 32 -2'147'483'648 bis 2'147'483'647 dito dito
unsigned long ohne 32 0 bis 4'294'967'295 dito dito

Dezimaltypen

Buchstaben und Strings

Ein String kann in Arduino als 0-terminierter Char-Array oder als String-Objekt deklariert werden.

Arrays

Bei den Arrays bin ich zuerst über gewisse Differenzen zu Java gestolpert.

Arrays sind 0-basiert. Ein Array lässt sich auf verschiedene Arten deklarieren:

int myArray[3];

int myArray[] = {15, 7, 24};

int myArray[3] = {15, 7, 24};

char myArray[6] = "Hallo";

Man beachte beim letzten Beispiel, dass wegen des Endzeichens der Array Länge 6 hat, obwohl der String nur 5 Zeichen hat.

Einen Wert zuweisen:

myArray[0] = 5;

Einen Wert auslesen:

int wertRot = led[0];

Die Länge eines Arrays lässt sich mit der Funktion sizeof bestimmen. Allerdings gibt es da ein paar kleine Gemeinheiten:

Arduino kennt auch mehrdimensionale Arrays. Bei der Übergabe in eine Funktion muss man die Länge für alle Dimensionen ausser der ersten angeben.

int colorSequenceRGB[3][3] =
  {{255, 0, 0}, {0, 255, 0}, {0, 0, 255}};

void playColorSequence(
  int colorSequence[][3], int length) {...}

Einen Array wieder zu leeren ist gar nicht so einfach. Dazu muss man ihn mit der Funktion memset mit dem Zeichen mit dem ASCII-Wert 0 füllen. Im folgenden Code-Snippet ist incoming der Array:

memset(incoming, 0, sizeof(incoming));

Hardware ansprechen

Ausgabe an digitalen Pins

Zielsetzung: Über einen digitalen Pin etwas einschalten, z.B. ein LED-Lämpchen

Pin in Methode setup initialisieren

pinMode(pin, mode);

pin: 0 - 19, die 6 analogen Pins 0 bis 5 sind 14 - 19
mode: vordefinierte Konstanten INPUT oder OUTPUT

digitalWrite(pin, value);

pin: 0 - 13, muss zuerst mit pinMode(nr, OUTPUT) auf Output gesetzt sein
value: HIGH (5 Volt) oder LOW (Erdung)

So sieht ein ganzes Programm aus, um ein LED an Pin 13 zum Blinken zu bringen:

int led = 13;

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

void loop() {
  digitalWrite(led, HIGH); // LED anschalten
  delay(100); // eine Zehntelsekunde warten
  digitalWrite(led, LOW); // LED abschalten
  delay(100);
}

Einlesen von digitalen Pins

Zielsetzung: Den Zustand eines digitalen Pins einlesen, z.B. den Zustand eines Buttons oder Schalters

In setup() den Pin auf INPUT setzen:

pinMode(button1, INPUT);

Mit digitalRead wird der Wert LOW oder HIGH (oft in Kombination mit einem if-Statement) wieder ausgelesen:

if(digitalRead(button1) == LOW) {...

Ausgabe an analogen Pins

Zielsetzung: Über einen analogen oder PWM-Pin etwas auf- oder zudrehen, z.B. die Helligkeit eines LED Schritt für Schritt von 0 bis 255 erhöhen.

Pin ebenso wie für digitalen Output in Methode setup initialisieren

pinMode(led, OUTPUT);

Die Konstanten sind wie zuvor INPUT oder OUTPUT und für die Ausgabe gilt natürlich OUTPUT. Dabei muss ein analoger Pin oder einer mit PWM angegeben werden, z.B. Pin 9. Die Ausgabe erfolgt mit analogWrite, wobei der Wert für PWM-Pins zwischen 0 und 255 und für analoge Pins zwischen 0 und 1023 liegen kann.

analogWrite(led, random(0, 255));

Einlesen von analogen Pins

Pin initialisieren:

pinMode(potentiometerPin, INPUT);

Das Einlesen eines analogen Pins liefert dezimale Werte von 0 bis 1023:

potentiometerValue = analogRead(potentiometerPin);

Schnittstellen

Werte an den seriellen Monitor in der Entwicklungsumgebung ausgeben

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

void loop() {
  ...
  Serial.println(temperature)
}

Werte aus der seriellen Schnittstelle einlesen

Zuerst muss man mit Serial.available() prüfen, ob noch weitere Werte in der Warteschlange stehen und dann werden sie mit Serial.read Zeichen für Zeichen eingelesen und in einen Array of char abgefüllt.. Wird die serielle Schnittstelle im Loop ausgelesen, muss ausserdem zuerst der Array mit memset jeweils wieder gelöscht werden. Und soll der eingelesene Wert beispielsweise zur Steuerung der Umlaufgeschwindigkeit eines Motors oder der Helligkeit eines LED benutzt werden, dann ist noch atoi notwendig, um den String in einen Integer umzuwandeln.

Das folgende Codebeispiel zeigt, wie man aus der seriellen Schnittstelle einen Wert von 0 bis 255 ausliest und die Geschwindigkeit eines DC-Motors entsprechend anpasst.

int motorPin = 9; // an diesem Pin hängt der Motor
int val = 0; //zuerst steht der Motor
char incoming[4] = {}; //wegen Endzeichen

void setup() {
  Serial.begin(9600); // connect to the serial port
  pinMode(motorPin, OUTPUT);
}

void loop() {

  int i = 0;

  if (Serial.available() > 0) {
    //sonst bleiben die 0 erhalten 60 -> 600
    memset(incoming, 0, sizeof(incoming));
    while (Serial.available() > 0
      && i < sizeof(incoming) - 1) {
      incoming[i] = Serial.read();
      i++;
      delay(3);
    }

    //array of char in int wandeln
    val = atoi(incoming);
    //Geschwindigkeit limitieren
    if (val < 0) {
      val = 0;
    } else if (val > 255) {
      val = 255;
    }

    Serial.print("Umlaufgeschwindigkeit ");
    Serial.println(val);
    //Motorgeschwindigkeit setzen
    analogWrite(motorPin, val);
  }
}

Nützliche Methoden und Funktionen

Call by value / Call by reference

Standardmässig werden Argumente als Werte, d.h. call by value, in Funktionen oder Methoden übergeben. Sollen sie innerhalb der Funktion oder Methode geändert werden können, dann muss man sie als Referenzen, d.h. call by reference übergeben. In Arduino wandelt man ein Wert-Argument in eine Referenz um, indem man dem Variablen-Namen & voranstellt.

int myFunction(int &myVariable) {...}

Zeit

millis();

Funktion, Typ unsigned long, Anzahl Millisekunden seit dem Anschalten des Arduino. Ohne Reset läuft die Variable nach ca. 50 Tagen über und beginnt wieder bei 0.

delay(1000);

Wartet die angegebene Anzahl Millisekunden

Zufallswerte

Da Arduino keine echten Zufallszahlen kennt, muss man die Zufallszahlen initialisieren, um bessere Ergebnisse zu erhalten. Im Normalfall macht man diese mit dem Startwert millis():

randomSeed(millis());
int rndValue = random(100, 200);

Zufallswert zwischen Minimum und Maximum erzeugen.
Achtung: Die Untergrenze ist eingeschlossen, die Obergrenze aber nicht, d.h. der Code oben produziert Werte von 100 bis 199.

constrain

Da PWM-Pins auf dem Arduino-Board auf Werte zwischen 0 bis 255 und für analoge Pins zwischen 0 und 1023 begrenzt sind, kann man die praktische Funktion constrain(meineVariable, Minimum, Maximum) benutzen, um zugewiesene Werte genau auf diesen Bereich zu begrenzen:

helligkeit = constrain(helligkeit, 0, 255);

Constrain funktioniert übrigens mit allen numerischen Datentypen. Alles Weitere zu constrain findet man hier.

map

Diese äusserst nützliche Funktion nimmt automatische Berechnungen von einem Wertebereich in einen anderen vor, z.B. von einer analogen Eingabe im Wertebereich 0 bis 1023 zu einem PWM-Output im Bereich 0 bis 255.

helligkeitLED = map(analogerInput, 0, 1023, 0, 255);

atoi

Wandelt einen array of char in einen Integer um, falls dies möglich ist.

val = atoi(incoming);

toCharArray

Wandelt einen String in einen Array Char um:

char time[8] = {};
int hour = 10;
String strTime = "Zeit ";
strTime += hour; //Hier erfolgt Umwandlung von int zu String
strTime.toCharArray(time, 8);
 

Interrupts

Interrupts sind dann nötig, wenn im Arduino-Loop ein bestimmtes Programm abläuft, dass durch gelegentliche Inputs, z.B. durch die Benutzer oder durch Sensoren, unterbrochen und verändert wird. So könnten z.B. für eine RGB-LED verschiedene Funktionen zum Farbwechsel vorhanden sein, die durch Knopfdruck vom User gewechselt werden. Für solche Unterbrechungen benötigt man Interrupts.

Das Arduino-UNO-Board hat zwei externe Interrupts:

Im Setup muss man eine Interrupt-Funktion mit attachInterrupt an einen dieser zwei Interrupts hängen. Das dritte Argument ist der Modus. Er kann folgende Werte annehmen:

Damit Variablen in der Interrupt-Funktion und im Hauptprogramm verfügbar sind, müssen sie mit volatile deklariert werden. Alle Elemente zusammen ergeben den folgenden Code:

volatile boolean on = false;

void setup() {
  ...
  attachInterrupt(0, change, LOW);
}

void loop() {
  if (on) {
    ...
  }
}

//this is the interrupt method
void change() {
  on = !on;
}

In meinem Tutorial zur Motorensteuerung findet man ein vollständiges Code-Beispiel inklusive Bestückungsplan.

Übrigens gibt es ab Version 1.0 Probleme, wenn man versucht Serial.print in einem Interrupt zu verwenden (Quelle)!

Zurück zum Inhaltsverzeichnis


Warnungen, Tipps und Tricks

Warnungen

Tipps und Tricks

Zurück zum Inhaltsverzeichnis


Weitere Hilfsmittel

Arduino ist auch eine kleine Übung in Zen: Wenn man nur ein einziges Arduino-Board, aber ganz viele Ideen für Projekte hat, dann kommt relativ rasch der Zeitpunkt, wo man sein absolut geniales Projekt wieder loslassen muss, damit man das nächste Projekt starten kann. Wenn man so wie ich mit Zen noch nicht sehr weit gekommen ist, dann bringt man das kaum übers Herz und möchte das Erreichte zumindest dokumentieren, um es später wieder nachbauen zu können. Ganz ohne Spuren zu hinterlassen, kann ich mich nicht von einem Projekt verabschieden.

Software

Bei meinen Webrecherchen bin ich rasch auf die Opensource-Software Fritzing gestossen, mit der sich die Verkabelung auf der Steckplatine dokumentieren lässt. Gleichzeitig wird der Schaltplan dazu erstellt, und wer will, kann gleich eine Platine für die Produktion entwerfen und in Auftrag geben. Die Software ist wirklich sehr einfach, es ist mir nach dem Herunterladen in kürzester Zeit gelungen, mein Projekt "Temperarmelder" zu dokumentieren.

Eventuell möchte man die Arduino-Daten auch auf einem normalen Computer weiterverarbeiten oder Arduino von dort aus steuern. Um sich die entsprechende Software zu schreiben, wird zwar meist Processing empfohlen, aber prinzipiell kann man auf jede Programmiersprache zurückgreifen, welche die serielle Schnittstelle unterstützt (Delphi, Java, CSharp, C...). Ich selbst habe mich für CSharp entschieden, weil ich schon vorher mit dieser Sprache gearbeitet habe und weil Visual Studio Express gratis zur Verfügung steht.

Eine weitere Opensource-Software, die ich in den letzten Tagen öfters verwendet habe, ist Inkscape, ein Vektorgrafikzeichnungsprogramm. Mit ihm habe ich Zahnräder gezeichnet oder den Schnittplan für eine Arduino-Box aus Karton

Werkzeug

Und natürlich kommt man um Werkzeug nicht herum. Hier mal eine kleine Auflistung, was bei Arduino-Basteleien alles nützlich ist:

Wer eher richtig Mechanik und Maschinen geht, braucht irgendwann auch eine Bohrmaschine.

Und für LilyPad und wearable Computing ist natürlich eine Nähmaschine von Vorteil.

Material

Um rasch einen Prototypen zusammenzustecken oder irgendeine Konstruktion zusammenzubauen, hat sich das folgende Material als nützlich erwiesen:

Schauen Sie sich in Ihrem Haushalt um: Sie werden staunen, wie viel Abfall man für kreative Basteleien verwenden kann. Mein Motto ist seit kurzem:

Wirfst Du noch weg, oder bastelst Du schon?

Zurück zum Inhaltsverzeichnis


Begriffe / Glossar / Übersetzungen

Begriff deutsch Begriff englisch Abkürzung Erklärung
Buchsenleiste Pin socket    
Gleichstrom Direct current DC Strom, dessen Stärke und Richtung sich nicht ändert
Masse Ground GND Die Masse ist das negative Ende einer Schaltung.
Pulsweitenmodulation Pulse-width modulation PWM An digitalen Pins wird durch rasches Ein- und Ausschalten ein analoges Verhalten simuliert
Stabilisiert     bedeutet bei einem Netzteil,dass bei Leerlauf die Ausgangsspannung ihren Nennwert behält
Steckbrett Breadboard   Durchlöchertes Plastikbrett mit Leiterbahnen, mit dessen Hilfe rasch Schaltungen gesteckt werden können.
Steckleiste Pin header    

Zurück zum Inhaltsverzeichnis


Datenblätter

Datenblätter zu meinen Komponenten:

Zurück zum Inhaltsverzeichnis


Links und Quellen

Zurück zum Inhaltsverzeichnis


Diese Webseite wurde am 03.05.18 um 22:34 von rothen ecotronics erstellt oder überarbeitet.

Impressum

Zurück zu rothen ecotronics

Printed on 100% recycled electrons!