Tartalomjegyzék:

HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0,96”OLED DEMO Via Arduino GUI: 4 lépés
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0,96”OLED DEMO Via Arduino GUI: 4 lépés

Videó: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0,96”OLED DEMO Via Arduino GUI: 4 lépés

Videó: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0,96”OLED DEMO Via Arduino GUI: 4 lépés
Videó: DIY Arduino SmartWatch, OLED, Wemos D1 mini, ESP8266 | Mr B Does Electronics 2024, November
Anonim
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI

Halló, 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 und zum hochladen der Firmware.

1. lépés: 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

Als erstes muss das ESP8266 Board in der 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-ek:"

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

Jetzt können wir den Passenden Boardtreiber installieren

(Werkzeuge Board: Boardverwaltung / Bild 3)

  • Dort im Suchfeld "esp8266" eintragen
  • Dann "esp8266 by ESP8266 Community" auswählen und die aktuellste Version installieren (Bild 4)
  • Az ARDUINO GUI neu starten
  • Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)

2. lépés: I2C Schnittstelle Scannen

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

Um zu sehen and welche PINs das OLED-Display angeschlossen wurde, scanen wir zuerst die I2C-Schnittstelle. Tehát können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.

A Sketch (Bild 1) az ESP Hochladen, a "Seriellen-Monitor" funkciója és az Ausgabe warten. Dort könnt Ihr dann sehen, welches Device wo gefunden wurde. (2. kép - DigitalPIN Scan)

Das Ergebnis merken.

Diesem ősszel: SDA = D1: SCL = D2 bei Cím 0x3c

3. lépés: Demo-Sketch Anpassen Und Auf Den ESP Hochladen

Das ist der Code für das OLED-Display DEMO

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

Szintén a Konfiguration für die I2C-Schnittstelle.

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

/** * Az MIT licensz (MIT) * * Szerzői jog (c) 2016, Daniel Eichhorn), hogy korlátozás nélkül foglalkozzon * a Szoftverrel, beleértve korlátozás nélkül a Szoftver másolatainak * használatára, másolására, módosítására, egyesítésére, közzétételére, terjesztésére, allicencére és/vagy eladására vonatkozó * jogait, és engedélyezze azon személyek számára, akiknek a Szoftver * erre van berendezve, a következő feltételek mellett: * * A fenti szerzői jogi közleményt és ezt az engedélyezési nyilatkozatot a Szoftver minden * másolatában vagy jelentős részében meg kell adni. * * A SZOFTVERT „MEGJEGYZÉSBEN” SZOLGÁLTATJUK, NEM MINDEN RENDELKEZÉS, KIFEJEZETT VAGY * KÖVETKEZTETT GARANCIÁK NÉLKÜL, BELÜL VÉGZETT, HOGY NEM KORLÁTOZHATÓ A KERESHETŐSÉGI GARANCIÁK, A * SZERZŐK VAGY SZERZŐI JOGI TULAJDONOSOK SEMMI ESETÉBEN FELELŐSSÉGET NEM VENNEK MINDEN KÖVETELMÉNEK, KÁRRA VAGY MÁS * FELELŐSSÉGRE VONATKOZÓAN, SZERZŐDÉS, TORT vagy VAGY MÁS FELELŐSSÉG SZÁMÁRA VONATKOZÓ FELELŐSSÉGEKHOZ, * A SZOFTVERTŐL VAGY KAPCSOLATBAN AKCIÓK A * SZOFTVERBEN. * *

/ Tartalmazza a megfelelő megjelenítési könyvtárat

// Az I2C -n keresztül a Wire használatával történő kapcsolathoz adja meg a #include // az I2C Wire #include "SSD1306.h" // alias for "#include" SSD1306Wire.h ""

// Egyéni képek beillesztése

#include "images.h"

// Inicializálja az OLED kijelzőt a brzo_i2c használatával

// D3 -> SDA // D5 -> SCL // SSD1306 kijelző (0x3c, D1, D2); vagy SSD1306 kijelző (0x3c, 5, 4); vagy SSD1306 kijelző (0x3c, GPIO5, GPIO4);

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

An der folgenden Stelle werden dann die PIN PIN für die I2C Schnittstelle konfiguriert

// Inicializálja az OLED kijelzőt a Wire könyvtár használatával

SSD1306 kijelző (0x3c, D1, D2);

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

#define DEMO_DURATION 3000

typedef void (*Demo) (void);

int demoMode = 0;

int számláló = 1;

void setup () {

Sorozat.kezdet (9600); Serial.println ("OLED_DEMO"); Serial.println ("Indítsa el a DEMO -t");

// A felhasználói felület inicializálása elindítja a kijelzőt is.

display.init ();

display.flipScreenVertically ();

display.setFont (ArialMT_Plain_10);

}

void drawFontFaceDemo () {

// Betűtípus Demo1 Serial.println ("Betűtípus DEMO 1"); // hozzon létre több betűtípust a https://oleddisplay.squix.ch/ display.setTextAlignment címen (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, "A robotok / n a jövő, és a jövő most van. De ne felejtsük el a természetet"); }

void drawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // Szövegigazítás demo display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen

// A koordináták határozzák meg a szöveg bal kezdőpontját

display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Balra igazítva (0, 10)");

// A koordináták határozzák meg a szöveg közepét

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Középre igazítva (64, 22)");

// A koordináták határozzák meg a szöveg jobb végét

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Jobbra igazítva (128, 33)"); }

void drawRectDemo () {

Serial.println ("drawRectDemo"); // Rajzoljon egy képpontot az adott pozícióban a (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Töltse ki a téglalapot

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

// Rajzoljon egy vonalat vízszintesen

display.drawHorizontalLine (0, 40, 20);

// Rajzoljon egy vonalat vízszintesen

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

void drawCircleDemo () {

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

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int haladás = (számláló / 5) % 100; // rajzolja a folyamatjelző kijelzőt.drawProgressBar (0, 32, 120, 10, haladás);

// húzza a százalékot karakterláncként

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

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

void drawImageDemo () {

Serial.println ("drawImageDemo"); // lásd: https://blog.squix.org/2015/05/esp8266-nodemcu-how… // az xbm fájlok létrehozásáról display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }

Demo demók = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};

int demoLength = (sizeof (demos) / sizeof (Demo)); long timeSinceLastModeSwitch = 0;

void loop () {

// a kijelző kijelzőjének törlése.clear (); // az aktuális demo metódus rajzolása demos [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, String (millis ()))); // írja be a puffert a kijelző kijelzőjére.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } számláló ++; késleltetés (10); }

4. lépés: Eszközök, linkek Und 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

Ajánlott: