Erste Schritte mit dem Arduino Ein genauerer Blick auf die Platine und die Struktur eines Programms

Erste Schritte mit dem Arduino Ein genauerer Blick auf die Platine und die Struktur eines Programms / DIY

Das letzte Mal, als ich Sie verlassen habe, habe Sie eingerichtet. Erste Schritte mit Ihrem Arduino Starter Kit - Installieren von Treibern und Einrichten von Board & Port Erste Schritte mit Ihrem Arduino Starter Kit - Installieren von Treibern & Einrichten von Board & Port So haben Sie sich einen gekauft Arduino Starter Kit und möglicherweise einige andere coole Komponenten - was nun? Wie fangen Sie eigentlich an, dieses Arduino-Ding zu programmieren? Wie richten Sie es ein? Lesen Sie Ihr Arduino, um mit Mac oder Windows zu arbeiten, und haben Sie eine einfache Test-App hochgeladen, die die integrierte LED blinkt. Heute erkläre ich Ihnen den Code, den Sie hochgeladen haben, die Struktur der Arduino-Software und ein wenig mehr über die elektronischen Bits auf der Platine.

Dieser Artikel ist Teil einer Einführung in die Arduino-Serie. Die anderen Artikel in der Serie sind bisher:

  • Was ist Arduino und was können Sie damit machen? Was ist Arduino und was können Sie damit machen? Was ist Arduino und was können Sie damit machen? Das Arduino ist ein bemerkenswertes kleines elektronisches Gerät, aber wenn Sie noch nie eines benutzt haben, was genau sind sie und was können Sie damit machen? Weiterlesen ?
  • Was ist ein Arduino-Starter-Kit und was enthält es? Was ist in einem Arduino Starter Kit enthalten? [MakeUseOf erklärt] Was ist in einem Arduino Starter Kit enthalten? [MakeUseOf erklärt] Ich habe die Arduino-Open-Source-Hardware hier bereits auf MakeUseOf vorgestellt, aber Sie benötigen mehr als nur den eigentlichen Arduino, um etwas daraus zu bauen und tatsächlich loszulegen. Arduino "Starter-Kits" sind… Lesen Sie mehr
  • Weitere coole Komponenten, die Sie mit Ihrem Starter-Kit kaufen können 8 Weitere coole Komponenten für Ihre Arduino-Projekte 8 Weitere coole Komponenten für Ihre Arduino-Projekte Sie denken also über ein Arduino-Starter-Kit nach, fragen sich jedoch, ob es einige grundlegende LEDs und Widerstände gibt genug, um dich für das Wochenende zu beschäftigen? Wahrscheinlich nicht. Hier sind weitere 8… Read More
  • Erste Schritte mit Ihrem Arduino Starter Kit - Installieren von Treibern und Einrichten von Board & Port Erste Schritte mit Ihrem Arduino Starter Kit - Installieren von Treibern & Einrichten von Board & Port Erste Schritte mit Ihrem Arduino Starter Kit - Installieren von Treibern & Einrichten von Board & Port Sie haben sich also ein Arduino-Starter-Kit und möglicherweise andere zufällig coole Komponenten gekauft - was jetzt? Wie fangen Sie eigentlich an, dieses Arduino-Ding zu programmieren? Wie richten Sie es ein? Lesen Sie mehr

Die Hardware

Schauen wir uns genauer an, was der Arduino Uno in Bezug auf Bits auf der Leiterplatte hat.

Hier ist ein vergrößertes Diagramm:

  • An der Oberseite befinden sich 14 digitale Ein- / Ausgangspins (nummeriert von 0-13). Dies sind die vielseitigsten Pins Ihres Arduino. Sie können als Eingang oder Ausgang fungieren und bilden den Kern Ihrer Projekte. Digital bedeutet, dass das Signal, das diese Pins schreiben oder lesen können, ein- oder ausgeschaltet ist.
  • 6 dieser digitalen Pins, die mit dem Tilde-Zeichen gekennzeichnet sind ~ sind in der Lage, die sogenannte Pulsweitenmodulation auszuführen. Ich bin kein Elektrotechniker, also schäme ich mich nicht damit, die Wissenschaft dahinter zu erklären, aber für Sie und mich bedeutet das, dass wir eine Reihe von Ausgangspegeln bereitstellen können - zum Beispiel das Dimmen einer LED oder das Antreiben eines Motors mit unterschiedlichen Geschwindigkeiten.
  • Pin 13 ist insofern besonders, als er eine eingebaute LED hat. Dies ist nur aus praktischen Gründen und zu Testzwecken wirklich. Sie können diese integrierte LED wie in der Blink-Beispiel-App verwenden, indem Sie sie einfach an Pin 13 ausgeben - oder sie kann als Standard-E / A-Pin verwendet werden.
  • Rechts unten befinden sich 6 analoge Eingangspins. Diese werden den Wert von analogen Sensoren wie einem Lichtmesser oder variablen Widerständen ablesen.
  • Links neben den analogen Eingangspins befinden sich Power-Pins. Die einzigen, über die Sie sich wirklich Gedanken machen müssen, sind die Masse-Pins (GND), 3,3 V und 5 V-Stromleitungen.
  • Schließlich ist der einzige Schalter auf dem Arduino ein Reset-Schalter. Dadurch wird das Programm, das sich in seinem Speicher befindet, erneut gestartet.
  • Das Arduino verfügt über eine festgelegte Menge an Speicher. Wenn Ihr Programm zu groß wird, gibt der Compiler einen Fehler aus.

Die Struktur eines Arduino-Programms

Jedes Arduino-Programm besteht aus mindestens zwei Funktionen (wenn Sie nicht wissen, was eine Funktion ist, lesen Sie unbedingt mein grundlegendes Programmierlehrgang, Teil 2 - Funktions- und Steueranweisungen. Die absoluten Grundlagen der Programmierung für Anfänger (Teil 2) Die absoluten Grundlagen der Programmierung für Anfänger (Teil 2) In Teil 2 unseres absoluten Anfängerleitfadens zum Programmieren werde ich die Grundlagen der Funktionen, Rückgabewerte, Schleifen und Bedingungen erläutern. Lesen Sie zuerst Teil 1, bevor Sie sich damit befassen , wo ich die… Read More und Teil 1, in dem wir die Variablen besprochen haben, erläuterte. Grundlagen der Computerprogrammierung 101 - Variablen und Datentypen Grundlagen der Computerprogrammierung 101 - Variablen und Datentypen Nachdem Sie etwas über objektorientierte Programmierung vor und an deren Stelle eingeführt und darüber gesprochen haben Ich glaube, es ist an der Zeit, dass wir uns mit den absoluten Grundlagen des Programmierens auf eine nicht-sprachspezifische Weise befassen.… Lesen Sie mehr, bevor Sie fortfahren).

Die erste ist die Setup-Funktion. Dieser Vorgang wird anfangs einmal ausgeführt und dient dazu, dem Arduino mitzuteilen, was wo verbunden ist, und um alle erforderlichen Variablen in Ihrem Programm zu initialisieren.

Zweitens ist die Schleife. Dies ist der Kern jedes Arduino-Programms. Wenn das Arduino ausgeführt wird, durchläuft die Schleife nach Abschluss der Setup-Funktion den gesamten Code und führt dann das gesamte Verfahren erneut durch - bis entweder die Stromversorgung unterbrochen oder der Reset-Schalter gedrückt wird. Wie lange es dauert, um eine vollständige Schleife abzuschließen, hängt vom enthaltenen Code ab. Sie können einen Code schreiben, der besagt “warte 6 Stunden”, In diesem Fall wiederholt sich die Schleife nicht oft.

Hier ein kurzes Zustandsdiagramm zur Veranschaulichung:

Untersuchen des Blink-Programms

Schauen Sie sich den Blink-Programmcode an und identifizieren Sie die Setup- und Loop-Funktionen.

Hier ist das Setup:

void setup () // initialisiert den digitalen Pin als Ausgang. // An Pin 13 ist an den meisten Arduino-Boards eine LED angeschlossen: pinMode (13, OUTPUT); 

Die Zeilen, die mit beginnen // sind einfach Kommentare, um den Code einem menschlichen Leser zu erklären, und sie werden nicht in den Arduino hochgeladen. In dieser Arduino-App gibt es also nur eine Zeile Setup-Code. Diese Zeile sagt “Setzen Sie Pin 13 in den Ausgabemodus”. 13, denken Sie daran, ist die eingebaute LED.

Dann gibt es die Schleife:

void loop () digitalWrite (13, HIGH); // setze die LED-Einschaltverzögerung (1000); // Warten auf eine zweite digitalWrite (13, LOW); // die LED-Ausschaltverzögerung einstellen (1000); // warte mal eine Sekunde 

Die Kommentare am Ende jeder Codezeile erklären ihre Funktion recht gut. HOCH und NIEDRIG beziehen sich auf den EIN- und AUS-Zustand eines digitalen Ausgangs - in unserem Fall die LED. Man könnte eigentlich auch ON oder OFF in den Code schreiben, beide sind auch (wie auch 0 und 1). Verzögern bittet den Arduino in diesem Fall, etwas zu warten 1000 Millisekunden (oder 1 Sekunde).

Zum Schluss noch ein Hinweis zur verwendeten Programmiersprache. Beachten Sie, dass sowohl die Setup- als auch die Loop-Funktion das Wort haben Leere vor ihnen. Dies ist ein spezielles Wort für nichts, weil die funktion gibt nichts zurück Wenn es aufgerufen wird, wird einfach der darin enthaltene Code ausgeführt. Lassen Sie es uns jetzt so belassen, indem wir sagen, dass der Codeblock der Funktion in geschweifte Klammern eingeschlossen ist und dass jede Codezeile mit einem; Semikolon.

Versuchen Sie, das Basisprogramm irgendwie zu ändern, indem Sie die genauen Verzögerungswerte in einen größeren oder kleineren Wert ändern. Sehen Sie, wie klein Sie es erreichen können, bevor das Blinken nicht mehr wahrnehmbar ist. Ermitteln Sie, welchen Wert Sie ändern müssen, damit er länger eingeschaltet bleibt oder länger ausgeschaltet bleibt. Fügen Sie einige weitere Anweisungen für digitalWrite und delay in die Loop-Funktion ein, um ein komplexeres Blinkmuster wie den Morse-Code für SOS zu erstellen. Wenn Sie einen Summer haben, versuchen Sie, ihn an die Pins 13 und GND anzuschließen (Hinweis: Das rote Kabel geht an 13, schwarz an Masse)..

Das ist alles für heute. Nächstes Mal fügen wir weitere LEDs hinzu und schreiben unsere eigene Anwendung von Grund auf. Kommentare und Freigaben wurden wie immer sehr geschätzt. Ich kann mir nicht vorstellen, dass Sie Probleme mit dem Code haben, auf den heute verwiesen wird. Wenn Sie jedoch versucht haben, den Code geringfügig anzupassen und auf Fehler oder unerwartetes Verhalten zu stoßen, können Sie ihn in den Kommentaren posten. Wir werden sehen wenn wir es gemeinsam durcharbeiten können.

Erfahren Sie mehr über: Arduino.