Kazalo:

HowTo - Esp -12F mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO preko grafičnega vmesnika Arduino: 4 koraki
HowTo - Esp -12F mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO preko grafičnega vmesnika Arduino: 4 koraki

Video: HowTo - Esp -12F mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO preko grafičnega vmesnika Arduino: 4 koraki

Video: HowTo - Esp -12F mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO preko grafičnega vmesnika Arduino: 4 koraki
Video: 5 Minute project: WiFi deauther with ESP8266 OLED module 2024, Julij
Anonim
HowTo - Esp -12F mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO preko grafičnega vmesnika Arduino
HowTo - Esp -12F mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO preko grafičnega vmesnika Arduino

Zdravo, hier möchte ich Euch zeigen wie Ihr das mit auf der Hauptplatine verbaute OLED Display benutzen/ansteuern könnt. Um es möglichst einfach zu halten, benutze ich die ARDUINO GUI zum schreiben des CODEs in zum hochladen der Firmware.

1. korak: Einstellen / Einrichten Der ARDUINO GUI

Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI
Einstellen / Einrichten Der ARDUINO GUI

Več o tem, da je plošča ESP8266 in ARDUINO GUI verfügbar gemacht werden.

Dazu gehen wir in die Einstellungen (Datei Einstellungen / Bild 1) der GUI und tragen unter

"Zusätzliche Boardverwalter-URL-ji:"

ein (slika 2). Damit bekommen wir den benötigten Zugang zu dem passenden Boardtreiber.

Jetzt können wir den Passenden Boardtreiber installation

(Werkzeuge Board: Boardverwaltung / Bild 3)

  • Dort im Suchfeld "esp8266" eintragen
  • Dann "esp8266 by ESP8266 Community" auswählen und die aktuellste Nameščena različica (slika 4)
  • Die ARDUINO GUI neu starten
  • Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)

2. korak: I2C Schnittstelle Scannen

I2C Schnittstelle Scannen
I2C Schnittstelle Scannen
I2C Schnittstelle Scannen
I2C Schnittstelle Scannen

Če želite, da so kode PIN OLED-zaslona prikazane, skenirane in skenirane na I2C-Schnittstelle. Torej können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.

Skica (Slika 1) v ESP Hochladen, "Seriellen-Monitor" öffnen und auf die Ausgabe warten. Dort könnt Ihr dann sehen, wellings Device wo gefunden wurde. (Bild 2 - DigitalPIN Scan)

Das Ergebnis merken.

V jesenskem jesenu: SDA = D1: SCL = D2 na naslovu 0x3c

3. korak: Demo-Sketch Anpassen Und Auf Den ESP Hochladen

Das ist der Code for das OLED-Display DEMO

Im 5. Abschnitt findet Ihr die Stelle an der der Code ggf. modifiziert werden muss.

Prav tako die Konfiguration für die I2C-Schnittstelle.

Aus diesem Code könnt Ihr euch auch viele Infos über die Benutzung eines OLEDs ableiten.

/** * Licenca MIT (MIT) * * Avtorska pravica (c) 2016 Daniel Eichhorn * * Dovoljenje se brezplačno podeli vsaki osebi, ki pridobi kopijo * te programske opreme in pripadajočih datotek dokumentacije ("programska oprema"), da brez omejitev trguje * s programsko opremo, vključno brez omejitev s pravicami * do uporabe, kopiranja, spreminjanja, združevanja, objave, distribucije, podlicenciranja in/ali prodaje * kopij programske opreme in dovoljuje osebam, ki jim programska oprema je * opremljen, da to stori pod naslednjimi pogoji: * * Zgornje obvestilo o avtorskih pravicah in to obvestilo o dovoljenju bo vključeno v vse * kopije ali znatne dele programske opreme. * * PROGRAMSKA OPREMA JE NAMENJENA "KAKŠNA", BREZ GARANCIJE KAKRŠNEGA, IZRESNEGA ALI * IMPLICIRANEGA, VKLJUČNO, NE OMEJUJUJO SE NA JAMSTVA TRGOVINE, * PRIMERNOSTI ZA POSEBNE NAMENE IN NEINFRING. V nobenem primeru * avtorji ali imetniki avtorskih pravic ne odgovarjajo za kakršne koli zahtevke, škodo ali drugo * odgovornost, ne glede na pogodbeno dejanje, odškodnino ali drugače, ki izvira iz ali zunaj programske opreme ali v povezavi z nami ali drugače POSLOVANJE V * PROGRAMSKI OPREMI. * *

/ Vključi pravilno knjižnico zaslona

// Za povezavo prek I2C z uporabo Wire vključite #include // za I2C Wire #include "SSD1306.h" // vzdevek za `#include" SSD1306Wire.h ""

// Vključi slike po meri

#include "images.h"

// Z uporabo hitro_i2c inicializirajte zaslon OLED

// D3 -> SDA // D5 -> SCL // Zaslon SSD1306 (0x3c, D1, D2); ali zaslon SSD1306 (0x3c, 5, 4); ali zaslon SSD1306 (0x3c, GPIO5, GPIO4);

**************************************************************************************************

An der folgenden Stelle werden dann die PINs for die I2C Schnittstelle configuriert

// Inicializirajte zaslon OLED z uporabo knjižnice Wire

Zaslon SSD1306 (0x3c, D1, D2);

***************************************************************************************************

#define DEMO_DURATION 3000

typedef void (*Demo) (void);

int demoMode = 0;

int števec = 1;

void setup () {

Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("Začni DEMO");

// Inicializacija uporabniškega vmesnika bo sprožila tudi prikaz.

display.init ();

display.flipScreenVertical ();

display.setFont (ArialMT_Plain_10);

}

void drawFontFaceDemo () {

// Pisava Demo1 Serial.println ("Pisava DEMO 1"); // ustvarite več pisav na naslovu https://oleddisplay.squix.ch/ display.setTextAlignment (TEXT_ALIGN_LEFT); display.setFont (ArialMT_Plain_10); display.drawString (0, 0, "ProMoScout"); display.setFont (ArialMT_Plain_16); display.drawString (0, 10, "ProMoScout"); display.setFont (ArialMT_Plain_24); display.drawString (0, 26, "ProMoScout"); }

void drawTextFlowDemo () {

Serial.println ("drawTextFlowDemo"); display.setFont (ArialMT_Plain_10); display.setTextAlignment (TEXT_ALIGN_LEFT); display.drawStringMaxWidth (0, 0, 128, "Roboti so / n Prihodnost in Prihodnost, je zdaj. Ampak ne pozabite na naravo"); }

void drawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // demonstracijski prikaz poravnave besedila.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen

// Koordinate določajo levo izhodišče besedila

display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Poravnano levo (0, 10)");

// Koordinate določajo središče besedila

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Poravnano po sredini (64, 22)");

// Koordinate določajo desni konec besedila

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Poravnano desno (128, 33)"); }

void drawRectDemo () {

Serial.println ("drawRectDemo"); // Nariši slikovno piko na danem položaju za (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Napolnite pravokotnik

display.fillRect (14, 14, 17, 17);

// Vodoravno narišimo črto

display.drawHorizontalLine (0, 40, 20);

// Vodoravno narišimo črto

display.drawVerticalLine (40, 0, 20); }

void drawCircleDemo () {

Serial.println ("drawCircleDemo"); for (int i = 1; i <8; i ++) {display.setColor (BELO); display.drawCircle (32, 32, i*3); if (i % 2 == 0) {display.setColor (ČRNO); } display.fillCircle (96, 32, 32 - i* 3); }}

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int napredek = (števec / 5) % 100; // narišemo prikaz vrstice napredka.drawProgressBar (0, 32, 120, 10, napredek);

// narišemo odstotek kot niz

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, String (napredek) + "%"); }

Der folgende Link im Commentar kann helfen ein Bild oder Logo so umzuwandeln, das es auf dem Display angezeigt werden kann…

void drawImageDemo () {

Serial.println ("drawImageDemo"); // glej https://blog.squix.org/2015/05/esp8266-nodemcu-how… // o tem, kako ustvariti datoteke xbm display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }

Demo demo = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};

int demoLength = (sizeof (demos) / sizeof (Demo)); dolgi časSinceLastModeSwitch = 0;

void loop () {

// počisti prikaz zaslona.clear (); // narišemo trenutne predstavitvene metode demo [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, String (millis ())); // zapisujemo medpomnilnik na zaslon display.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } števec ++; zamuda (10); }

4. korak: Orodja, povezave do Herkunft/Literaturhinweis

Ich möchte mich bei allen bedanken die an dem ein oder anderen Code mit gewirkt haben.

Die Grundlagen für diese Anleitung habe ich gefunden unter:

www.instructables.com/id/ESP8266-I2C-PORT-…

github.com/ThingPulse/esp8266-oled-ssd1306…

Viele Grüße

McUtty

Priporočena: