Inhaltsverzeichnis:

MicroPython-Programm: Zeigen Sie die Größe des Kreises an - Gunook
MicroPython-Programm: Zeigen Sie die Größe des Kreises an - Gunook

Video: MicroPython-Programm: Zeigen Sie die Größe des Kreises an - Gunook

Video: MicroPython-Programm: Zeigen Sie die Größe des Kreises an - Gunook
Video: Micropython Grundlagen 13: Klassen in Micropython (1) 2024, November
Anonim

Dieses Experiment verwendet das MakePython ESP8266-Modul, mit dem wir die MicroPython-Programmierung auf ESP8266 erlernen können. Das Experiment steuerte die Größe des Kreises auf dem Bildschirm durch Drehen des Potentiometers. Dabei lernen wir die Verwendung von ADC, SSD1306 OLED-Display und der uPyCraft IDE kennen.

Schritt 1: Über ADC und I2C

Über ADC und I2C
Über ADC und I2C

ADC: ADC ist ein Analog/Digital-Wandler, der analoge Signale in digitale umwandelt. In der vorderen Kontroll-LED an, PWM im Inneren, kennen wir den Unterschied zwischen digitalem Signal und analogem Signal. Die Signale, die wir im Alltag verwenden, wie Lichtintensität, Schallwellen und Batteriespannungen, sind allesamt analoge Werte. Wenn wir das analoge Signal (Spannung, Lichtintensität, Schallwelle) über den Single-Chip-Mikrocomputer messen und durch ein digitales Signal ausdrücken möchten, benötigen wir einen ADC-Analog-Digital-Signalwandler

I2C-Kommunikation: I2C wird häufig für die Controller-Kommunikation mit Onboard-Komponenten wie Sensoren/Displays verwendet. Die Datenübertragung kann durch nur zwei Signalleitungen bzw. Taktleitung SCL und Signalleitung SDA abgeschlossen werden. Es gibt nur einen Hauptgerät-Master und mehrere Slave-Geräte an der I2C-Linie. Damit im Leerlauf beide Busse auf High-Pegel liegen, müssen SDA und SCL mit dem Pull-Widerstand verbunden werden. Der klassische Wert des Pull-Widerstands beträgt 10K.

Schritt 2: Zubehör

Lieferungen
Lieferungen

Hardware:

  • MakePython ESP8266
  • Potentiometer
  • Brotbrett
  • Sprunglinie
  • USB-Kabel

MakePython ESP8266: Es gibt ein Onboard-OLED-1.3-OLED-Modul auf dem MakePython-Board, mit 128x64 Pixel… Ein Pixel eines monochromen Bildschirms ist eine Leuchtdiode. OLED ist "selbstleuchtend", der Pixel selbst ist die Lichtquelle, daher ist der Kontrast sehr hoch. OLED-Bildschirme verfügen über I2C- und SPI-Kommunikationsprotokolle, die aufgrund unterschiedlicher Protokolle völlig inkompatibel sind. In unserer Lektion ist die OLED so konfiguriert, dass sie mit dem I2C-Protokoll kompatibel ist. Link zum Modulkauf:

Potentiometer: Potentiometer ist ein einstellbarer Widerstand mit drei vorderen Enden und Widerstandswerten, die gemäß einem bestimmten Variationsgesetz eingestellt werden können. Ein Potentiometer besteht normalerweise aus einem Widerstandskörper und einer beweglichen Bürste. Wenn sich die Bürste entlang des Widerstandskörpers bewegt, wird der Widerstandswert oder die Spannung in Bezug auf die Verschiebung am Abtriebsende erhalten.

Software:

uPyCraft-IDE

Es gibt viele Codes und Programmiermethoden mit MicroPython. Für dieses Tutorial verwenden wir uPyCraft IDE, was der einfachste Weg ist, um in MicroPython zu springen.

Schritt 3: Verkabelung

Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung

Dies ist eine sehr einfache Schaltung, die nur sehr wenige Drähte erfordert, nur drei. Verbinden Sie einfach den VCC-Pin des Potentiometers mit 3,3 V von MakePython ESP8266 und den OUT-Pin (Mitte) mit A0 und verbinden Sie den GND miteinander. Das OLED-Display verwendet I2C-Kommunikation und das Board ist verkabelt, sodass Sie sich keine Sorgen machen müssen.

Schritt 4: Installieren von UPyCraft IDE Windows-PC

Installieren von UPyCraft IDE Windows-PC
Installieren von UPyCraft IDE Windows-PC
Installieren von UPyCraft IDE Windows-PC
Installieren von UPyCraft IDE Windows-PC

Klicken Sie auf diesen Link, um uPyCraft IDE für Windows herunterzuladen:

randomnerdtutorials.com/uPyCraftWindows.

Nach ein paar Sekunden sollten Sie eine ähnliche Datei (uPyCraft_VX.exe) in Ihrem Downloads-Ordner sehen

Doppelklicken Sie auf diese Datei. Ein neues Fenster mit der uPyCraft IDE-Software wird geöffnet.

Schritt 5: Herstellen einer Kommunikation mit dem Vorstand

Aufbau einer Kommunikation mit dem Vorstand
Aufbau einer Kommunikation mit dem Vorstand

Nachdem Sie die MicroPython-Firmware installiert haben (die MicroPython-Firmware ist bereits installiert, wenn Sie Makerfabs MakePython ESP8266 erhalten), schließen Sie sie über ein USB-Kabel an Ihren Computer an und folgen Sie den Schritten:

  • Gehen Sie zu Tools > Board und wählen Sie das von Ihnen verwendete Board aus. Wählen Sie den esp8266
  • Gehen Sie zu Extras > Seriell und wählen Sie den COM-Port aus, mit dem Ihr ESP verbunden ist (laden Sie den USB-Treiber herunter unter:

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)

Drücken Sie die Connect-Taste, um eine serielle Kommunikation mit Ihrem Board herzustellen.

Nach erfolgreicher Verbindung mit Ihrem Board wird „>>>“im Shell-Fenster angezeigt.

Schritt 6: Erstellen der Datei Main.py auf Ihrem Board

Erstellen der Datei Main.py auf Ihrem Board
Erstellen der Datei Main.py auf Ihrem Board
Erstellen der Datei Main.py auf Ihrem Board
Erstellen der Datei Main.py auf Ihrem Board
  • Klicken Sie auf die Schaltfläche „Neue Datei“, um eine neue Datei zu erstellen.
  • Klicken Sie auf die Schaltfläche „Datei speichern“, um die Datei auf Ihrem Computer zu speichern.
  • Ein neues Fenster öffnet sich, benennen Sie Ihre Datei main.py und speichern Sie sie auf Ihrem Computer.
  • Danach sollten Sie die boot.py-Datei auf Ihrem Gerät und einen neuen Tab mit der main.py-Datei sehen.
  • Klicken Sie auf die Schaltfläche „Herunterladen und ausführen“, um die Datei auf Ihr ESP-Board hochzuladen.
  • Das Geräteverzeichnis sollte nun die Datei main.py laden. Ihr ESP hat die Datei main.py gespeichert.

Schritt 7: Treiberdatei hinzufügen

Da der OLED-Bildschirm den SSD1306-Treiberchip verwendet, müssen wir den Treiber von SSD1306 herunterladen. Sie können die GitHub-Website besuchen, um die Bibliothek von SSD1306 zu durchsuchen und herunterzuladen, oder klicken, um unsere ssd1306.py-Treiberdatei herunterzuladen.

Speichern Sie nach dem Herunterladen ssd1306.py im Dateiverzeichnis von workSpace. Klicken Sie dann auf die Datei ssd1306.py öffnen und auf Ausführen, und die Bibliotheksdatei kann in das Geräteverzeichnis geladen werden. Zu diesem Zeitpunkt wurde die Bibliotheksdatei von ssd1306.py erfolgreich in MakePython ESP8266 geladen, das mit der Anweisung import ssd1306 aufgerufen werden kann.

*Hinweis: Wenn Sie die uPyCraft-IDE zum ersten Mal öffnen, existiert der WorkSpace-Pfad nicht. Wenn Sie auf klicken, wird das workSpace-Dialogfeld angezeigt. Sie können ein workSpace-Verzeichnis erstellen, um die Dateien des Benutzers zu speichern, indem Sie das Verzeichnis auswählen, das Sie speichern möchten.

Schritt 8: Die Hauptfunktion

Die Hauptfunktion
Die Hauptfunktion
Die Hauptfunktion
Die Hauptfunktion

Grammatikerklärung:

  • i2c: Konfigurieren Sie die SCL- und SDA-Pins
  • oled: OLED-Objekt erstellen
  • adc.read(): ADC-abgetastete Daten lesen
  • circle(): Benutzerdefinierte Funktion zum Zeichnen von Kreisen, die die Funktion sqrt() verwendet, um den Radius des Kreises zu berechnen
  • math.sqrt(r): Gibt die Quadratwurzel der Zahl zurück
  • pixel(x, y, c): Zeichne den Punkt bei (x, y)
  • hline(x, y, w, c): Zeichnen Sie eine horizontale Linie, beginnend bei (x, y), Länge w
  • vline(x, y, w, c): Zeichne eine vertikale Linie beginnend bei (x, y) mit einer Höhe von w
  • oled.fill(n): Leeren Sie den Bildschirm, wenn n=0, und füllen Sie den Bildschirm, wenn n> 0 ist
  • oled.show(): Anzeigefunktion einschalten

Sie können diese Datei entweder direkt hinzufügen oder ihren Inhalt in die neu erstellte Hauptdatei kopieren.

Schritt 9: Die experimentellen Ergebnisse

Die experimentellen Ergebnisse
Die experimentellen Ergebnisse

Drehen Sie das Potentiometer langsam im Uhrzeigersinn, und der Kreis auf dem Bildschirm wird größer und gegen den Uhrzeigersinn kleiner.

Empfohlen: