INHOUDSOPGAWE:

HowTo - Esp -12F Mini WiFi -module ESP8266 18650 Nodemcu -battery 0,96”OLED DEMO Via Arduino GUI: 4 stappen
HowTo - Esp -12F Mini WiFi -module ESP8266 18650 Nodemcu -battery 0,96”OLED DEMO Via Arduino GUI: 4 stappen

Video: HowTo - Esp -12F Mini WiFi -module ESP8266 18650 Nodemcu -battery 0,96”OLED DEMO Via Arduino GUI: 4 stappen

Video: HowTo - Esp -12F Mini WiFi -module ESP8266 18650 Nodemcu -battery 0,96”OLED DEMO Via Arduino GUI: 4 stappen
Video: Pantalla OLED 0.91" con Nodemcu ESP8266 2024, Julie
Anonim
HowTo - Esp -12F Mini WiFi -module ESP8266 18650 Nodemcu -batterij 0,96”OLED DEMO Via Arduino GUI
HowTo - Esp -12F Mini WiFi -module ESP8266 18650 Nodemcu -batterij 0,96”OLED DEMO Via Arduino GUI

Hallo, hier kan ek een van die belangrikste e -posse van die OLED -skerm gebruik. Ons kan dit eenvoudig vir u inhou, maar u kan ook die ARDUINO GUI vir CODEs en zum hochladen der Firmware gebruik.

Stap 1: 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

As erstes muss das ESP8266 Board in der ARDUINO GUI beskikbaar gemacht werden.

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

"Zusätzliche Boardverwalter-URL's:"

ein (prent 2). Ons kan dit vir u makliker maak om na die passasier te gaan.

Ons kan ook die Passende Boardtreiber installeer

(Werkzeuge Board: Boardverwaltung / Bild 3)

  • Dort im Suchfeld "esp8266" eintragen
  • Dan "esp8266 by ESP8266 Community" uitgawe en die huidige weergawe installeer (foto 4)
  • Die ARDUINO GUI kan nou begin word
  • Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)

Stap 2: I2C Schnittstelle Scannen

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

U kan ook 'n PIN-kode vir OLED-skerms sien om die I2C-snitstelle te sien. So kan ons ook nog 'n I2C-onderdele angeschlossen sind.

Den Sketch (Bild 1) auf den ESP Hochladen, den "Seriellen-Monitor" öffnen and auf die Ausgabe warten. Ons kan dit nie meer doen nie, maar ons kan ook weet watter apparaat u kan vind. (Foto 2 - DigitalPIN Scan)

Das Ergebnis merken.

In diesem Fall: SDA = D1: SCL = D2 bei Adresse 0x3c

Stap 3: Demo-Sketch Anpassen Und Auf Den ESP Hochladen

Dit is die kode vir die OLED-Display DEMO

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

Ook die Konfiguration für die I2C-Schnittstelle.

Ons kan ook hierdie kode vir meer inligting oor die gebruik van OLED's aanskaf.

