ESP8266 und Arduino, Verbindung, Pinbelegung. Installieren und Konfigurieren von Arduino im Windows-Betriebssystem Arduino Uno-Verbindung

In diesem Artikel erklären wir, wie Sie den Arduino Uno r3-Treiber anschließen und Ihre erste Skizze hochladen. programmiert mittels Software – einer integrierten Entwicklungsumgebung, die allen Boards gemeinsam ist. Es funktioniert sowohl online als auch offline.

Treiberfunktionen für Arduino Uno

Arduino benötigt einen Treiber, um auf einem Computer vollständig zu funktionieren. Die Installation von Treibersoftware unter Windows 7 ist die einfachste Möglichkeit, Software zu installieren. Am besten laden Sie es aus einer ZIP-Datei herunter. Dies erleichtert die Deinstallation der Software durch Löschen des Ordners.

Wenn das Betriebssystem Windows 10 den Treiber automatisch installiert, erscheint der Arduino einfach als COM-Port im Geräte-Manager. Er wird nicht als Mikroprozessor erkannt, obwohl er ordnungsgemäß funktioniert und Code von der Arduino IDE geladen werden kann. Nach der Installation des Arduino Nano-Treibers, der mit der Arduino-Software geliefert wird, wird der Mikrocontroller im Geräte-Manager als Arduino am COM-Port angezeigt.

Arten von Fahrern

Es gibt verschiedene Arten von Treibern für den Arduino-Motor und andere Projekte, die auf diesem Mikrocontroller basieren. Schauen wir uns einige Vertreter dieser für diesen Mikroprozessor verfügbaren Software an.

Typ 1

Treiber für die erweiterte Version von Arduino Uno – Arduino Mega 2560-Treiber. Arduino Uno und Mega 2560 haben möglicherweise Probleme mit der Verbindung zum Mac über einen USB-Hub. Wenn im Menü „ Extras → Serieller Port„Es wird nichts angezeigt. Versuchen Sie, das Board direkt an den Computer anzuschließen und neu zu starten.

Deaktivieren Sie die digitalen Pins 0 und 1 während des Bootens, da diese durch die serielle Kommunikation mit dem Computer gemeinsam genutzt werden (sie können angeschlossen und verwendet werden, nachdem der Code geladen wurde). Der Arduino Mega 2560-Treiber für Windows 7 ist unter folgendem Link verfügbar: https://www.arduino.cc/en/Main/Software. Nach dem Übergang gibt der Benutzer den Namen der Platine in das Suchfeld der offiziellen Website des Mikrocontrollers ein, um Treiber herunterzuladen.

Typ 2

Avrisp mkii-Treiber – erforderlich, um einen Programmierer zu erstellen. Bei der Installation wird der USB-Treiber installiert, sodass Sie den Atmel AVRISP mk II-Programmierer als Alternative zum seriellen Arduino-Bootloader verwenden können. Wenn Sie die AVR-MCU tatsächlich mit dem Bootloader-Code selbst programmieren müssen (erforderlich, wenn Sie einen bloßen Mega328-Mikroprozessor haben, auf dem die Bootloader-Firmware nicht vorinstalliert ist), können Sie dies über die Arduino IDE mit Tools/Burn Bootloader tun .

Nachdem Sie AVRISP mk II über die Funktion „Tools/Programmer“ als Software angegeben haben. Wenn Sie jedoch Studio 6.1/6.2 installieren, lädt die Atmel-Installation einen eigenen USB-Treiber, der mit ID Studio.x funktioniert. Sie haben die Möglichkeit, den Jungo-Treiber während des Studio-Installationsprozesses nicht zu installieren, aber Sie können Atmel AVRISP mk II oder Atmel JTAGICE3 nicht ohne diesen Treiber verwenden.

Wenn Sie das Plugin installieren Visual Micro für Studio 6.x Sie werden höchstwahrscheinlich den seriellen Bootloader von Arduino verwenden, da die Programmier- und Debugging-Funktionen von Visual Micro auf der seriellen USB-Kommunikation zwischen dem PC und dem Mikrocontroller basieren. Wenn Sie jedoch entscheiden, dass Sie Atmel AVRISP mk II aus der Visual Micro/Studio 6.x-Umgebung verwenden möchten, werden Sie feststellen, dass es nicht funktioniert. Es erscheint eine Fehlermeldung, dass AVRdude (die von der Arduino IDE verwendete Programmiersoftware) den AVRISP mk II-Programmierer nicht „sehen“ kann. Dies liegt daran, dass Studio6.x den Jungo USB-Treiber anstelle von Visual verwendet.

Typ 3

Um einen Schrittmotor zu bauen, benötigen Sie einen Arduino l298n-Treiber. Dies ist ein Dual-Motor-Treiber H-Brücke, mit dem Sie die Geschwindigkeit und Richtung von zwei Gleichstrommotoren gleichzeitig steuern können. Das Modul kann Gleichstrommotoren mit Spannungen von 5 bis 35 V und einem Spitzenstrom von bis zu 2 A antreiben. Schauen wir uns die Pinbelegung des L298N-Moduls genauer an und erklären, wie sie funktioniert.

Das Modul verfügt über zwei Schraubklemmen für die Motoren A und B und einen weiteren Schraubklemmenblock für den Erdungsstift, VCC für den Motor und einen 5-V-Stift, der entweder als Eingang oder Ausgang dienen kann. Dies hängt von der Spannung ab, die an den VCC-Motoren verwendet wird. Das Modul verfügt über einen eingebauten 5-V-Regler, der über einen Jumper entweder aktiviert oder deaktiviert werden kann.

Wenn die Motorversorgungsspannung bis zu 12 V beträgt, können wir den 5-V-Regler einschalten und der 5-V-Pin kann als Ausgang verwendet werden, um beispielsweise das Arduino-Board mit Strom zu versorgen. Wenn die Motorspannung jedoch mehr als 12 V beträgt, müssen wir den Jumper deaktivieren, da diese Spannungen den eingebauten 5-V-Regler beschädigen können.

In diesem Fall wird der 5-V-Pin als Eingangssignal verwendet, da wir ihn an eine 5-V-Stromversorgung anschließen müssen, damit der IC ordnungsgemäß funktioniert. Hier ist zu beachten, dass dieser IC den Spannungsabfall um etwa 2 V reduziert. Wenn wir also beispielsweise eine 12-V-Stromversorgung verwenden, beträgt die Spannung an den Motorklemmen etwa 10 V, was bedeutet, dass wir nicht das Maximum erreichen können Geschwindigkeit von unserem 12-Volt-Gleichstrommotor.

Wo und wie man den Treiber herunterlädt

Alle Arduino-Treiber sind auf der offiziellen Website verfügbar: https://www.arduino.cc/. Der Benutzer muss lediglich den für sein Projekt benötigten Treiber in die Suche eingeben.

Treiberinstallation

Laden Sie die Arduino-Software herunter und extrahieren Sie alle Dateien in einen Ordner c:\Programm. Am Ende erhalten Sie ein Verzeichnis ähnlich wie arduino-0021.

Schließen Sie dann die Karte über ein USB-Kabel an Ihren Computer an und warten Sie, bis Windows das neue Gerät erkennt.

Windows kann das Gerät nicht erkennen, da es nicht weiß, wo die Treiber gespeichert sind. Sie erhalten eine Fehlermeldung ähnlich der rechts.

Wählen Sie die Option zur Installation von einer Liste oder einem bestimmten Speicherort (Erweitert) und klicken Sie auf Weiter.

Wählen Sie nun den Speicherort der Arduino-Treiber aus. Dies befindet sich in einem Unterordner namens „drivers“ im Arduino-Verzeichnis.

Wählen Sie „Trotzdem fortfahren“.

Windows sollte nun die Arduino-Software finden. Klicken Sie auf „Fertig stellen“, um die Installation abzuschließen.

Der Computer kommuniziert mit der Platine über einen speziellen seriellen Port-Chip, der in die Platine integriert ist. Die Arduino IDE-Software muss die Nummer der seriellen Schnittstelle kennen, die Windows gerade zugewiesen hat. Öffnen Sie die Windows-Systemsteuerung und wählen Sie die Systemanwendung aus. Gehen Sie zur Registerkarte „Hardware“ und klicken Sie dann auf die Schaltfläche „Geräte-Manager“.

Klicken Sie auf die Option „Ports (COM und LPT)“ und notieren Sie, welcher COM-Port dem Arduino-Board zugewiesen wurde.

Starten Sie dann die Arduino IDE-Anwendung, die sich im Verzeichnis befindet c:\Programm\arduino-0021 o.ä.

Klicken " Service → Serieller Port" und wählen Sie oben die Portnummer aus.

Dann klick Extras → Service und wählen Sie den Typ Ihres Boards aus.

Versuchen Sie nun, das Blink-Demoprogramm aus dem Beispielverzeichnis in der Arduino IDE zu öffnen, Verify/Compile und laden Sie es auf Ihre Plattform herunter.

Viele Skizzen (Programme) arbeiten mit Bibliotheken. Die Bibliothek erleichtert die Arbeit mit einem bestimmten Modul oder einem der Modultypen. Wenn Sie beispielsweise Text auf einem LCD-Display anzeigen möchten, ohne eine Bibliothek anzuschließen, müssen Sie mehrere Bytes an Befehlen und Daten darauf übertragen, was mehrere Codezeilen erfordert, und vor allem müssen Sie den Typ kennen Sie kennen den Mikrocontroller, unter dem das LCD-Display arbeitet, den Zweck der Befehle, die es steuert, kennen die Architektur seines Speichers, die Adressen und den Zweck der Register, für die Sie das Datenblatt finden und erneut lesen müssen. Beim Schreiben von Code mithilfe einer Bibliothek (zum Beispiel LiquidCrystal_I2C.h) können Sie Text anzeigen, indem Sie nur eine Bibliotheksfunktion aufrufen: lcd.print("my text");

