» Elektronik » Arduino »Arduino für Anfänger

Arduino für Anfänger


Arduino ist eine Mikrocontroller-Karte, die Sie zur Steuerung externer Geräte programmieren können. Es interagiert mit der Außenwelt über Sensoren, Motoren, LEDs, Lautsprecher ... und sogar das Internet und ist somit eine flexible Plattform für verschiedene Projekte. Es gibt einige Mikrocontroller, aber Arduino ist beliebt, da verschiedene Projekte im Internet sehr aktiv angelegt und diskutiert werden. Wenn Sie auf Google oder Youtube suchen, finden Sie Millionen von Ideen und Informationen, um Arduino selbst zu erkunden.
Auch wenn Sie keine Erfahrung mit der Programmierung von Mikrocontrollern haben - mit Arduino lernen Sie schnell etwas darüber Elektronik unter Verwendung von Experimenten.

Was brauchen Sie, um loszulegen?
Arduino Uno- 1pc
USB-Kabel-1St
Jumper 1St
1 Stück Entwicklungsboard
Rote LED 4 Stk
220 Ohm Widerstand 4St
Widerstand 10 Raum 1 Stck
Knopf ohne Fixierung
Potentiometer
RGB-LED mit gemeinsamer Kathode

All dies kann in einem örtlichen Radiogeschäft gekauft oder im Internet bestellt werden.

Ein Online-Simulator wurde verwendet, um elektrische Schaltkreise zu demonstrieren und zu simulieren.

Dieser Simulator funktioniert am besten im Chrome-Browser.
Schauen wir uns das Arduino genauer an.

Arduino ist kein großer Computer, an den externe Schaltkreise angeschlossen werden können. Arduino Uno verwendet Atmega 328P
Dies ist der größte Chip auf dem Board. Dieser Chip führt Programme aus, die in seinem Speicher gespeichert sind. Sie können das Programm über USB mit der Arduino IDE herunterladen. Der USB-Anschluss versorgt auch das Arduino mit Strom.

Es gibt einen separaten Stromanschluss. Auf der Platine befinden sich zwei Ausgänge mit der Bezeichnung 5 V und 3,3 V, die zur Stromversorgung verschiedener Geräte benötigt werden. Sie finden auch Pins, die als GND gekennzeichnet sind. Dies sind Erdungskabel (Masse ist 0 V). Die Arduino-Plattform verfügt außerdem über 14 digitale Ausgänge (Pins), die mit Zahlen von 0 bis 13 gekennzeichnet sind und mit externen Knoten verbunden sind und zwei Zustände haben, hoch oder niedrig (ein oder aus). Diese Kontakte können als Ausgänge oder als Eingänge arbeiten, d.h. Sie können entweder Daten senden und externe Geräte steuern oder Daten von Geräten empfangen. Die folgenden Schlussfolgerungen an der Tafel sind mit A0-A5 bezeichnet. Dies sind analoge Eingänge, die Daten von verschiedenen Sensoren empfangen können. Dies ist besonders praktisch, wenn Sie einen Bereich wie die Temperatur messen müssen. Die Analogeingänge verfügen über zusätzliche Funktionen, die separat aktiviert werden können.


Wie man ein Steckbrett benutzt.

Ein Steckbrett wird benötigt, um die Teile vorübergehend anzuschließen und die Funktionsweise des Geräts zu überprüfen, bevor Sie alles zusammenlöten.
Alle folgenden Beispiele sind auf einem Steckbrett zusammengefasst, sodass Sie schnell Änderungen an der Schaltung vornehmen und Teile wiederverwenden können, ohne sich um das Löten kümmern zu müssen.

Das Steckbrett hat Lochreihen, in die Sie Teile und Drähte einführen können. Einige dieser Löcher sind elektrisch miteinander verbunden.

Die beiden oberen und unteren Reihen sind entlang der gesamten Platine in Reihe geschaltet. Diese Reihen werden verwendet, um die Schaltung mit Strom zu versorgen. Es kann 5 V oder 3,3 V sein, aber in jedem Fall müssen Sie zuerst 5 V und GND an das Steckbrett anschließen, wie in der Abbildung gezeigt. Manchmal können diese Zeilenverbindungen in der Mitte der Karte unterbrochen werden. Wenn Sie dies benötigen, können Sie sie wie in der Abbildung gezeigt verbinden.




Die verbleibenden Löcher in der Mitte der Platte sind in fünf Löcher gruppiert. Sie dienen zum Anschluss von Schaltungsteilen.

Das erste, was wir an unseren Mikrocontroller anschließen, ist die LED. Der elektrische Anschlussplan ist in der Abbildung dargestellt.


Warum brauche ich einen Widerstand in der Schaltung? In diesem Fall wird der Strom begrenzt, der durch die LED fließt. Jede LED ist für einen bestimmten Strom ausgelegt. Wenn dieser Strom größer ist, fällt die LED aus. Finden Sie heraus, welchen Wert der Widerstand nach dem Ohmschen Gesetz haben soll. Für diejenigen, die es nicht wissen oder vergessen haben, besagt das Ohmsche Gesetz, dass es eine lineare Abhängigkeit des Stroms von der Spannung gibt. Das heißt, je mehr Spannung an den Widerstand angelegt wird, desto mehr Strom fließt durch ihn.
V = I * R.
Wo V.-Spannung über dem Widerstand
Ich- Strom durch den Widerstand
R.- Widerstand zu finden.
Zuerst müssen wir die Spannung am Widerstand herausfinden. Die meisten der verwendeten 3-mm- oder 5-mm-LEDs haben eine Betriebsspannung von 3 V. Also müssen wir am Widerstand 5-3 = 2v auszahlen.

Dann berechnen wir den Strom, der durch den Widerstand fließt.
Die meisten 3- und 5-mm-LEDs leuchten bei einem Strom von 20 mA bei voller Helligkeit. Ein Strom von mehr als diesem kann sie deaktivieren, und ein Strom geringerer Stärke verringert ihre Helligkeit, ohne Schaden zu verursachen.

Wir möchten also die LED im 5-V-Stromkreis so einschalten, dass sie einen Strom von 20 mA hat. Da alle Teile in einem Stromkreis enthalten sind, hat der Widerstand auch einen Strom von 20 mA.
Wir bekommen
2 V = 20 mA * R.
2 V = 0,02 A * R.
R = 100 Ohm

100 Ohm ist der minimale Widerstand, es ist besser, etwas mehr zu verwenden, da die LEDs einige unterschiedliche Eigenschaften aufweisen.
In diesem Beispiel wird ein 220-Ohm-Widerstand verwendet. Nur weil der Autor viele davon hat: zwinker:.

Führen Sie die LED so in die Löcher in der Mitte der Platine ein, dass ihr langer Anschluss mit einem der Anschlüsse des Widerstands verbunden ist. Schließen Sie das zweite Ende des Widerstands an 5 V an und verbinden Sie den zweiten Ausgang der LED mit GND. Die LED sollte aufleuchten.

Bitte beachten Sie, dass es einen Unterschied beim Anschließen der LED gibt. Der Strom fließt von einem längeren Anschluss zu einem kürzeren. In dem Diagramm kann man sich vorstellen, dass der Strom in die Richtung fließt, in die das Dreieck gerichtet ist. Versuchen Sie, die LED umzudrehen, und Sie werden sehen, dass sie nicht aufleuchtet.

Aber wie Sie den Widerstand anschließen, gibt es überhaupt keinen Unterschied. Sie können es umdrehen oder versuchen, es an den anderen Ausgang der LED anzuschließen. Dies hat keine Auswirkungen auf den Betrieb der Schaltung. Der Strom durch die LED wird weiterhin begrenzt.

Anatomie einer Arduino-Skizze.

Programme für Arduino heißen Skizze. Sie bestehen aus zwei Hauptfunktionen. Funktion Setup und Funktion Schleife
Innerhalb dieser Funktion werden Sie alle Grundeinstellungen vornehmen. Welche Schlussfolgerungen bei der Eingabe oder Ausgabe funktionieren, welche Bibliotheken verbunden werden sollen, initialisiert Variablen. Funktion Setup () Es startet nur einmal während der Skizze, wenn das Programm startet.
Dies ist die Hauptfunktion, die danach ausgeführt wird setup (). In der Tat ist dies das Programm selbst. Diese Funktion wird unbegrenzt ausgeführt, bis Sie das Gerät ausschalten.

Arduino blinkende LED




In diesem Beispiel verbinden wir eine Schaltung mit einer LED mit einem der digitalen Arduino-Pins und schalten sie mit dem Programm ein und aus. Außerdem lernen Sie einige nützliche Funktionen kennen.



- Diese Funktion wird in verwendet setup () Teile des Programms und dient dazu, die Schlussfolgerungen zu initialisieren, die Sie als Eingabe verwenden werden (EINGABE) oder beenden (AUSGABE). Sie können keine Daten vom Pin lesen oder schreiben, bis Sie ihn entsprechend eingestellt haben pinMode. Diese Funktion hat zwei Argumente: pinNumber- Dies ist die PIN-Nummer, die Sie verwenden werden.

Modus- legt fest, wie der Stift funktioniert. Am Eingang (EINGABE) oder beenden (AUSGABE). Um die LED zu beleuchten, müssen wir ein Signal geben Von Arduino Dazu konfigurieren wir den Pin zum Beenden.
- Diese Funktion dient zum Einstellen des Status (Zustand) Pina (pinNumber). Es gibt zwei Hauptzustände (im Allgemeinen gibt es 3), einer ist Hochwird der Stift 5V sein, ein anderer ist Niedrig und der Stift wird 0v sein. Um die LED zu leuchten, müssen wir einen hohen Pegel an dem mit der LED verbundenen Pin einstellen Hoch.

- Verzögerung. Dient dazu, das Programm für einen bestimmten Zeitraum in ms zu verzögern.
Unten finden Sie den Code, durch den die LED blinkt.
// LED blinkt

int ledPin = 7; // Arduino-Pin, an den die LED angeschlossen ist

void setup () {
  pinMode (ledPin, OUTPUT); // setze den Pin als EXIT
}}

void loop () {
  digitalWrite (ledPin, HIGH); // LED leuchten lassen
  Verzögerung (1000); // Verzögerung 1000 ms (1 s)
  digitalWrite (ledPin, LOW); // LED ausschalten
  Verzögerung (1000); // 1 Sek. warten
}}


Eine kleine Erklärung zum Code.
Zeilen, die mit "//" beginnen, sind Kommentare von Arduino, die sie ignorieren.
Alle Befehle enden mit einem Semikolon. Wenn Sie sie vergessen, erhalten Sie eine Fehlermeldung.

Ledpinist eine Variable. Variablen werden in Programmen zum Speichern von Werten verwendet. In diesem Beispiel die Variable Ledpin Wird ein Wert von 7 zugewiesen, ist dies die Pin-Nummer des Arduino. Wenn das Arduino im Programm auf eine Zeichenfolge mit einer Variablen trifft Ledpin wird der zuvor angegebene Wert verwendet.
Also aufzeichnen PinMode (LEDPin, OUTPUT) ähnlich wie bei der Aufnahme PinMode (7, OUTPUT).
Im ersten Fall reicht es jedoch aus, die Variable zu ändern, und sie ändert sich in jeder Zeile, in der sie verwendet wird. Im zweiten Fall müssen Sie in jedem Befehl Änderungen an den Stiften vornehmen, um die Variable zu ändern.

In der ersten Zeile wird der Variablentyp angegeben. Bei der Programmierung von Arduino ist es wichtig, immer den Variablentyp zu deklarieren. Im Moment müssen Sie nur wissen INT kündigt negative und positive Zahlen an.
Unten wird vorgestellt Modellierung Skizze. Drücken Sie Start, um den Betrieb der Schaltung anzuzeigen.



Wie erwartet erlischt die LED und leuchtet nach einer Sekunde auf. Versuchen Sie, die Verzögerung zu ändern, um zu sehen, wie es funktioniert.

Verwaltung mehrerer LEDs.

In diesem Beispiel erfahren Sie, wie Sie mehrere LEDs steuern. Installieren Sie dazu 3 weitere LEDs auf der Platine und verbinden Sie sie wie unten gezeigt mit den Arduino-Widerständen und -Pins.



Um die LEDs der Reihe nach ein- und auszuschalten, müssen Sie ein Programm wie das folgende schreiben:
// Multi LED Blinken

int led1Pin = 4;
int led2Pin = 5;
int led3Pin = 6;
int led4Pin = 7;

void setup () {
  // Pins als EXIT setzen
  pinMode (led1Pin, OUTPUT);
  pinMode (led2Pin, OUTPUT);
  pinMode (led3Pin, OUTPUT);
  pinMode (led4Pin, OUTPUT);
}}

void loop () {
  digitalWrite (led1Pin, HIGH); // LED leuchten lassen
  Verzögerung (1000); // Verzögerung 1 Sek
  digitalWrite (led1Pin, LOW); // LED löschen
  Verzögerung (1000); // Verzögerung 1 Sek

  // mache dasselbe für die anderen 3 LEDs
  digitalWrite (led2Pin, HIGH); // LED leuchten lassen
  Verzögerung (1000); // Verzögerung 1 Sek
  digitalWrite (led2Pin, LOW); // LED löschen
  Verzögerung (1000); // Verzögerung 1 Sek

  digitalWrite (led3Pin, HIGH); // LED leuchten lassen
  Verzögerung (1000); // Verzögerung 1 Sek
  digitalWrite (led3Pin, LOW); // LED löschen
  Verzögerung (1000); // Verzögerung 1 Sek

  digitalWrite (led4Pin, HIGH); // LED leuchten lassen
  Verzögerung (1000); // Verzögerung 1 Sek
  digitalWrite (led4Pin, LOW); // LED löschen
  Verzögerung (1000); // Verzögerung 1 Sek
}}


Dieses Programm wird gut funktionieren, aber dies ist nicht die rationalste Lösung. Der Code muss geändert werden. Damit das Programm immer wieder funktioniert, verwenden wir das aufgerufene Konstrukt.
Zyklen sind praktisch, wenn Sie dieselbe Aktion mehrmals wiederholen müssen. Im obigen Code wiederholen wir die Zeilen

digitalWrite (led4Pin, HIGH);
Verzögerung (1000);
digitalWrite (led4Pin, LOW);
Verzögerung (1000); 

vollständiger Skizzencode im Anhang for.zip [720 b] (Downloads: 1410)

LED-Helligkeitseinstellung

Manchmal müssen Sie die Helligkeit der LEDs im Programm ändern. Dies kann mit dem Befehl erfolgen analogWrite (). Dieser Befehl schaltet die LED so schnell ein und aus, dass das Auge dieses Flackern nicht sieht. Wenn die LED die Hälfte der Zeit eingeschaltet und die Hälfte ausgeschaltet ist, erscheint sie visuell so, dass sie mit der Hälfte ihrer Helligkeit leuchtet. Dies wird als Pulsweitenmodulation bezeichnet (PWM oder PWM in Englisch). PWM wird häufig verwendet, da es zur Steuerung der „analogen“ Komponente mithilfe eines digitalen Codes verwendet werden kann. Nicht alle Arduino-Pins sind für diese Zwecke geeignet. Nur die Schlussfolgerungen, um die sich eine solche Bezeichnung zieht "~""Sie sehen es neben den Stiften 3,5,6,9,10,11.
Schließen Sie eine Ihrer LEDs an einen der PWM-Ausgänge an (für den Autor ist dies Pin 9). Führen Sie nun die blinkende Skizzen-LED aus, ändern Sie jedoch zuerst den Befehl digitalWrite () auf analogWrite (). analogWrite () Es gibt zwei Argumente: Das erste ist die Pin-Nummer und das zweite ist der PWM-Wert (0-255), der auf LEDs angewendet wird. Dies ist ihre Helligkeit und bei Elektromotoren die Drehzahl. Unten finden Sie einen Beispielcode für unterschiedliche LED-Helligkeiten.
// Ändern Sie die Helligkeit der LED

int ledPin = 9; // LED an diesen Pin angeschlossen
void setup () {
  pinMode (ledPin, OUTPUT); // Initialisiere den Pin für die Ausgabe
}}

void loop () {
  analogWrite (ledPin, 255); // volle Helligkeit (255/255 = 1)
  Verzögerung (1000); // Pause 1 Sek
  digitalWrite (ledPin, LOW); // LED ausschalten
  Verzögerung (1000); // Pause 1 Sek

  analogWrite (ledPin, 191); // Helligkeit bei 3/4 (191/255 ~ = 0,75)
  Verzögerung (1000); // Pause 1 Sek
  digitalWrite (ledPin, LOW); // LED ausschalten
  Verzögerung (1000); // Pause 1 Sek

  analogWrite (ledPin, 127); // halbe Helligkeit (127/255 ~ = 0,5)
  Verzögerung (1000); // Pause 1 Sek
  digitalWrite (ledPin, LOW); // LED ausschalten
  Verzögerung (1000); // Pause 1 Sek

  analogWrite (ledPin, 63); // Viertelhelligkeit (63/255 ~ = 0,25)
  Verzögerung (1000); // Pause 1 Sek
  digitalWrite (ledPin, LOW); // LED ausschalten
  Verzögerung (1000); // Pause 1 Sek
}}


Versuchen Sie, den PWM-Wert im Befehl zu ändern analogWrite ()um zu sehen, wie sich dies auf die Helligkeit auswirkt.
Als nächstes lernen Sie, wie Sie die Helligkeit gleichmäßig von voll auf null einstellen. Sie können natürlich 255 Mal einen Code kopieren
analogWrite (ledPin, Helligkeit);
Verzögerung (5); // kurze Verzögerung
Helligkeit = Helligkeit + 1;

Aber Sie verstehen - es wird nicht praktisch sein. Verwenden Sie dazu am besten die zuvor verwendete FOR-Schleife.
Im folgenden Beispiel werden zwei Zyklen verwendet, einer zum Reduzieren der Helligkeit von 255 auf 0
für (int Helligkeit = 0; Helligkeit = 0; Helligkeit -) {

analogWrite (ledPin, Helligkeit);
Verzögerung (5);

}}

Verzögerung (5) wird verwendet, um die Anstiegs- und Abfallrate der Helligkeit zu verlangsamen 5 * 256 = 1280 ms = 1,28 Sek.)
Die erste Zeile verwendet "Helligkeit-", so dass der Helligkeitswert bei jeder Wiederholung des Zyklus um 1 abnimmt. Bitte beachten Sie, dass der Zyklus so lange funktioniert wie Helligkeit> = 0. Das Schild ersetzen > auf dem Schild >= Wir haben 0 in den Helligkeitsbereich aufgenommen. Diese Skizze ist unten modelliert.
// Ändere sanft die Helligkeit

int ledPin = 9; // LED ist an diesen Pin angeschlossen

void setup () {
  pinMode (ledPin, OUTPUT); // Initialisiere den Pin zum Beenden
}}

void loop () {
  // Erhöhe allmählich die Helligkeit (0 bis 255)
  für (int Helligkeit = 0; Helligkeit = 0; Helligkeit -) {
    analogWrite (ledPin, Helligkeit);
    Verzögerung (5);
  }}

  Verzögerung (1000); // 1 Sek. warten
 // die Helligkeit sanft verringern (255 auf 0)
  für (int Helligkeit = 255; Helligkeit> = 0; Helligkeit -) {
    analogWrite (ledPin, Helligkeit);
    Verzögerung (5);
  }}

  Verzögerung (1000); // 1 Sek. warten
}}
}}

Dies ist nicht sehr sichtbar, aber die Idee ist klar.



RGB LED und Arduino

Die RGB-LED besteht eigentlich aus drei LEDs unterschiedlicher Farbe in einem Gehäuse.



Mit verschiedenen LEDs mit unterschiedlicher Helligkeit können Sie verschiedene Farben kombinieren und erhalten. Für Arduino, wo die Anzahl der Helligkeitsabstufungen 256 beträgt, erhalten Sie 256 ^ 3 = 16581375 mögliche Farben. In Wirklichkeit wird es natürlich weniger davon geben.
Die LED, die wir verwenden werden, ist die gemeinsame Kathode. Das heißt, Alle drei LEDs sind strukturell über Kathoden mit einem Anschluss verbunden. Wir werden diesen Pin mit dem GND-Pin verbinden. Die verbleibenden Klemmen müssen über die Begrenzungswiderstände mit den PWM-Klemmen verbunden werden. Der Autor verwendete die Schlussfolgerungen 9-11. Somit ist es möglich, jede LED separat zu steuern. Die erste Skizze zeigt, wie jede LED einzeln eingeschaltet wird.



// RGB LED - Test

// Pin-Verbindungen
int red = 9;
int grün = 10;
int blue = 11;

void setup () {
  PinMode (rot, OUTPUT);
  pinMode (blau, OUTPUT);
  pinMode (grün, OUTPUT);
}}

void loop () {
  // rote LED ein- / ausschalten
  digitalWrite (rot, HOCH);
  Verzögerung (500);
  digitalWrite (rot, NIEDRIG);
  Verzögerung (500);
  
  // grüne LED ein- / ausschalten
  digitalWrite (grün, HOCH);
  Verzögerung (500);
  digitalWrite (grün, NIEDRIG);
  Verzögerung (500);

  // schalte die blaue LED ein / aus
  digitalWrite (blau, HOCH);
  Verzögerung (500);
  digitalWrite (blau, NIEDRIG);
  Verzögerung (500);
}}


Im folgenden Beispiel werden die Befehle verwendet analogWrite () und um verschiedene zufällige Helligkeitswerte für LEDs zu erhalten. Sie werden verschiedene Farben sehen, die sich zufällig ändern.
// RGB LED - zufällige Farben

// Pin-Verbindungen
int red = 9;
int grün = 10;
int blue = 11;
void setup () {
  PinMode (rot, OUTPUT);
  pinMode (blau, OUTPUT);
  pinMode (grün, OUTPUT);
}}
void loop () {
  // wähle eine zufällige Farbe
  analogWrite (rot, zufällig (256));
  analogWrite (blau, zufällig (256));
  analogWrite (grün, zufällig (256));
  delay (1000); // warte eine Sekunde
}}


Zufällig (256)- Gibt eine Zufallszahl im Bereich von 0 bis 255 zurück.
In der angehängten Datei befindet sich eine Skizze, die sanfte Farbübergänge von Rot nach Grün, dann nach Blau, Rot, Grün usw. zeigt. transitions.zip [373 b] (Downloads: 386)
Eine Beispielskizze funktioniert, aber es gibt viel doppelten Code. Sie können den Code vereinfachen, indem Sie Ihre eigene Hilfsfunktion schreiben, mit der eine Farbe problemlos in eine andere geändert wird.
So wird es aussehen: function.zip [263 b] (Downloads: 420)
Schauen wir uns die Definition einer Funktion in Teilen an. Funktion aufgerufen Fader und hat zwei Argumente. Jedes Argument wird durch ein Komma getrennt und in der ersten Zeile der Funktionsdefinition wird ein Typ deklariert: void fader (int color1, int color2). Sie sehen, dass beide Argumente als deklariert sind intund ihnen werden Namen gegeben color1 und color2 als bedingte Variablen zum Definieren einer Funktion. Nichtig bedeutet, dass die Funktion keine Werte zurückgibt, sondern lediglich Befehle ausführt. Wenn es notwendig wäre, eine Funktion zu schreiben, die das Ergebnis der Multiplikation zurückgibt, würde dies folgendermaßen aussehen:
int Multiplikator (int Nummer1, int Nummer2) {

int product = number1 * number2;
Produkt zurückgeben;

}} 

Beachten Sie, wie wir Type deklariert haben int stattdessen als Rückgabetyp
nichtig.
Innerhalb der Funktion gibt es Befehle, die Sie bereits in der vorherigen Skizze verwendet haben. Nur die PIN-Nummern wurden durch ersetzt color1 und color2. Funktion aufgerufen Faderwerden seine Argumente berechnet als Farbe1 = rot und Farbe2 = grün. Die vollständige Archivskizze mit Funktionen functions.zip [392 b] (Downloads: 320)

Knopf

In der nächsten Skizze wird eine Schaltfläche mit normalerweise geöffneten Kontakten ohne Fixierung verwendet.

Arduino für Anfänger

Dies bedeutet, dass, während die Taste nicht gedrückt wird, der Strom nicht durch sie fließt und die Taste nach dem Loslassen in ihre ursprüngliche Position zurückkehrt.
In der Schaltung wird zusätzlich zur Taste ein Widerstand verwendet. In diesem Fall wird der Strom nicht begrenzt, sondern die Taste auf 0 V (GND) "gezogen". Das heißt, Bis der Knopf an dem Pin des Arduino gedrückt wird, an den er angeschlossen ist, ist der Pegel niedrig. Der in der 10-kΩ-Schaltung verwendete Widerstand.

// Definiere den Button Click
int buttonPin = 7;
void setup () {
  pinMode (buttonPin, INPUT); // Initialisiere den Eingangspin
  Serial.begin (9600); // Initialisiere die serielle Schnittstelle
}}
void loop () {
  if (digitalRead (buttonPin) == HIGH) {// wenn die Taste gedrückt wird
    Serial.println ("gedrückt"); // drucke "gedrückt"
  } else {
    Serial.println ("unpressed"); // sonst "unpressed"
  }}
}}

Diese Skizze enthält mehrere neue Teams.
-Dieser Befehl nimmt den Wert High (High Level) und Low (Low Level) der Ausgabe an, die wir überprüfen. Zuvor musste diese Ausgabe in setup () für die Eingabe konfiguriert werden.
;; // wobei buttonPin die PIN-Nummer ist, mit der die Taste verbunden ist.
Über die serielle Schnittstelle können Sie Arduino-Nachrichten an den Computer senden, während der Controller selbst das Programm ausführt. Dies ist nützlich zum Debuggen eines Programms und zum Senden von Nachrichten an andere Geräte oder Anwendungen. Um die Datenübertragung über die serielle Schnittstelle (auch als UART oder USART bezeichnet) zu ermöglichen, müssen Sie sie in setup () initialisieren.

Serial.begin () hat nur ein Argument ist die Datenübertragungsrate zwischen dem Arduino und dem Computer.
Skizze, ein Befehl wird verwendet, um eine Nachricht in der Arduino IDE (Tools >> Serial Monitor) anzuzeigen.
- Mit dem Design können Sie den Fortschritt des Programms steuern, indem Sie mehrere Prüfungen an einem Ort kombinieren.
Wenn (if) digitalRead HIGH zurückgibt, wird das Wort "gedrückt" auf dem Monitor angezeigt. Andernfalls wird (ansonsten) das Wort "gequetscht" auf dem Monitor angezeigt. Jetzt können Sie versuchen, die LED per Knopfdruck ein- und auszuschalten.
// Tastendruckerkennung mit LED-Ausgang
int buttonPin = 7;
int ledPin = 8;
void setup () {
  pinMode (buttonPin, INPUT); // Dieses Mal setzen wir den Button-Pin auf INPUT
  pinMode (ledPin, OUTPUT);
  Serial.begin (9600);
}}
void loop () {
  if (digitalRead (buttonPin) == HIGH) {
    digitalWrite (ledPin, HIGH);
    Serial.println ("gedrückt");
  } else {
    digitalWrite (ledPin, LOW);
    Serial.println ("unpressed");
  }}
}}


Analogeingang.

analogRead Ermöglicht das Lesen von Daten von einem der Arduino-Analogstifte und zeigt einen Wert im Bereich von 0 (0 V) bis 1023 (5 V) an. Wenn die Spannung am Analogeingang 2,5 V beträgt, wird 2,5 / 5 * 1023 = 512 gedruckt
analogRead hat nur ein Argument - Dies ist die analoge Eingangsnummer (A0-A5). Die folgende Skizze enthält einen Code zum Ablesen der Spannung von einem Potentiometer. Schließen Sie dazu einen variablen Widerstand, die extremen Pins an die Pins 5V und GND und den mittleren Pin an den Eingang A0 an.


Führen Sie den folgenden Code aus und sehen Sie im seriellen Monitor nach, wie sich die Werte abhängig von der Drehung des Widerstandsknopfs ändern.
// Analogeingang

int potPin = A0; // Der zentrale Ausgang des Potentiometers ist mit diesem Pin verbunden

void setup () {
  // Der analoge Pin ist standardmäßig durch Eingabe aktiviert, sodass keine Initialisierung erforderlich ist
  Serial.begin (9600);
}}

void loop () {
  int potVal = analogRead (potPin); // potVal ist eine Zahl zwischen 0 und 1023
  Serial.println (potVal);
}}

Die nächste Skizze kombiniert eine Skizze mit Knopfdruck und eine Skizze zur Steuerung der LED-Helligkeit. Die LED leuchtet über der Taste auf und das Potentiometer steuert die Helligkeit des Glühens.
// Tastendruckerkennung mit LED-Ausgang und variabler Intensität
int buttonPin = 7;
int ledPin = 9;
int potPin = A0;
void setup () {
  pinMode (buttonPin, INPUT);
  pinMode (ledPin, OUTPUT);
  Serial.begin (9600);
}}
void loop () {
  if (digitalRead (buttonPin) == HIGH) {// wenn die Taste gedrückt wird
    int analogVal = analogRead (potPin);
    int scaledVal = map (analogVal, 0, 1023, 0, 255);
    analogWrite (ledPin, scaledVal); // LED mit der vom Pot festgelegten Intensität einschalten
    Serial.println ("gedrückt");
  } else {
    digitalWrite (ledPin, LOW); // ausschalten, wenn die Taste nicht gedrückt wird
    Serial.println ("unpressed");
  }}
}}
8.7
9
9

Kommentar hinzufügen

    • lächelnlächeltxaxaokweiß nichtYahoonea
      ChefKratzerDummkopfjaja-jaaggressivGeheimnis
      Entschuldigungtanzendance2Tanz3VerzeihungHilfeGetränke
      hör aufFreundegutgut gutpfeifenOhnmachtZunge
      RauchklatschenCrayerklärenspöttischdon-t_mentionherunterladen
      Hitzeärgerlichlach1mdaTreffenMoskingnegativ
      not_iPopcornbestrafenlesenerschreckenAngstSuche
      verspottendankedasto_clueumnikakutstimme zu
      schlechtbeeeblack_eyeblum3errötenprahlenLangeweile
      zensiertAngenehmheitsecret2drohenSiegyusun_bespectacled
      shokrespektlolvorgezogenWillkommenKrutoyya_za
      ya_dobryiHelferne_huliganne_othodiFludVerbotschließen
4 Kommentar
So funktioniert es wie es sollte - // die Helligkeit schrittweise erhöhen (0 bis 255)
für (int Helligkeit = 0; Helligkeit <= 255; Helligkeit ++) {
analogWrite (ledPin, Helligkeit);
Verzögerung (5);
Bei der Kompilierung wird ein Fehler ausgegeben Arduino: 1.6.5 (Windows 7), Board "Arduino Nano, ATmega328"

skizzen_sep20a: 25: fehler: erwartete deklaration vor '}' token
erwartete Deklaration vor '}' Token
Ich habe die Skizze der glatten Zündung kopiert.
Meine LED leuchtet scharf auf, geht aber reibungslos aus.

Erklären Sie bitte.
Ich habe die Skizze der glatten Zündung kopiert.
Meine LED leuchtet scharf auf, geht aber reibungslos aus.

Erklären Sie bitte.

Wir empfehlen Ihnen zu lesen:

Gib es für das Smartphone ...