/** * Die MIT -lisensie (MIT) * * Kopiereg (c) 2016 deur Daniel Eichhorn * * Toestemming word gratis verleen aan enige persoon wat 'n afskrif * van hierdie sagteware en gepaardgaande dokumentasie lêers (die "sagteware" verkry)), om die sagteware * sonder beperking te verhandel, insluitend sonder beperking die regte * om te gebruik, te kopieer, te verander, saam te smelt, te publiseer, te versprei, te onderlisensieer en/of te verkoop * kopieë van die sagteware, en om persone toe te staan aan wie die sagteware is * daarvoor ingerig, onderhewig aan die volgende voorwaardes: * * Bogenoemde kopieregkennisgewing en hierdie toestemmingskennisgewing sal ingesluit word in alle * afskrifte of aansienlike gedeeltes van die sagteware. * * DIE SOFTWARE WORD GESOEK "SOOS IS", SONDER GARANTIE VAN ENIGE Soorte, UITDRUKKIG OF * IMPLICIET, INGESLUIT, MAAR NIE BEPERK TOT DIE GARANTIES VAN VERKOOPBAARHEID, * GESKIKTIGHEID VIR 'N BESONDERE DOEL EN NONNFRINGEMENT. DIE * SKRYWERS OF COPYRIGHT -INHOUERS IS GEEN GEVAL AANSPREEKLIK AAN ENIGE EIS, SKADE OF ANDER * AANSPREEKLIKHEID NIE, OF DIE KONTRAK, SKADELING OF ANDERE STAAN, * BUITE OF IN AANSLUITING MET DIE SOFTWARE OF ANDER HANDELINGE IN DIE * Sagteware. * *

/ Sluit die korrekte vertoonbiblioteek in

// Vir 'n verbinding via I2C met behulp van Wire, sluit #include // in vir I2C Wire #include "SSD1306.h" // alias for `#include" SSD1306Wire.h "`

// Sluit persoonlike beelde in

#sluit "images.h" in

// Initialiseer die OLED -skerm met brzo_i2c

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

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

Daar kan PIN's vir die I2C -snitstelle gekonfigureer word

// Initialiseer die OLED -skerm met behulp van Wire -biblioteek

SSD1306 -skerm (0x3c, D1, D2);

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

#definieer DEMO_DURATION 3000

typedef void (*Demo) (void);

int demoMode = 0;

int teller = 1;

ongeldige opstelling () {

Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("Begin die DEMO");

// Die initialisering van die UI sal ook die skerm begin.

display.init ();

display.flipScreenVertically ();

display.setFont (ArialMT_Plain_10);

}

leegte drawFontFaceDemo () {

// Font Demo1 Serial.println ("Font DEMO 1"); // skep meer lettertipes by 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"); }

leegte drawTextFlowDemo () {

Serial.println ("drawTextFlowDemo"); display.setFont (ArialMT_Plain_10); display.setTextAlignment (TEXT_ALIGN_LEFT); display.drawStringMaxWidth (0, 0, 128, "Robotte is / die toekoms en die toekoms, is nou. Maar moenie die natuur vergeet nie)); }

void drawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // Teksbelyning demo display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen

// Die koördinate definieer die linker beginpunt van die teks

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

// Die koördinate definieer die middelpunt van die teks

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "middellyn (64, 22)");

// Die koördinate definieer die regterkant van die teks

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Regs in lyn (128, 33)"); }

leegte drawRectDemo () {

Serial.println ("drawRectDemo"); // Teken 'n pixel op die gegewe posisie vir (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Vul die reghoek

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

// Trek 'n lyn horisontaal

display.drawHorizontalLine (0, 40, 20);

// Trek 'n lyn horisontaal

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

leegte drawCircleDemo () {

Serial.println ("drawCircleDemo"); vir (int i = 1; i <8; i ++) {display.setColor (WIT); display.drawCircle (32, 32, i*3); as (i % 2 == 0) {display.setColor (SWART); } display.fillCircle (96, 32, 32 - i* 3); }}

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int vordering = (teller / 5) % 100; // teken die vorderingsbalk display.drawProgressBar (0, 32, 120, 10, progress);

// trek die persentasie as string

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

Die volgende link kan 'n opmerking of 'n beeld of 'n logo vir ons gee, maar dit kan ook op die skerm vertoon word …

leegte drawImageDemo () {

Serial.println ("drawImageDemo"); // sien https://blog.squix.org/2015/05/esp8266-nodemcu-how… // oor hoe om xbm-lêers te skep display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }

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

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

leemte -lus () {

// maak die display display.clear () skoon; // teken die huidige demonstrasiemetode demo's [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, String (millis ())); // skryf die buffer na die display display.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } teller ++; vertraging (10); }

Stap 4: Tools, Links Und Herkunft/Literaturhinweis

Ek kan ook 'n algemene beskrywing van 'n ander kode hê.

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

Aanbeveel: