gavmac00/arduino-docs huggingface dataset:
digitalRead()
          [Digital I/O]
          
Beschreibung
Liest einen Wert von einem vorgegebenen Digitalpin ein, entweder HIGH oder LOW.
Syntax
digitalRead(pin)
Parameter
pin: Die Nummer des Arduino-Digitalpins, welcher gelesen werden soll.
Rückgabewert
HIGH oder LOW.
Beispielcode
Setzt Pin 13 auf den gleichen Wert wie Pin 7, welcher als Eingang definiert ist.
int ledPin = 13; // LED verbunden mit Digitalpin 13
int inPin = 7;   // Button verbunden mit Digitalpin 7
int val = 0;     // Variable, um den gelesenen Wert zu speichern
void setup() {
  pinMode(ledPin, OUTPUT); // Setzt den Digitalpin 13 als Outputpin
pinMode(ledPin, OUTPUT); // Setzt den Digitalpin 13 als Outputpin
  pinMode(inPin, INPUT);   // Setzt den Digitalpin 7 als Intputpin
}
void loop() {
  val = digitalRead(inPin);  // Liest den Inputpin
  digitalWrite(ledPin, val); // Setzt die LED auf den Wert des Buttons
}
Anmerkungen und Warnungen
Wenn der Pin nicht mit irgendetwas verbunden ist, kann digitalRead() entweder HIGH oder LOW (das passiert völlig zufällig) zurückgeben.
Die analogen Inputpins können als Digitalpins verwendet werden mit den Namen A0, A1, etc. Eine Ausnahme bilden die Pins A6 und A7 von Arduino Nano, Pro Mini und Mini, die nur als analoge Eingänge verwendet werden können.
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Digital io
            > Digitalwrite
          
digitalWrite()
          [Digital I/O]
          
Beschreibung
Schreibt einen HIGH- oder LOW-Wert auf einen Digitalpin.
Beschreibung
Schreibt einen HIGH- oder LOW-Wert auf einen Digitalpin.
Wenn der Pin mit pinMode() als Outputpin gesetzt wird, wird die Spannung auf den Wert 5V (oder 3,3V) für HIGH gesetzt, 0V für LOW. Es wird empfohlen, den Pin mit pinMode() auf INPUT_PULLUP zu setzen, um den internen Pull-Up-Widerstand zu nutzen. Für mehr Informationen siehe: Tutorial zu Digitalpins.
Wenn du pinMode() nicht auf OUTPUT setzt, aber eine LED auf den Pin anschließt, kann die LED mit digitalWrite(HIGH) gedimmt erscheinen. Wenn pinMode() nicht explicit gesetzt wird, verwendet digitalWrite() den Pull-Up-Widerstand, der als eine Art großer spannungslimitierender Widerstand wirkt.
Syntax
digitalWrite(pin, value)
Parameter
pin: Die Arduino-Pinnummer.
Syntax
digitalWrite(pin, value)
Parameter
pin: Die Arduino-Pinnummer.
value: HIGH oder LOW.
Rückgabewert
Nichts.
Beispielcode
Der Code deklariert Digitalpin 13 als OUTPUT und alterniert auf diesem Pin von HIGH auf LOW mit einem Abstand von einer Sekunde.
void setup() {
  pinMode(13, OUTPUT); // Setzt den Digitalpin 13 als Outputpin
}
void loop() {
  digitalWrite(13, HIGH); // Setzt den Digitalpin 13 auf HIGH = "Ein"
  delay(1000);            // Wartet eine Sekunde
  digitalWrite(13, LOW);  // Setzt den Digitalpin 13 auf LOW = "Aus"
  delay(1000);            // Wartet eine Sekunde
}
Anmerkungen und Warnungen
}
Anmerkungen und Warnungen
Die analogen Inputpins können als Digitalpins verwendet werden mit den Namen A0, A1, etc. Die Ausnahme sind der Arduino Nano, Pro Mini, und die Arduino Mini-Pins A6 und A7, welche nur
als analoge Inputs genutzt werden können.
Siehe auch
BEISPIEL-Tutorial: (Beschreibung der digitalen Pins)
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Digital io
            > Pinmode
          
pinMode()
          [Digital I/O]
          
Beschreibung
pinMode()
          [Digital I/O]
          
Beschreibung
Konfiguriert den spezifizierten Pin als Input oder Output. Für mehr Informationen siehe: Beschreibung der digitalen Pins.
Seit Arduino 1.0.1 ist es möglich, den internen Pull-Up-Widerstand mit dem Modus INPUT_PULLUP zu setzen. Der INPUT-Modus deaktiviert den internen Pull-Up-Widerstand komplett.
Syntax
pinMode(pin, mode)
Parameter
pin: Die Arduino-Pinnummer, auf der der Pinmodus gesetzt werden soll.
mode: INPUT, OUTPUT oder INPUT_PULLUP. (Für mehr Informationen siehe: Beschreibung der digitalen Pins.)
Rückgabewert
Nichts.
Beispielcode
Rückgabewert
Nichts.
Beispielcode
Der Code deklariert Digitalpin 13 als OUTPUT und alterniert auf diesem Pin von HIGH auf LOW mit einem Abstand von einer Sekunde.
void setup() {
  pinMode(13, OUTPUT); // Setzt den Digitalpin 13 als Outputpin
}
void loop() {
  digitalWrite(13, HIGH); // Setzt den Digitalpin 13 auf HIGH = "Ein"
  delay(1000);            // Wartet eine Sekunde
  digitalWrite(13, LOW);  // Setzt den Digitalpin 13 auf LOW = "Aus"
  delay(1000);            // Wartet eine Sekunde
}
Anmerkungen und Warnungen
Die analogen Inputpins können als Digitalpins verwendet werden mit den Namen A0, A1, etc.
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Highbyte
          
highByte()
          [Bits and Bytes]
          
Beschreibung
highByte()
          [Bits and Bytes]
          
Beschreibung
Liest das most-significant (linkeste) Bit eines Wortes (oder das zweitkleinste Bit eines größeren Datentypes).
Syntax
highByte(x)
Parameter
x: Wert von beliebigen Typ.
Rückgabewert
Das geforderte Byte. Datentyp: byte.
Siehe auch
SPRACHE word()
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Bitread
          
bitRead()
          [Bits and Bytes]
          
Beschreibung
Liest ein Bit aus einer Zahlenvariable.
Syntax
Beschreibung
Liest ein Bit aus einer Zahlenvariable.
Syntax
bitRead(x, n)
Parameter
x: Die Zahlenvariable, aus der gelesen werden soll.
n: Welches Bit gelesen werden soll; Startet bei 0 für das least-significant (rechteste) Bit.
Rückgabewert
Den Wert des Bits (0 oder 1).
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Bitwrite
          
bitWrite()
          [Bits and Bytes]
          
Beschreibung
Schreibt ein Bit einer Zahlenvariable.
Syntax
Beschreibung
Schreibt ein Bit einer Zahlenvariable.
Syntax
bitWrite(x, n, b)
Parameter
x: Die Zahlenvariable, auf die geschrieben werden soll.
n: Welches Bit der Zahlenvariable geschrieben werden soll; Startet bei 0 für das least-significant (rechteste) Bit.
b: Der Wert, der auf das Bit geschrieben werden soll (0 oder 1).
Rückgabewert
Nichts.
Beispielcode
Demonstriert die Verwendung von bitWrite, indem der Wert einer Variablen vor und nach der Verwendung von bitWrite() auf dem seriellen Monitor geschrieben wird.
void setup() {
  Serial.begin(9600);
void setup() {
  Serial.begin(9600);
  while (!Serial) {}  // Warten, bis die serielle Schnittstelle verbunden ist. Wird nur für den nativen USB-Anschluss benötigt
  byte x = 0b10000000;  // Das 0b-Präfix gibt eine binäre Konstante an
  Serial.println(x, BIN); // 10000000
  bitWrite(x, 0, 1);  // Schreibe 1 auf das niedrigstwertige Bit von x
  Serial.println(x, BIN); // 10000001
}
void loop() {
  // ...
}
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Lowbyte
          
lowByte()
          [Bits and Bytes]
          
Beschreibung
lowByte()
          [Bits and Bytes]
          
Beschreibung
Liest das least-significant (rechteste) Bit eines Wortes oder größeren Datentypes.
Syntax
lowByte(x)
Parameter
x: Wert von beliebigen Typ.
Rückgabewert
Das geforderte Byte. Datentyp: byte.
Siehe auch
SPRACHE word()
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Bitset
          
bitSet()
          [Bits and Bytes]
          
Beschreibung
bitSet()
          [Bits and Bytes]
          
Beschreibung
Setzt (Schreibt eine 1) ein Bit einer Zahlenvariable.
Syntax
bitSet(x, n)
Parameter
x: Die Zahlenvariable, in der das Bit gesetzt werden soll.
n: Welches Bit gesetzt werden soll; Startet bei 0 für das least-significant (rechteste) Bit.
Rückgabewert
Nichts.
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Bitclear
          
bitClear()
          [Bits and Bytes]
          
Beschreibung
bitClear()
          [Bits and Bytes]
          
Beschreibung
Löscht den Wert (Schreibt 0) eines Bits einer Zahlen-Variable.
Syntax
bitClear(x, n)
Parameter
x: Die Zahlenvariable, deren Wert gelöscht werden soll.
n: Welches Bit gelöscht werden soll; Startet bei 0 für das least-significant (rechteste) Bit.
Rückgabewert
x: Der Wert der numerischen Variablen nach dem Löschen des Bits an Position n.
Beispielcode
Beispielcode
Gibt das Ergebnis von bitClear (x, n) aus und verwendet zwei vorgegebenen ganzen Zahlen. Die binäre Darstellung von 6 ist 0110. Wenn also n=1 ist, wird das zweite Bit von rechts auf 0 gesetzt. Danach bleibt 0100 in binär, so dass 4 zurückgegeben wird.
void setup() {
  Serial.begin(9600);
  while (!Serial) {
    ; // Wartet, bis die serielle Schnittstelle hergestellt ist. Wird nur für den nativen USB-Anschluss benötigt.
  }
  int x = 6;
  int n = 1;
  Serial.print(bitClear(x, n)); // Drucke die Ausgabe von bitClear(x,n) auf den seriellen Monitor.
}
void loop() {
}
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Bits and bytes
            > Bit
          
bit()
          [Bits and Bytes]
          
Beschreibung
bit()
          [Bits and Bytes]
          
Beschreibung
Berechnet die Wertigkeit des angegebenen Bits (Bit 0 ist 1, Bit 1 ist 2, Bit 2 ist 4, etc.).
Syntax
bit(n)
Parameter
n: Das Bit, von dem der Wert berechnet werden soll.
Rückgabewert
Der Wert des Bits.
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Communication
            > Wire
          
Wire
          [Communication]
          
Description
The Wire library implementation uses a 32 byte buffer, therefore any communication should be within this limit. Exceeding bytes in a single transmission will just be dropped.
To use this library:
#include <Wire.h>
Functions
begin()
end()
requestFrom()
beginTransmission()
write()
available()
read()
setClock()
onReceive()
onRequest()
setWireTimeout()
clearWireTimeoutFlag()
getWireTimeoutFlag()
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Communication
            > Spi
          
SPI
          [Communication]
          
Description
> Spi
          
SPI
          [Communication]
          
Description
This library allows you to communicate with SPI devices, with the Arduino as the controller device. This library is bundled with every Arduino platform (avr, megaavr, mbed, samd, sam, arc32), so you do not need to install the library separately.
To use this library
#include <SPI.h>
To read more about Arduino and SPI, you can visit the Arduino & Serial Peripheral Interface (SPI) guide.
Functions
SPISettings
begin()
beginTransaction()
end()
setBitOrder()
setClockDivider()
setDataMode()
transfer()
usingInterrupt()
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Communication
            > Stream
          
Stream
          [Communication]
          
Beschreibung
> Stream
          
Stream
          [Communication]
          
Beschreibung
Stream ist die Basisklasse für zeichen- und binärbasierte Streams. Es wird nicht direkt aufgerufen, sondern immer dann aufgerufen, wenn du eine Funktion verwendest, die darauf angewiesen ist.
Stream definiert die Lesefunktionen in Arduino. Wenn du eine Kernfunktion verwendest, die eine read() oder eine ähnliche Methode verwendet, kannst du davon ausgehen, dass sie die Stream-Klasse aufruft.
Für Funktionen wie print() erbt Stream von der Print-Klasse.
Zu den Bibliotheken, die Stream verwenden, gehören:
Serial
Wire
Ethernet
SD
Funktionen
available()
read()
flush()
find()
findUntil()
peek()
readBytes()
readBytesUntil()
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Communication
            > Serial
          
Serial
          [Communication]
          
Beschreibung
> Serial
          
Serial
          [Communication]
          
Beschreibung
Wird für die Kommunikation zwischen dem Arduino-Board und einem Computer oder anderen Geräten verwendet. Alle Arduino-Boards haben mindestens eine serielle Schnittstelle (auch als UART oder USART bezeichnet) und andere haben mehrere.
Board
USB CDC Name
Serielle Pins
Serial1 Pins
Serial2 Pins
Serial3 Pins
Uno, Nano, Mini
0(RX), 1(TX)
Mega
0(RX), 1(TX)
19(RX), 18(TX)
17(RX), 16(TX)
15(RX), 14(TX)
Leonardo, Micro, Yún
Serielle Schnittstelle
0(RX), 1(TX)
Uno WiFi Rev.2
An USB angeschlossen
Uno WiFi Rev.2
An USB angeschlossen
0(RX), 1(TX)
Verbunden mit NINA
MKR boards
Serielle Schnittstelle
13(RX), 14(TX)
Zero
SerialUSB (Nur nativer USB-Anschluss)
Verbunden mit dem Programmierport
0(RX), 1(TX)
Due
SerialUSB (Nur nativer USB-Anschluss)
0(RX), 1(TX)
19(RX), 18(TX)
17(RX), 16(TX)
15(RX), 14(TX)
101
Serielle Schnittstelle
0(RX), 1(TX)
101
Serielle Schnittstelle
0(RX), 1(TX)
Auf dem Uno, Nano, Mini und Mega werden die Pins 0 und 1 für die Kommunikation mit dem Computer verwendet. Wenn du irgendetwas an diese Pins anschließt, kann dies die Kommunikation beeinträchtigen.
Du kannst den eingebauten seriellen Monitor der Arduino-Umgebung verwenden, um mit einem Arduino-Board zu kommunizieren. Klicke in der Symbolleiste auf die Schaltfläche für den seriellen Monitor und wähle dieselbe Baudrate aus, die für den Aufruf von begin() verwendet wird.
Die serielle Kommunikation an den Pins TX / RX verwendet TTL-Logikpegel (5 V oder 3,3 V je nach Board). Verbinde diese Pins nicht direkt mit einer seriellen RS232-Schnittstelle. Sie arbeiten mit +/- 12 V und können dein Arduino-Board beschädigen.
Um diese zusätzlichen seriellen Anschlüsse für die Kommunikation mit deinem PC zu verwenden, benötigst du einen zusätzlichen USB-zu-Seriell-Adapter, da diese nicht an den USB-zu-Seriell-Adapter des Mega angeschlossen sind.
Um sie zur Kommunikation mit einem externen seriellen TTL-Gerät zu verwenden, verbinde den TX-Pin mit dem RX-Pin deines Geräts, den RX mit dem TX-Pin deines Geräts und die Masse deines Mega mit der Masse deines Geräts.
Funktionen
if(Serial)
available()
availableForWrite()
begin()
end()
find()
findUntil()
flush()
parseFloat()
parseInt()
peek()
print()
println()
read()
readBytes()
readBytesUntil()
readString()
readStringUntil()
setTimeout()
write()
serialEvent()
Siehe auch
BEISPIEL ReadASCIIString
BEISPIEL ASCII-Tabelle
BEISPIEL Dimmer
BEISPIEL Graph
BEISPIEL Physikalischer Pixel
BEISPIEL Serielle Antwort auf einen Call
BEISPIEL Serielle Antwort auf einen Call ASCII
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Usb
            > Keyboard
          
Keyboard
          [USB]
          
Beschreibung
> Keyboard
          
Keyboard
          [USB]
          
Beschreibung
Die keyboard-Funktionen ermöglichen es, 32u4- oder SAMD-micro-basiertend boards, Tastenanschläge an einen verbundenen Computer über dessen nativen USB-Port zu senden.
Anmerkung: Nicht jedes mögliche ASCII-Zeichen kann eingegeben werden. Besonders die Nichtdruckbaren Zeichen können nicht über die Bilbiothek eingegeben werden.
Die Bibliothek unterstützt die Verwendung von Hotkey. Hotkeys verändern das Verhalten anderer Tasten, wenn diese gleichzeitig gedrückt werden.
Siehe hier für weitere Informationen über die unterstützten Tasten und deren Benutzung.
Anmerkungen und Warnungen
Anmerkungen und Warnungen
Diese Core-Bibliotheken erlauben es 32u4- oder SAMD-basierten Boards (Leonardo, Esplora, Zero, Due und MKR Family), als native Maus und/oder Tastatur auf dem verbundenen Computer zu erscheinen.
*Achtung: Wenn die Maus oder Tastatur permanent läuft, wird es schwer, das Board noch zu programmieren. Funktionen wie Mouse.move() und Keyboard.print() bewegen den Cursor oder senden Tastenanschläge
an den verbundenen Computer. Diese Funktionen sollten nur aufgerufen werden, wenn das Programm diese behandeln kann. Es wird deshalb empfohlen, ein Kontrollsystem zu nutzen, z.B. einen physikalischen Schalter
oder nur auf bestimmte Eingaben zu antworten. Die Beispiele liefern weitere Informationen dazu.
Wenn die Mouse- oder Keyboard-Bibliothek benutzt wird, sollte die Ausgabe zunächst mit Serial.print() überprüft werden. Auf diesem Weg kann man sich sicher sein, dass die richtigen Werte an den verbundenen
Computer gesendet werden.
Funktionen
Keyboard.begin()
Keyboard.end()
Keyboard.press()
Keyboard.print()
Keyboard.println()
Keyboard.release()
Keyboard.releaseAll()
Keyboard.write()
Siehe auch
BEISPIEL KeyboardAndMouseControl: Zeigt, wie die Mouse- und Keyboard-Bibliothek verwendet werden.
BEISPIEL KeyboardMessage: Sendet einen Text, wenn ein Button gedrückt wird.
BEISPIEL KeyboardLogout: Loggt den aktuellen Benutzer aus.
BEISPIEL KeyboardSerial: Liest ein Byte von einem seriellen Port und liefert einen Tastenanschlag zurück.
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Usb
            > Mouse
          
Mouse
          [USB]
          
Beschreibung
> Mouse
          
Mouse
          [USB]
          
Beschreibung
Die mouse-Funktionen ermöglichen es, auf 32u4- oder SAMD-micro-basiertend Boards den Mauszeiger auf einem verbundenem Computer über dessen nativen USB-Port zu steuern.
Wenn man die Mauszeigerposition ändert, so ist die neue Position immer relativ zu der vorhergehenden Position.
Anmerkungen und Warnungen
Diese Core-Bibliotheken erlauben es 32u4- oder SAMD-basierten Boards (Leonardo, Esplora, Zero, Due und MKR Family), als native Maus und/oder Tastatur auf dem verbundenen Computer zu erscheinen.
*Achtung: Wenn die Maus oder Tastatur permanent läuft, wird es schwer, das Board noch zu programmieren. Funktionen wie Mouse.move() und Keyboard.print() bewegen den Cursor oder senden Tastenanschläge
an den verbundenen Computer. Diese Funktionen sollten nur aufgerufen werden, wenn das Programm diese behandeln kann. Es wird deshalb empfohlen, ein Kontrollsystem zu nutzen, z.B. einen physikalischen Schalter
oder nur auf bestimmte Eingaben zu antworten.
Wenn die Mouse- oder Keyboard-Bibliothek benutzt wird, sollte die Ausgabe zunächst mit Serial.print() überprüft werden. Auf diesem Weg kann man sich sicher sein, dass die richtigen Werte an den verbundenen
Computer gesendet werden. Die Beispiele liefern weitere Informationen dazu.
Funktionen
Mouse.begin()
Mouse.click()
Mouse.end()
Funktionen
Mouse.begin()
Mouse.click()
Mouse.end()
Mouse.move()
Mouse.press()
Mouse.release()
Mouse.isPressed()
Siehe auch
BEISPIEL KeyboardAndMouseControl: Zeigt, wie die Mouse- und Keyboard-Bibliothek verwendet werden.
BEISPIEL ButtonMouseControl: Steuert den Mauszeiger mit 5 Buttons.
BEISPIEL JoystickMouseControl: Steuert den Mauszeiger eines Computers mit einem Joystick, wenn ein Button gedrückt wird.
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  External interrupts
            > Detachinterrupt
          
detachInterrupt()
          [External Interrupts]
          
Beschreibung
Deaktiviert den übergebenen Interrupt.
Syntax
detachInterrupt()
Beschreibung
Deaktiviert den übergebenen Interrupt.
Syntax
detachInterrupt()
detachInterrupt(pin) (Nur Arduino Due)
detachInterrupt(digitalPinToInterrupt(pin)) (Empfohlen)
detachInterrupt(interrupt) (Nicht empfohlen)
detachInterrupt(pin) (Nicht empfohlen; Funktioniert nur auf Arduino SAMD-, Uno WiFi Rev2-, Due- und 101-Boards.)
Parameter
interrupt: Die Interruptnummer des Interrupts, der deaktiviert werden soll (Siehe attachInterrupt() für weitere Informationen).
pin: Die Arduino-Pinnummer des Interrupts, der deaktiviert werden soll.
Rückgabewert
Nichts.
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  External interrupts
            > Attachinterrupt
          
attachInterrupt()
          [External Interrupts]
          
Beschreibung
Digitalpins, die Interrupts unterstützen
Beschreibung
Digitalpins, die Interrupts unterstützen
Der erste Parameter von attachInterrupt() ist die Interruptnummer. Im Normalfall solltest du digitalPinToInterrupt(pin) benutzen, um
die tatsächlichen Digitalpins auf die Interruptnummer umzuwandeln. Wenn du z.B. auf Pin 3 verbinden willst, benutze digitalPinToInterrupt(3)
als ersten Parameter für attachInterrupt().
Board
Benutzbare Digitalpins für Interrupts
Uno, Nano, Mini, andere 328-basierte
2, 3
Uno WiFi Rev.2
Alle Digital-Pins
Uno WiFi Rev.2, Nano Every
Alle Digital-Pins
Mega, Mega2560, MegaADK
2, 3, 18, 19, 20, 21
Micro, Leonardo, andere 32u4-basierte
Micro, Leonardo, andere 32u4-basierte
0, 1, 2, 3, 7
Zero
Alle Digital-Pins außer Pin 4
MKR Family-Boards
0, 1, 4, 5, 6, 7, 8, 9, A1, A2
Nano 33 IoT
2, 3, 9, 10, 11, 13, 15, A5, A7
Nano 33 BLE, Nano 33 BLE Sense
Alle Pins
Due
Alle Digital-Pins
101
Alle Digital-Pins (Nur Pins 2, 5, 7, 8, 10, 11, 12, 13 funktionieren mit CHANGE)
Anmerkungen und Warnungen
Anmerkungen und Warnungen
Innerhalb der vom Interrupt ausgelösten Funktion wird delay() nicht funktionieren und millis() nicht hochzählen. Empfangene Serielle Daten
in der Funktion können verloren gehen. Variablen, die innerhalb der Funktion verarbeitet werden, sollten als volatile gekennzeichnet werden.
Siehe dazu auch den Abschnitt zu Interrupt Service Routinen weiter unten.
Benutzung von Interrupts
Interrupts sind nützlich, um bestimmte Tasks in Microkontrollerprogrammen automatisch ablaufen zu lassen und können helfen, Timingprobleme zu lösen.
Gute Beispiele dafür sind das Lesen eines Drehgebers sowie das Einlesen von Benutzereinaben.
Wenn du z.B. sicherstellen willst, dass das Programm alle Stromimpulse eines Drehgebers messen kann, wäre es sehr schwer ein Programm zu schreiben, das
noch andere Aufgaben zusätzlich erfüllt, weil das Programm sonst immer den Sensor pollen (d.h. permanent abfragen) müsste. Andere Sensoren haben eine
ähnliche Interfacedynamik: Das Auslesen eines Geräuschsensors oder eines Infrarotsensors funktioniert ähnlich. Interrupts können dabei helfen, dass
der Microkontroller andere weitere Aufgaben zusätzlich ausführen kann, trotzdem aber keine Eingaben verliert.
Über Interrupt Service Routinen
Interrupt Service Routinen sind spezielle Funktionen, die einige eindeutige Limitierungen haben als "normale" Funktionen: Interrupt Service Routinen können
keine Parameter besitzen und sollten nichts zurückgeben. Interrupt Service Routinen sollten generell so kurz und schnell wie möglich sein.
Wenn dein Sketch mehrere Interrupt Service Routinen benutzt, kann nur eine auf einmal laufen. Andere Interrupts werden aufgerufen, nachdem die erste Interrupt
Service Routine beendet ist. Die Reihenfolge hängt dabei von der Priorität der Routinen ab.
millis() verlässt sich zum Zählen auf Interrupts, wird also in einer Interrupt Service Routine niemels hochzählen. delay() benutzt ebenfalls Interrupts
und wird deshalb gar nicht in einer Interrupt Service Routine funktionieren. micros() wird anfangs gut funktionieren, aber nach circa 1 bis 2 ms sich
unvorhersehbar verhalten. delayMicroseconds() benutzt keine Zähler und wird deshalb normal funktionieren.
Normalerweise werden globale Variablen benutzt, um Daten zwischen Interrupt Service Routinen und dem Hauptprogramm zu tauschen. Dass die Variablen dabei
korrekt geändert werden, sollten sie als volatile deklariert werden.
Für weitere Informationen zu Interrupts, siehe auch Nick Gammon’s Anmerkungen.
Syntax
attachInterrupt(digitalPinToInterrupt(pin), ISR, mode)	(Empfohlen)
attachInterrupt(interrupt, ISR, mode)	(Nicht empfohlen)
attachInterrupt(pin, ISR, mode)	(Nicht empfohlen; Funktioniert nur auf Arduino SAMD-, Uno WiFi Rev2-, Due- und 101-Boards.)
Parameter
interrupt: Die Interruptnummer. Erlaubte Datentypen: int.+
pin: Die Arduino-Pinnummer.
ISR: Die Interrupt Service Routine, die aufgerufen werden soll. Die Funktion darf keine Parameter haben und nichts zurückgeben.
mode: Definiert, wann der Interrupt getriggert werden soll. 4 Konstanten sind dafür definiert:
LOW Interrupt wird getriggert, wenn der Pin LOW ist,
CHANGE Interrupt wird getriggert, wenn der Pin den Wert ändert
RISING Interrupt wird getriggert, wenn der Pin von LOW auf HIGH wechselt,
FALLING Interrupt wird getriggert, wenn der Pin von HIGH auf LOW wechselt.
Die Due-, Zero- und MKR1000-Boards erlauben zusätzlich:
HIGH Interrupt wird getriggert, wenn der Pin HIGH ist.
Rückgabewert
Nichts.
Beispielcode
Lässt eine LED blinken.
// Setze den Pin für die LED auf 13
const byte ledPin = 13;
// Setze den Interruptpin auf 2
const byte interruptPin = 2;
// Definiere eine globale volatile Variable für den Status der LED
volatile byte state = LOW;
volatile byte state = LOW;
void setup() {
  // Lege den Pin für die LED als Outputpin fest
  pinMode(ledPin, OUTPUT);
  // Lege den Interruptpin als Inputpin mit Pullupwiderstand fest
  pinMode(interruptPin, INPUT_PULLUP);
  // Lege die ISR 'blink' auf den Interruptpin mit Modus 'CHANGE':
  // "Bei wechselnder Flanke auf dem Interruptpin" --> "Führe die ISR aus"
  attachInterrupt(digitalPinToInterrupt(interruptPin), blink, CHANGE);
}
void loop() {
  // Schreibe den Status der LED auf den LED-Pin zurück:
  // "Schalte die LED an oder aus"
  digitalWrite(ledPin, state);
}
void blink() {
digitalWrite(ledPin, state);
}
void blink() {
  // Invertiere den Status: "Lass die LED blinken von HIGH auf LOW/ an auf aus"
  state = !state;
}
Interruptnummern
Im Normalfall solltest du digitalPinToInterrupt(pin) benutzen anstatt den Interruptnummer direkt zu setzen. Die Interruptpins und deren Mapping
variiert von Board zu Board. Wenn der Sketch also auf einem anderen Board ausgeführt werden soll, kann es schnell zu Problemen kommen.
Alte Sketches haben oft direkte Interruptnummern angegeben. Oft wurden Pin 0 (Digitalpin 2) oder Pin 1 (Digitalpin 3) verwendet. Die Tabelle unten
zeigt, welche Interruptpins auf welchem Board verfügbar sind.
zeigt, welche Interruptpins auf welchem Board verfügbar sind.
In der Tabelle unten sind die Interruptpins definiert als die Nummer, die an attachInterrupt() übergeben wird. Aus historischen Gründen stimmt
diese Nummerierung nicht immer mit den Inputnummern auf dem ATmega-Chip überein (z.B. int.0 ist INT4 auf dem ATmega2560-Chip).
Board
int.0
int.1
int.2
int.3
int.4
int.5
Uno, Ethernet
2
3
Mega2560
2
3
21
20
19
18
32u4 based (e.g Leonardo, Micro)
3
2
0
1
7
Für Due, Zero, MKR1000 und 101 Boards gilt: Interruptnummer = Pinnummer.
Siehe auch
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Analog io
            > Analogreference
          
analogReference()
          [Analog I/O]
          
Beschreibung
analogReference()
          [Analog I/O]
          
Beschreibung
Konfiguriert die Referenzspannung, die für analoge Eingabe-Pins genutzt wird (z.B. Der maximal Wert der Eingangsspannung). Dabei sind die folgenden Optionen verfügbar:
Arduino AVR Boards (Uno, Mega, Leonardo, etc.)
DEFAULT: Default analoge Einstellung (5 V für 5 V-Arduino; 3,3 V für 3,3 V-Arduinos)
INTERNAL: Eingebaute Referenz; Festgelegt auf 1,1 V auf dem ATmega168 oder ATmega328P und 2,56 V auf dem ATmega32U4 und ATmega8 (Nicht verfügbar auf dem Arduino Mega)
INTERNAL1V1: Eingebaute Referenz; 1,1 V (Nur Arduino Mega)
INTERNAL2V56: Eingebaute Referenz; 2,56 V (Nur Arduino Mega)
EXTERNAL: Die Spannung, die auf dem AREF-Pin (nur 0 bis 5 V) angelegt ist, wird als Referenz verwendet.
Arduino SAMD Boards (Zero, etc.)
AR_DEFAULT: Default analoge Einstellung von 3,3 V
AR_INTERNAL: Eingebaute Referenz von 2,23 V
AR_INTERNAL1V0: Eingebaute Referenz von 1,0 V
AR_INTERNAL1V65: Eingebaute Referenz von 1,65 V
AR_INTERNAL2V23: Eingebaute Referenz von 2,23 V
AR_EXTERNAL: Die Spannung, die auf dem AREF-Pin angelegt ist, wird als Referenz verwendet.
Arduino megaAVR Boards (Uno WiFi Rev2)
Arduino megaAVR Boards (Uno WiFi Rev2)
DEFAULT: Eingebaute Referenz von 0,55 V
INTERNAL: Eingebaute Referenz von 0,55 V
VDD: Vdd des ATmega4809. 5V auf dem Uno WiFi Rev2
INTERNAL0V55: Eingebaute Referenz von 0,55 V
INTERNAL1V1: Eingebaute Referenz von 1,1 V
INTERNAL1V5: Eingebaute Referenz von 1,5 V
INTERNAL2V5: Eingebaute Referenz von 2,5 V
INTERNAL4V3: Eingebaute Referenz von 4,3 V
EXTERNAL: Die Spannung, die auf dem AREF-Pin (nur 0 bis 5 V) angelegt ist, wird als Referenz verwendet.
Arduino SAM Boards (Due)
Arduino SAM Boards (Due)
AR_DEFAULT: Default analoge Einstellung von 3,3 V. Dies ist die einzige unterstützte Option für den Due.
Arduino mbed-fähige Boards (Nur Nano 33 BLE): Verfügbar, wenn die Arduino mbed-fähige-Plattform verwendet wird oder, wenn die Arduino nRF528x Boards (Mbed OS)-Plattform (in Version 1.1.6 oder neuer) verwendet wird.
AR_VDD: Die Standardreferenz von 3,3 V.
AR_INTERNAL: Eingebaute Referenz von 0,6 V
AR_INTERNAL1V2: 1.2 V Referenz (interne 0.6 V Referenz mit Faktor 2)
AR_INTERNAL2V4: 2.4 V Referenz (interne 0.6 V Referenz mit Faktor 4)
Syntax
Syntax
analogReference(type)
Parameter
type: Welche Art von Einstellung benutzt werden soll (DEFAULT, INTERNAL, INTERNAL1V1, INTERNAL2V56, oder EXTERNAL).
Rückgabewert
Nichts.
Anmerkungen und Warnungen
Wenn die Referenzspannung geändert wird, können die ersten Messwerte von analogRead() fehlerhaft sein.
Benutze niemals Spannungen geringer als 0 V oder höher als 5 V für externe Referenzspannungen auf dem AREF-Pin! Wenn du eine externe Referenzspannung auf dem AREF-Pin nutzen willst, musst du zunächst die analoge Referenzspannung auf EXTERNAL setzen, bevor du analogRead() nutzen kannst.
Alternativ kannst du die externe Referenzspannung auf dem AREF-Pin über einen 5k-Widerstand verbinden. Das hat den Vorteil, dass du zwischen externer und interner Referenzspannung wechseln kannst. Beachte auch, dass sich dadurch die Nutzungsspannung ändert, weil der AREF-Pin einen internen 32K-Widerstand besitzt. Diese 2 Widerstände funktionieren als Spannungsteiler. Wenn also 2,5 V durch den Widerstand fließen, werden auf dem AREF-Pin 2.5 * 32 / (32 + 5) V = ~2.2 V anliegen.
Siehe auch
BEISPIEL Beschreibung der analogen Eingangspins
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Analog io
            > Analogwrite
          
analogWrite()
          [Analog I/O]
          
Beschreibung
analogWrite()
          [Analog I/O]
          
Beschreibung
Schreibt einen Analogwert (PWM-Welle) auf einen Pin. Kann z.B. benutzt werden, um eine LED mit verschiedener Helligkeit leuchten zu lassen oder einen Motor mit
unterschiedlicher Geschwindigkeit laufen zu lassen. Nach Aufruf von analogWrite() generiert die Funktion eine stetige Rechteckwelle mit angegebenem Zyklus,
bis der nächste Aufruf von analogWrite() (oder digitalRead() oder digitalWrite()) auf dem gleichen Pin erfolgt.
Board
PWM-Pins
PWM-Frequenz
Uno, Nano, Mini
3, 5, 6, 9, 10, 11
490 Hz (Pins 5 und 6: 980 Hz)
Mega
2 - 13, 44 - 46
Mega
2 - 13, 44 - 46
490 Hz (Pins 4 und 13: 980 Hz)
Leonardo, Micro, Yún
3, 5, 6, 9, 10, 11, 13
490 Hz (Pins 3 und 11: 980 Hz)
Uno WiFi Rev.2, Nano Every
3, 5, 6, 9, 10
976 Hz
MKR boards *
0 - 8, 10, A3 (18), A4 (19)
732 Hz
MKR1000 WiFi *
0 - 8, 10, 11, A3 (18), A4 (19)
732 Hz
Zero *
3 - 13, A0 (14), A1 (15)
732 Hz
Nano 33 IoT *
732 Hz
Nano 33 IoT *
2, 3, 5, 6, 9 - 12, A2, A3, A5
732 Hz
Nano 33 BLE/BLE Sense
1 - 13, A0 - A7
500 Hz
Due **
2-13
1000 Hz
101
3, 5, 6, 9
Pins 3 und 9: 490 Hz, Pins 5 und 6: 980 Hz
* Zusätzlich zu den oben erwähnten PWM-Funktionen für die Pins verfügen die MKR- und Zero-Boards über einen echten Analogausgang, wenn analogWrite() auf dem DAC0 (A0)-Pin benutzt wird.
** Zusätzlich zu den oben erwähnten PWM-Funktionen für die Pins verfügt das Due-Board über einen echten Analogausgang, wenn analogWrite() auf den DAC0 und DAC1-Pins benutzt wird.
Du musst einen Pin nicht explizit als Ausgabepin über pinMode() festlegen,
bevor du analogWrite() nutzt. Die analogWrite()-Funktion hat nichts mit analogen Pins oder der analogRead-Funktion zu tun.
Syntax
analogWrite(pin, value)
Parameter
pin: Der Arduino-Pin auf den geschrieben werden soll. Erlaubte Datentypen: int.
value: Die Zykluszeit. Werte zwischen 0 (immer aus) und 255 (immer an). Erlaubte Datentypen: int.
Rückgabewert
Nichts.
Beispielcode
Rückgabewert
Nichts.
Beispielcode
Setzt die Ausgabe auf dem LED-Pin proportional zu dem Wert, der von einem Potentiometer gelesen wird.
int ledPin = 9; // LED auf Digitalpin 9 verbunden
int analogPin = 3; // Potentiometer auf Pin 3 verbunden
int val = 0; // Variable, um den gelesenen Wert zu speichern
void setup() {
  pinMode(ledPin, OUTPUT); // Setzt den Pin als output.
}
void loop() {
  val = analogRead(analogPin); // Liest den Wert vom Pin ein
  analogWrite(ledPin, val / 4); // analogRead: Werte von 0 bis 1023, analogWrite: Werte von 0 bis 255
}
Anmerkungen und Warnungen
}
Anmerkungen und Warnungen
Die PWM-Ausgaben auf Pins 5 und 6 werden höhere Zyklen als erwartet haben. Dies passiert, weil die Funktionen millis() und delay() den gleichen internen Timer nutzen,
um diese PWM-Ausgaben zu generieren. In kleinen Zyklen (z.B. 0 bis 10) ist der Effekt am stärksten und kann dazu führen, dass der Wert 0 die Spannung auf Pin 5 und 6 nicht komplett wegnimmt,
d.h. dass z.B. bei Wert 0 die LED trotzdem leuchtet.
Siehe auch
SPRACHE analogWriteResolution()
DEFINITION PWM
BEISPIEL Blinken
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Analog io
            > Analogread
          
analogRead()
          [Analog I/O]
          
Beschreibung
analogRead()
          [Analog I/O]
          
Beschreibung
Liest den Wert vom angegebenen analogen Pin ein. Die Arduino-Boards enthalten einen 10-Bit-Analog-zu-Digital-Konverter.
D.h. das Board mappt Eingangsspannungen zwischen 0 und 5 V auf Integer-Werte zwischen 0 und 1023.
Die erreichte Auflösung ist damit z.B. auf einem Arduino UNO 5 V / 1024 Teile oder 0,0049 V (4,9 mV) per Teil.
Siehe dazu auch die Tabelle unterhalb für die benutzbaren Pins, Betriebsspannung und die maximale Auflösung für einige Arduino-Boards.
Die Eingangsbreite can mit analogReference() geändert werden, die Auflösung mit analogReadResolution() (Nur für Arduino Zero, Due und MKR).
Auf den ATmega-basierten Boards (UNO, Nano, Mini, Mega), benötigt das Board circa 100 Mikrosekunden (0,0001 s), um einen analogen Inputpin zu lesen. Damit ist die maximale Lesegeschwindigkeit 10000 Lesevorgänge pro Sekunde.
Board
Betriebsspannung
Nutzbare Pins
Maximale Auflösung
Uno
5 Volt
A0 to A5
10 Bit
Mini, Nano
5 Volt
A0 to A7
10 Bit
Mega, Mega2560, MegaADK
5 Volt
A0 to A14
10 Bit
Micro
5 Volt
A0 to A11*
10 Bit
10 Bit
Micro
5 Volt
A0 to A11*
10 Bit
Leonardo
5 Volt
A0 to A11*
10 Bit
Zero
3.3 Volt
A0 to A5
12 Bit**
Due
3.3 Volt
A0 to A11
12 Bit**
MKR-Familie
3.3 Volt
A0 to A6
12 Bit**
*A0 bis A5 sind auf dem Board benannt, A6 bis A11 sind auf den Pins 4, 6, 8, 9, 10, und 12 verfügbar
**Die standardmäßige Auflösung von analogRead() ist bei diesen Boards 10 Bit aus Kompabilitätsgründen. Mit analogReadResolution() kann die Auflösung auf 12 Bit geändert werden.
Syntax
analogRead(pin)
Parameter
Syntax
analogRead(pin)
Parameter
pin: Der Pinname, von der gelesen werden soll (A0 bis A5 auf den meisten Boards, A0 bis A6 auf dem MKR, A0 bis A7 auf dem Mini und Nano, A0 bis A15 auf dem Mega)
Rückgabewert
Den analog gelesenen Wert auf dem Pin (int). Allerdings ist der Wert limitiert durch die Auflösung des Digital-Konverters (0-1023 für 10 Bit und 0-4095 für 12 Bit). Datentyp: int.
Beispielcode
Der Code liest die Spannung auf einem Analogpin und zeigt diese an.
int analogPin = A3; // Pin, der gelesen werden soll: Pin A3
int val = 0; // Variable, die den gelesenen Wert speichert
void setup() {
void setup() {
  Serial.begin(9600); // Setup der seriellen Verbindung
}
void loop() {
  val = analogRead(analogPin); // Pin einlesen
  Serial.println(val); // Wert ausgeben
}
Anmerkungen und Warnungen
Wenn der analoge Pin nicht verbunden ist, wird der zurückgegebene Wert schwanken basierend auf mehreren Faktoren (z.B. Die Werte der anderen analogen Pins, Wie nahe die Hand am Board ist, etc.).
Siehe auch
SPRACHE analogReadResolution()
BEISPIEL Beschreibung der analogen Eingangspins
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Advanced io
            > Tone
          
tone()
          [Advanced I/O]
          
Beschreibung
tone()
          [Advanced I/O]
          
Beschreibung
Generiert einen Ton mit der angegebenen Frequenz (und 50% duty cycle) auf einem Pin. Eine Dauer des Tons kann festgelegt werden; Sonst wird der Ton abgespielt, bis ein noTone() aufgerufen wird.
Der Pin kann an einen Piezo oder an einen Lautsprecher angeschlossen werden, um Töne abzuspielen.
Nur ein Ton kann gleichzeitig abgespielt werden. Wenn bereits ein Ton auf einem anderen Pin abgespielt wird, hat tone() auf einem 2. Pin keinen Effekt. Wenn der Ton auf dem gleichen Pin gespielt wird, setzt
der Aufruf der Funktion die Frequenz des Tons.
der Aufruf der Funktion die Frequenz des Tons.
Die Nutzung der tone() Funktion interferiert mit PWM outputs auf Pin 3 und 11 (Auf Boards außer dem Arduino Mega).
Es ist nicht möglich, Töne mit einer Frequenz niedriger als 31Hz zu erstellen. Für technische Details, siehe Brett Hagman’s post.
Syntax
tone(pin, frequency)
tone(pin, frequency, duration)
Parameter
pin: Der Arduino-Pin, auf dem der Ton generiert werden soll.
frequency: Die Frequenz des Tons in Hertz. Erlaubte Datentypen: unsigned int.
duration: Die Dauer des Tons in Millisekunden (optional).  Erlaubte Datentypen: unsigned long.
Rückgabewert
Nichts.
Anmerkungen und Warnungen
Rückgabewert
Nichts.
Anmerkungen und Warnungen
Wenn du verschiedene Töne auf mehreren Pins spielen willst, musst du zunächst mit noTone() auf einem Pin den Ton stoppen und anschließend mit tone() auf dem nächsten Pin einen neuen Ton generieren.
Siehe auch
SPRACHE analogWrite()
BEISPIEL Töne
BEISPIEL Tonleiter
BEISPIEL Einfaches Keyboard
BEISPIEL Mehrere Töne
BEISPIEL PWM
Sprache
Funktionen
Variablen
Struktur
Bibliotheken
IoT Cloud API
Glossar
        Der Arduino-Referenztext ist lizenziert unter der Creative Commons Attribution-Share Alike 3.0 Lizenz.
    
    Findest du etwas, das verbessert werden kann? Über GitHub kannst du Korrekturen und neue Dokumentation vorschlagen.
    Zweifel, wie man Github benutzt? Erfahre in diesem Tutorial alles, was du wissen musst.
    
Last Revision: Searching...
Last Build: 2023/06/30 
Bearbeite diese Seite
Reference
            >  Language
            >  Functions
            >  Advanced io
            > Pulsein
          
pulseIn()
          [Advanced I/O]
          
Beschreibung
pulseIn()
          [Advanced I/O]
          
Beschreibung
Liest einen Wert von einem vorgegebenen Digitalpin ein, entweder HIGH oder LOW. Wenn value z.B. HIGH ist,
wartet pulseIn() darauf,dass der Pin auf den Wert HIGH wechselt, startet einen Timer und wartet anschließend darauf,
dass der Pin wieder auf LOW wechselt. Daraufhin stoppt pulseIn() den Timer. Gibt die Länge des Impulses in Mikrosekunden zurück.
Stoppt und gibt 0 zurück, wenn ein bestimmter Timeout erreicht wird.
Das Timing der Funktion wurde empirisch getestet und wird vermutlich bei einem längeren Impuls falsch messen. Die Funktion funktioniert mit Impulsen der Länge von 10 Mikrosekunden bis 3 Minuten.
Syntax
pulseIn(pin, value)