Bevor Sie die Methoden und Funktionen der Bibliothek nutzen können, müssen Sie dies tun Herunterladen (auf Ihren Computer herunterladen), Installieren (im gewünschten Ordner ablegen) und einstecken (Fügen Sie den Text „#include“ ein<файл.h>" in die Skizze).

Herunterladen der Bibliothek:

Wenn in unseren Lektionen, Beschreibungen oder Beispielen eine Bibliothek verwendet wird, stellen wir einen Link zum Herunterladen dieser Bibliothek bereit. Alle unsere Bibliotheken befinden sich in einem ZIP-Archiv, aber beeilen Sie sich nicht, Dateien aus dem Archiv zu holen, das ist möglicherweise nicht notwendig, weil... Die Arduino IDE selbst kann Archive entpacken und Bibliotheken in den erforderlichen Ordnern ablegen (siehe unten).

Wenn Sie das Bibliotheksarchiv von der Website heruntergeladen haben, ohne den Pfad zum Speichern der Datei anzugeben, befindet sich die heruntergeladene (hochgeladene) Datei höchstwahrscheinlich im Ordner: Dieser Computer > Downloads.

Bibliotheksinstallation:

Nachdem Sie die Bibliothek auf Ihren Computer heruntergeladen (hochgeladen) haben, müssen Sie sie installieren. Sie können die Bibliothek manuell installieren oder dies mit der Arduino IDE tun:

Installation der Bibliothek mit der Arduino IDE:

Rufen Sie das Menü auf: Skizzieren > Bibliothek verbinden > .ZIP-Bibliothek hinzufügen... .


Klicken Sie im angezeigten Fenster auf „ Dieser Computer " und wählen Sie den Ordner aus " Downloads " Wenn Sie beim Herunterladen eines ZIP-Archivs von der Site den Pfad zum Speichern der Datei angegeben haben, geben Sie anstelle des Ordners „Downloads“ den Pfad zur Datei an.


Wählen Sie die ZIP-Datei der Bibliothek aus, die Sie heruntergeladen haben. Der Dateiname stimmt möglicherweise nicht mit dem Bibliotheksnamen überein. Klicken Sie dann auf „ Offen » ( Offen ).


An diesem Punkt ist die Installation der Bibliothek abgeschlossen und Sie können mit der Verbindung mit der Skizze beginnen.

Manuelles Installieren der Bibliothek:

Entpacken Sie, was Sie heruntergeladen haben ZIP-Archiv und platzieren Sie den Ordner (der Ordnername stimmt normalerweise mit dem Namen der Bibliothek überein) aus diesem Archiv im Ordner: Dieser Computer > Dokumentation > Arduino > Bibliotheken .


Wenn die Arduino IDE während des Kopierens ausgeführt (geöffnet) wurde, müssen Sie alle Fenster dieses Programms schließen, dann die Arduino IDE starten (öffnen) und Sie können mit der Verbindung der Bibliothek mit der Skizze beginnen.

Hinweis: Ordner Bibliotheken Es gibt nicht nur den oben angegebenen Weg, sondern auch im Programmordner der Arduino IDE (Wo ist die Arduino-Datei .exe). Durch das Kopieren der Bibliothek in diesen Ordner wird diese ebenfalls installiert, wir empfehlen dies jedoch nicht. Tatsache ist, dass sich das Arduino IDE-Programm ständig weiterentwickelt und die Anzahl seiner Versionen ständig wächst. Wenn Sie eine neue Version der Arduino IDE installieren möchten, sind die Bibliotheken im Ordner „Dieser Computer > Dokumente > Arduino > Bibliotheken“ sowohl in der alten als auch in der neuen (installierten) Version der Arduino IDE verfügbar im Bibliotheksordner Arduino-IDE-Programme der alten Version (die zuvor installiert wurden) sind nur darin verfügbar (bis Sie sie auf die neue Version kopieren).

Anbindung der Bibliothek:

Um die Bibliothek einzubinden, müssen Sie am Anfang der Skizze nur eine Zeile schreiben: „#include<файл.h>", Zum Beispiel:

#enthalten // Anschließen der iarduino_4LED-Bibliothek für die Arbeit mit 4-Segment-LED-Anzeigen.

Einige Bibliotheken arbeiten mit den Methoden und Funktionen anderer Bibliotheken. Dann müssen Sie zwei Bibliotheken verbinden, zuerst diejenige, deren Methoden und Funktionen die zweite verwendet, zum Beispiel:

#enthalten // Anschließen der Wire-Bibliothek für die Arbeit mit dem I2C-Bus #include // Anschließen der LiquidCrystal_I2C-Bibliothek zur Arbeit mit einem LCD-Display über den I2C-Bus // Die LiquidCrystal_I2C-Bibliothek nutzt die Methoden und Funktionen der Wire-Bibliothek

Um mit den meisten Bibliotheken arbeiten zu können, müssen Sie ein Objekt (eine Instanz der Bibliotheksklasse) erstellen, über das ihre Funktionen und Methoden verfügbar sind, zum Beispiel:

LiquidCrystal_I2C lcd(0x27,20,4); // lcd ist ein Objekt der LiquidCrystal_I2C-Bibliothek // Auf Funktionen und Methoden der Bibliothek wird über das Objekt zugegriffen

Anstelle von „lcd“ können Sie ein beliebiges Wort oder eine beliebige Kombination aus Buchstaben und Zahlen schreiben; dies ist der Name des Objekts, über das Sie auf die Methoden und Funktionen der Bibliothek zugreifen können. Wenn Sie anstelle von LCD myLCD geschrieben haben, muss auf alle Methoden und Funktionen der LiquidCrystal_I2C-Bibliothek über den von Ihnen angegebenen Objektnamen zugegriffen werden, zum Beispiel: myLCD.print("my text");

Beispiele aus Bibliotheken:

Die meisten Bibliotheken enthalten Beispiele. Dabei handelt es sich um kleine Skizzen (Programme), die die Funktionalität der Bibliothek verdeutlichen. Der bequemste Weg, Beispiele anzuzeigen, ist die Verwendung der Arduino IDE. Menüpunkt auswählen: Datei > Beispiele , öffnet sich eine Liste mit den Namen der Bibliotheken, die Beispiele enthalten. Bewegen Sie den Mauszeiger über den Namen der Bibliothek und Sie sehen eine Liste der darin enthaltenen Beispiele. Wenn Sie auf ein Beispiel klicken, wird ein neues Arduino IDE-Fenster mit einer Beispielskizze angezeigt.


Eine alternative Möglichkeit, die Beispiele anzuzeigen, besteht darin, die Skizzendateien aus dem Ordner auszuführen:
Weg > Bibliotheken > Bibliotheksname > Beispiele > Beispielname .

Suche nach Bibliotheken:

Sie können selbst nach Bibliotheken suchen oder die Funktionalität der Arduino IDE nutzen.

Menüpunkt auswählen: Skizzieren > Bibliothek verbinden > Bibliotheken verwalten... .


" Bibliotheksmanager ", in dem Sie durch Eingabe des Namens in die Suchleiste die gewünschte Bibliothek finden können; zusätzlich können Sie die Punkte „Typ“ und „Thema“ einstellen.


Wenn Sie auf die Bibliotheksbeschreibung klicken, erscheint das „ Ausführung " und Knöpfe " Installation " Nachdem Sie auf die Schaltfläche „Installieren“ geklickt haben, können Sie mit der Einbindung der Bibliothek in den Sketch „#include“ beginnen<файл.h>".

Arduino ist ein Komplettsystem, mit dem Sie verschiedene Systeme steuern und Daten aus verschiedenen Quellen lesen können. Der Hauptvorteil von Arduino ist seine standardisierte Pin-Verteilung, die den Einsatz gebrauchsfertiger Lösungen ermöglicht, die die Fähigkeiten des Systems erweitern.

Mithilfe spezieller Platinen, sogenannter Shields, können Sie die Fähigkeiten von Arduino erweitern, indem Sie beispielsweise eine Netzwerkkarte, einen Treiber zur Steuerung eines Schrittmotors oder einen Abstandssensor anschließen. Auf der Programmseite ist jeder Pin der Schaltung klar definiert, was wiederum die Erstellung eigener Layouts anhand von im Internet verfügbaren Beispielen erleichtert.

Die folgende Abbildung zeigt die Arduino UNO- und Arduino MEGA-Boards:

Arduino MEGA ist im Hauptpinbereich mit der UNO-Version kompatibel. Zusätzliche MEGA-Pins sind separat angeordnet, wodurch die Kompatibilität mit Arduino UNO gewahrt bleibt.

Neben dem USB-Anschluss befindet sich eine „RESET“-Taste. Damit können Sie zum ursprünglichen Zustand des Programms zurückkehren, der beim Einschalten auftritt. Nach Drücken der „RESET“-Taste werden die Daten im Mikrocontroller-RAM zurückgesetzt und der Arduino beginnt mit der Ausführung des Programms von Anfang an.

Über die USB-Schnittstelle können Sie den Arduino programmieren und mit dem seriellen Monitor interagieren und kommunizieren. Darüber hinaus können Sie das Board direkt über USB mit Strom versorgen.

Beachten Sie jedoch, dass USB eine geringe Ausgangsleistung hat und Komponenten, die mehr Leistung benötigen, wie Gleichstrommotoren, Schrittmotoren oder Servos, nicht ausreichend mit Strom versorgen kann. Dieses Problem kann durch den Einsatz einer leistungsstarken externen Stromquelle gelöst werden.

Zu diesem Zweck verfügt Arduino über einen Anschluss zum Anschluss einer externen Stromquelle. Die Versorgungsspannung kann zwischen 5 und 20 V liegen. Tatsächlich sollte die optimale Spannung im Bereich von 7 bis 12 V liegen.

Wenn die Versorgungsspannung weniger als 7 V beträgt, beträgt die Spannung am Ausgang des eingebauten Stabilisators weniger als 5 V. Wenn die Eingangsversorgungsspannung mehr als 12 V beträgt, führt dies zu einer erheblichen Erwärmung des Spannungsstabilisators.

Der Einsatz einer externen Stromquelle ist dann sinnvoll, wenn ein Teil des Systems eine Versorgungsspannung von mehr als 5 V und eine ausreichend hohe Stromstärke benötigt oder wenn der Arduino unabhängig vom Computer arbeitet. Bei der Verwendung externer Elemente mit geringem Stromverbrauch ist es sicherlich bequemer, die Schaltung direkt über den USB-Anschluss mit Strom zu versorgen.

Arduino ist mit einem oder zwei sechspoligen Anschlüssen ausgestattet, die zur Programmierung des Mikrocontrollers dienen. Die Anschlüsse sind mit ICSP1 und ICSP2 bezeichnet. Über den Anschluss, der näher am Hauptmikrocontroller liegt, können Sie BOOTLOADER laden, und über den Anschluss, der näher am USB-Anschluss liegt, können Sie das USB-UART-Konverterprogramm laden. Der zweite Anschluss wird nur in Arduino-Boards verwendet, wo der Atmega-Mikrocontroller als USB-UART-Konverter verwendet wird. Wenn FT232 verbaut ist, dann fehlt der zweite Stecker auf der Platine.

Das Arduino-Board ist mit einer Gruppe von mindestens 4 LEDs ausgestattet. Zwei davon sind mit „RX“ und „TX“ gekennzeichnet und befinden sich neben dem FT232- oder Atmega-Chip. Sie signalisieren die serielle Datenübertragung zwischen Computer und Steuerung. Diese LEDs sind nützlich beim Programmieren und Testen eines Programms, das mit einem Computer verbunden ist. Anhand ihres Leuchtens können Sie optisch erkennen, ob eine Datenübertragung (Programmierung) stattfindet oder nicht.

Eine weitere LED mit der Aufschrift „ON“ ist die Betriebsanzeige der Platine. Die letzte LED ist normalerweise eine LED, deren Anode mit Pin 13 und deren Kathode mit dem Minuspol der Stromversorgung verbunden ist. Daher schaltet ein hoher Logikpegel an Pin 13 die LED ein, während ein niedriger Logikpegel sie ausschaltet.

Das letzte und wichtigste Element des Arduino-Boards sind die beiden Stiftreihen oben und unten. Ihre Position ist Standard, was es einfacher macht, abgeschlossene Projekte zu wiederholen und Schilde hinzuzufügen. Die untere Kontaktreihe ist in zwei Teile geteilt.

Die linke Seite (POWER) bietet Zugriff auf Strom und Steuerung:

  • IOREF – gibt an, mit welcher Spannung der Arduino-Prozessor betrieben wird (dies ist für einige Shields wichtig)
  • RESET - Arduino zurücksetzen
  • 3V3 – Stromversorgungssystem für Module, die 3,3 V benötigen
  • 5V - TTL-Stromversorgungssystem
  • GND – Masse
  • GND – Masse
  • VIN – Versorgungsspannung von einer externen Quelle

Die rechte Seite (ANALOG IN) ermöglicht das Einlesen analoger Signale. Mit dem Analog-Digital-Wandler (ADC) können Sie Spannungswerte von 0 bis AREF oder 0...5 V ablesen.

Der gelesene Wert kann 8-Bit oder 10-Bit sein. Analoge Eingänge sind mit A0, A1, A2, A3, A4, A5 gekennzeichnet. Trotz ihres primären Zwecks können die Pins A0 – A5 auch als digitale Ein- oder Ausgänge verwendet werden.

Auch die obere Kontaktreihe ist zweigeteilt. Die rechte Seite ist von 0 bis 7 nummeriert, die linke von 8 bis 13. Diese Reihe enthält die digitalen Ein-/Ausgangspins.

Bei den Pins 0 und 1 handelt es sich um spezielle Pins, auf die zusätzlich die seriellen Portleitungen (RX und TX) geführt werden. Sie können zur seriellen Kommunikation mit einer anderen Karte verwendet werden.

Die Pins 3, 5, 6, 9, 10, 11 werden als „~“ oder PWM bezeichnet. Sie können im PWM-Modus betrieben werden, der manchmal auch als Analogausgang bezeichnet wird. Dabei handelt es sich natürlich nicht um echte Analogausgänge. Sie ermöglichen lediglich die Steuerung der Impulsbreite, die in der Digitalelektronik häufig zur Modifizierung eines „analogen“ Signals verwendet wird.

Und die letzten beiden Pins sind GND und AREF, die zum Anschluss der externen Referenzspannung für den Analog-Digital-Wandler dienen.

Zusammenfassend verfügt der Arduino UNO über 14 digitale I/O-Leitungen und 6 analoge Eingänge (die als digitale I/O dienen können).

Es ist zu beachten, dass bei Arduino aus elektrischer Sicht Parameter wie die zulässige Spannung am Eingang und die Belastbarkeit der Ausgänge wichtig sind.

Die zulässige Eingangsspannung sollte 5 V bzw. 3,3 V (für mit 3,3 V betriebene Platinen) nicht überschreiten. Wenn Sie ein Signal mit einer Spannung von mehr als 5 V (3,3 V für Arduino Pro Mini) verarbeiten müssen, sollten Sie verwenden.

Die Belastbarkeit der Ausgänge beträgt bei Versorgung mit 5 V 40 mA, bei Versorgung mit 3,3 V - 50 mA. Das bedeutet, dass beispielsweise bis zu zwei LEDs an einen Ausgangspin angeschlossen werden können, vorausgesetzt, der Betriebsstrom beträgt jeweils 20 mA.

In Fällen, in denen der Controller ein Element mit hohem Stromverbrauch steuern muss, ist der Einsatz von Zwischenkomponenten (Transistor, Relais, Triac, Treiber) erforderlich.

In diesem Dokument wird erklärt, wie Sie Ihr Arduino-Board an Ihren Computer anschließen und Ihre erste Skizze hochladen.

Erforderliche Hardware – Arduino und USB-Kabel

In diesem Tutorial wird davon ausgegangen, dass Sie ein Arduino Uno, Arduino Duemilanove, Nano oder Diecimila verwenden.

Sie benötigen außerdem ein USB-Kabel (mit USB-A- und USB-B-Steckern): beispielsweise zum Anschluss eines USB-Druckers. (Für Arduino Nano benötigen Sie stattdessen ein A-zu-Mini-B-Kabel).

Programm - Entwicklungsumgebung für Arduino

Die neueste Version finden Sie auf der Download-Seite.

Nachdem der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei. Stellen Sie sicher, dass Ihre Ordnerstruktur intakt ist. Öffnen Sie den Ordner, indem Sie darauf doppelklicken. Es sollte mehrere Dateien und Unterverzeichnisse enthalten.

Schließen Sie die Platine an

Arduino Uno, Mega, Duemilanove und Arduino Nano werden automatisch über jede USB-Verbindung zu Ihrem Computer oder einer anderen Stromquelle mit Strom versorgt. Wenn Sie ein Arduino Diecimila verwenden, stellen Sie sicher, dass das Board für die Stromversorgung über eine USB-Verbindung konfiguriert ist. Die Stromquelle wird über einen kleinen Kunststoff-Jumper ausgewählt, der auf zwei der drei Pins zwischen USB- und Stromanschluss gesteckt wird. Stellen Sie sicher, dass es an den beiden Stiften installiert ist, die dem USB-Anschluss am nächsten liegen.

Verbinden Sie das Arduino-Board über ein USB-Kabel mit Ihrem Computer. Die grüne Power-LED mit der Bezeichnung PWR sollte aufleuchten.

Treiber installieren

Treiber für Windows7, Vista oder XP installieren:

  • Schließen Sie Ihr Board an und warten Sie, bis Windows mit der Treiberinstallation beginnt. Nach einiger Zeit wird der Prozess trotz aller Versuche vergeblich enden.
  • Klicken Sie auf die Schaltfläche START und öffnen Sie die Systemsteuerung.
  • Gehen Sie in der Systemsteuerung zur Registerkarte System und Sicherheit. Wählen Sie dann System. Wenn das Systemfenster geöffnet wird, wählen Sie Geräte-Manager.
  • Achten Sie auf die Ports (COM und LPT). Sie sehen einen offenen Port namens „Arduino UNO (COMxx)“.
  • Klicken Sie mit der rechten Maustaste auf den Namen „Arduino UNO (COMxx)“ und wählen Sie die Option „Treibersoftware aktualisieren“.
  • Klicken Sie auf „Auf meinem Computer nach Treibersoftware suchen“.
  • Zum Abschluss suchen und wählen Sie die Uno-Treiberdatei „ArduinoUNO.inf“ aus, die sich im Treiberordner der Arduino-Software befindet (nicht im Unterverzeichnis „FTDI USB Drivers“).
  • An diesem Punkt schließt Windows die Installation des Treibers ab.
Wählen Sie Ihren seriellen Port aus

Wählen Sie unter Extras | das serielle Arduino-Gerät aus Serielle Schnittstelle. Dies wird wahrscheinlich COM3 oder höher sein (COM1 und COM2 sind normalerweise für Hardware-COM-Ports reserviert). Um den richtigen Port zu finden, können Sie das Arduino-Board trennen und das Menü erneut öffnen; Das verschwundene Element ist der Arduino-Board-Anschluss. Schließen Sie die Platine wieder an und wählen Sie den seriellen Port aus.

Laden Sie die Skizze auf Arduino hoch

Klicken Sie nun einfach im Programm – der Entwicklungsumgebung – auf die Schaltfläche „Hochladen“. Warten Sie einige Sekunden – Sie werden sehen, wie die RX- und TX-LEDs auf der Platine blinken. Wenn der Upload erfolgreich ist, erscheint in der Statusleiste die Meldung „Hochladen abgeschlossen“.
(Hinweis: Wenn Sie ein Arduino Mini, NG oder ein anderes Board haben, müssen Sie den Reset-Befehl physisch mit der Taste erteilen, unmittelbar bevor Sie die Schaltfläche „Hochladen“ drücken.)

Einige Sekunden nach Abschluss des Startvorgangs beginnt die LED an Pin 13 (L) auf der Platine orange zu blinken. Herzlichen Glückwunsch, wenn ja! Sie haben ein gebrauchsfertiges Arduino erhalten!

Es erfreut sich immer größerer Beliebtheit und Arduino ergreift bereits die Initiative und fügt diese Wi-Fi-Module der Liste der unterstützten Boards hinzu.
Aber wie verbindet man es mit Arduino? Kann man überhaupt irgendwie auf ein Arduino verzichten? Genau darum geht es heute in diesem Artikel.

Mit Blick auf die Zukunft werde ich sagen, dass es einen zweiten, praktischeren Artikel zum Thema Firmware und Programmierung des ESP8266-Moduls in der Arduino IDE-Entwicklungsumgebung geben wird. Aber das Wichtigste zuerst.

Dieses Video dupliziert vollständig das im Artikel präsentierte Material.



Derzeit gibt es viele Varianten dieses Moduls, hier sind einige davon:

Und hier ist die Pinbelegung von ESP01, ESP03, ESP12:


* Dieses Bild kann im ausgeschalteten Zustand in guter Qualität angezeigt werden. Website pighixxx.com.

Persönlich gefällt mir die ESP07-Version am besten. Zumindest dafür, dass es einen Metallschirm (er schützt die Mikroschaltungen vor äußeren Störungen und sorgt so für einen stabileren Betrieb), eine eigene Keramikantenne und einen Anschluss für eine externe Antenne. Es stellt sich heraus, indem man beispielsweise eine externe Antenne daran anschließt Biquadrat, dann kann man eine gute Reichweite erzielen. Darüber hinaus gibt es eine ganze Reihe von Ein-/Ausgabe-Ports, die sogenannten GPIO (General Purpose Input Output Ports), ähnlich den Arduino-Pins.

Kehren wir zu unseren Schaf-Wi-Fi-Modulen und Arduino zurück. In diesem Artikel werde ich mir den Anschluss eines ESP8266 (Modell ESP01) an einen Arduino Nano V3 ansehen.

Diese Informationen sind jedoch für die meisten ESP8266-Module und auch für verschiedene Arduino-Boards relevant, beispielsweise für das beliebteste Arduino UNO.

Ein paar Worte zu den ESP01-Beinen:

Vcc Und GND(im Bild oben sind das 8 und 1) – Futter pro Bein Vcc kann eingereicht werden, nach der Dokumentation zu urteilen, von 3 bis 3,6 V, A GND- Masse (minus Leistung). Ich habe gesehen, wie eine Person dieses Modul an zwei AA-Batterien angeschlossen hat (die Versorgungsspannung betrug in diesem Fall etwa 2,7 V) und das Modul war betriebsbereit. Dennoch haben die Entwickler den Spannungsbereich angegeben, in dem das Modul garantiert funktionieren sollte. Wenn Sie ein anderes verwenden, liegt Ihr Problem vor.

Aufmerksamkeit! Dieses Modul basiert auf einer 3,3-V-Logik, während Arduino hauptsächlich auf einer 5-V-Logik basiert. 5 V können den ESP8266 leicht beschädigen, daher muss er separat vom Arduino mit Strom versorgt werden.

- Mein Arduino hat ein Bein, auf dem 3,3 V steht, warum nicht?

Du wirst wahrscheinlich denken. Tatsache ist, dass das ESP8266 ein ziemlich stromhungriges Modul ist und in Spitzenströmen Ströme von bis zu 200 mA verbrauchen kann, und fast kein Arduino ist standardmäßig in der Lage, einen solchen Strom zu liefern, mit Ausnahme von Arduino Due, in dem Der Strom entlang der 3,3-V-Leitung kann 800 mA erreichen, was ausreichend ist. In anderen Fällen empfehle ich Ihnen, einen zusätzlichen 3,3-V-Stabilisator zu verwenden, zum Beispiel AMS1117 3,3 V. Davon gibt es sowohl in China als auch hier viele.

Bein RST 6 – ist dafür gedacht, dass die „Hardware“ das Modul neu startet. Durch kurzes Anlegen einer niedrigen logischen Ebene wird das Modul neu gestartet. Auch wenn ich das im Video vernachlässigt habe, rate ich dir trotzdem dazu „Drücken“ Sie dieses Bein mit einem 10-kOhm-Widerstand an den Pluspol der Stromversorgung, um eine bessere Stabilität im Betrieb des Moduls zu erreichen, sonst würde ich bei der geringsten Störung neu starten.

Bein CP_PD 4 (oder anders DE) – dient wiederum dazu, das Modul in den Energiesparmodus zu „festverdrahten“, in dem es nur sehr wenig Strom verbraucht. Wieder gut - Es würde nicht schaden, dieses Bein mit einem 10-kOhm-Widerstand auf Plus zu „drücken“. pitalova. Im Video habe ich diesen Zweig dummerweise mit Vcc kurzgeschlossen, weil ich keinen solchen Widerstand zur Hand hatte.

Beine RXD0 7 TXD0 2 - Hardware-UART, der zum Flashen verwendet wird, aber niemand verbietet die Verwendung dieser Ports als GPIO (GPIO3 bzw. GPIO1). Aus irgendeinem Grund ist GPIO3 im Bild nicht markiert, steht aber im Datenblatt:

Übrigens bis zum Bein TXD0 2 ist die „Connect“-LED angeschlossen und sie leuchtet, wenn der Logikpegel an GPIO1 niedrig ist oder wenn das Modul etwas über UART sendet.

GPIO0 5 – kann nicht nur ein I/O-Port sein, sondern das Modul auch in den Programmiermodus versetzen. Dies geschieht, indem dieser Port mit einem niedrigen logischen Pegel verbunden wird („auf GND gedrückt“ wird) und das Modul mit Strom versorgt wird. Im Video mache ich das mit einem normalen Knopf. Vergessen Sie nach dem Flashen nicht, den Jumper zu ziehen/die Taste zu drücken (es ist nicht notwendig, die Taste während des Flashens gedrückt zu halten; beim Einschalten geht das Modul in den Programmiermodus und bleibt dort bis zum Neustart).

GPIO2 3 - Ein-/Ausgabeanschluss.

Und noch ein wichtiger Punkt, jeder GPIO des Wi-Fi-Moduls kann Strom bis zu 6 mA sicher liefern, um es nicht zu verbrennen, stellen Sie sicher, dass Sie Widerstände in Reihe mit den Eingangs-/Ausgangsanschlüssen schalten ... Denken Sie an das Ohmsche Gesetz R = U/I = 3,3 V / 0,006 A = 550 Ohm, d. h. bei 560 Ohm. Oder vernachlässigen Sie es und fragen Sie sich dann, warum es nicht funktioniert.

In ESP01 unterstützen alle GPIOs PWM. Sie können also an unsere vier GPIOs, d . Ja, ja, dieses Modul hat einiges an Bord, und für einfache Projekte wird der Arduino-Geiger nicht benötigt, nur zum Flashen. Und wenn Sie ESP07 verwenden, sind die Ports im Allgemeinen fast die gleichen wie bei Uno, sodass Sie getrost auf ein Arduino verzichten können. Es stimmt, es gibt einen unangenehmen Moment: Der ESP01 hat überhaupt keine analogen Anschlüsse und der ESP07 hat nur einen, den sogenannten ADC. Dies erschwert natürlich die Arbeit mit analogen Sensoren. In diesem Fall hilft ein Arduino-Analog-Multiplexer.

Alles scheint durch die Pinbelegung erklärt zu werden, und hier ist das Diagramm zum Anschluss des ESP8266 an den Arduino Nano:

Sehen Sie den Jumper auf den RST- und GND-Pins des Arduino Nano? Dies ist notwendig, damit der Arduino die Firmware des Moduls nicht beeinträchtigt; im Falle der Verbindung des ESP8266 über Arduino ist dies eine Voraussetzung.

Wenn Sie außerdem eine Verbindung zu Arduino herstellen, muss der RX des Moduls mit dem RX des Arduino verbunden sein, TX - TX. Dies liegt daran, dass der Konverterchip bereits über Kreuz mit den Arduino-Pins verbunden ist.

Wichtig ist auch ein Widerstandsteiler bestehend aus 1-kOhm- und 2-kOhm-Widerständen (kann aus zwei 1-kOhm-Widerständen hergestellt werden, indem man sie in Reihe schaltet) entlang der RX-Leitung des Moduls. Weil Arduino eine 5-V-Logik ist und das Modul 3,3 ist. Es stellt sich heraus, dass es sich hierbei um einen primitiven Pegelkonverter handelt. Es muss vorhanden sein, da die Beine des RXD-TXD-Moduls 5 V nicht vertragen.

Nun, Sie können ganz auf einen Arduino verzichten, indem Sie den ESP8266 über einen normalen USB-UART-Konverter anschließen. Bei der Verbindung mit Arduino verwenden wir tatsächlich einen Standard-USB- und UART-Schnittstellenkonverter und umgehen so das Gehirn. Warum also extra Geld ausgeben, wenn man auch ganz auf einen Arduino verzichten kann? Nur in diesem Fall verbinden wir den RXD des Moduls mit dem TXD des Konverters, TXD - RXD.

Wenn Sie zu faul sind, sich mit Anschlüssen herumzuschlagen, mit Widerständen und Stabilisatoren herumzuspielen, gibt es fertige NodeMcu-Lösungen:

Hier ist alles viel einfacher: Kabel an den Computer anschließen, Treiber und Programm installieren, nur nicht vergessen, den Jumper/Taster auf GPIO0 zu verwenden, um das Modul in den Firmware-Modus zu schalten.

Nun ja, das ist wohl alles mit der Theorie, der Artikel ist ziemlich lang geworden, und den praktischen Teil, also Firmware und Programmierung des Moduls, werde ich etwas später veröffentlichen.



 

Es könnte nützlich sein zu lesen: