Sadržaj:

HowTo - Esp -12F Mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO putem Arduino GUI: 4 koraka
HowTo - Esp -12F Mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO putem Arduino GUI: 4 koraka

Video: HowTo - Esp -12F Mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO putem Arduino GUI: 4 koraka

Video: HowTo - Esp -12F Mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO putem Arduino GUI: 4 koraka
Video: 5 Minute project: WiFi deauther with ESP8266 OLED module 2024, Juli
Anonim
HowTo - Esp -12F Mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO putem Arduino GUI
HowTo - Esp -12F Mini WiFi modul ESP8266 18650 Nodemcu baterija 0,96”OLED DEMO putem Arduino GUI

Zdravo, hier möchte ich Euch zeigen wie Ihr das mit auf der Hauptplatine verbaute OLED Display benutzen/ansteuern könnt. U ovom slučaju, morate zaustaviti i ispisati ARDUINO GUI sa šiframa kodova i firmvera.

Korak 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

Dodatne informacije o ploči ESP8266 u 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-ovi:"

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" ažurirano i ažurirano Instalirana verzija (Slika 4)
  • UMRI ARDUINO GUI neupočinjen
  • Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)

Korak 2: I2C Schnittstelle Scannen

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

Ako želite da dobijete PIN kod za OLED-ekran, skenirajte i skenirajte I2C-Schnittstelle. Dakle, können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.

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

Das Ergebnis merken.

U jesen: SDA = D1: SCL = D2 ili Adrese 0x3c

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

Ovo je kod za OLED-ekran DEMO

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

Također možete konfigurirati za I2C-Schnittstelle.

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

/** * Licenca MIT -a (MIT) * * Autorska prava (c) 2016. Daniel Eichhorn * * Ovim se dozvola daje besplatno, bilo kojoj osobi koja dobije kopiju * ovog softvera i pripadajućih datoteka dokumentacije ("Softver"), za trgovanje * u Softveru bez ograničenja, uključujući bez ograničenja prava * na korištenje, kopiranje, izmjenu, spajanje, objavljivanje, distribuciju, podlicenciranje i/ili prodaju * kopija Softvera i dopuštanje osoba kojima je Softver je * opremljen da to učini, pod sledećim uslovima: * * Gore navedeno obaveštenje o autorskim pravima i ovo obaveštenje o dozvoli biće uključeni u sve * kopije ili značajne delove Softvera. * * SOFTVER SE DOSTAVLJA "KAKAV JESTE", BEZ BILO KAKVE JAMSTVE, IZRIČITE ILI * IMPLICIRANE, UKLJUČUJUĆI, ALI NE OGRANIČENO NA JAMSTVA TRGOVINE, * ODGOVORNOST ZA POSEBNE NAMJENE I NEINFRING. NI U KOM SLUČAJU * AUTORI ILI NOSITELJI AUTORSKIH PRAVA NE BUDU ODGOVORNI ZA BILO KOJE POTRAŽIVANJE, ŠTETU ILI DRUGU * ODGOVORNOST, BILO U POSTUPKU UGOVORA, POVREDE ILI NA DRUGI POGLED IZ, IZVEZE ILI U VEZI SA SOFTVEROM ILI U VEZI SA NAMA ILI U POVEZIVANJU ILI SA SOFTVEROM POSLOVANJE U * SOFTVERU. * *

/ Uključite ispravnu biblioteku prikaza

// Za vezu putem I2C koristeći Wire uključuje #include // za I2C Wire #include "SSD1306.h" // alias za `#include" SSD1306Wire.h "`

// Uključuje prilagođene slike

#include "images.h"

// Pokretanje OLED ekrana pomoću brzo_i2c

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

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

An der folgenden Stelle werden and PIN code for I2C Schnittstelle configuriert

// Inicijalizacija OLED ekrana pomoću Wire librarya

SSD1306 ekran (0x3c, D1, D2);

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

#define DEMO_DURATION 3000

typedef void (*Demo) (void);

int demoMode = 0;

int brojač = 1;

void setup () {

Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("Pokreni DEMO");

// Pokretanje korisničkog sučelja također će pokrenuti prikaz.

display.init ();

display.flipScreenVertical ();

display.setFont (ArialMT_Plain_10);

}

void drawFontFaceDemo () {

// Font Demo1 Serial.println ("Font DEMO 1"); // kreirajte više fontova na 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 su / n Budućnost i Budućnost su sada. Ali ne zaboravite Prirodu"); }

void drawTextAlignmentDemo () {

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

// Koordinate definiraju lijevu početnu točku teksta

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

// Koordinate definiraju središte teksta

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

// Koordinate definiraju desni kraj teksta

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Desno poravnano (128, 33)"); }

void drawRectDemo () {

Serial.println ("drawRectDemo"); // Nacrtajte piksel na zadanoj poziciji za (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Popunite pravokutnik

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

// Vodoravno nacrtati liniju

display.drawHorizontalLine (0, 40, 20);

// Vodoravno nacrtati liniju

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

void drawCircleDemo () {

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

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int napredak = (brojač / 5) % 100; // nacrtati display trake napretka.drawProgressBar (0, 32, 120, 10, progress);

// nacrtati postotak kao String

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

Der folgende Link im Komentar cann helfen ein Bild or logo Logo so umzuwandeln, das es auf dem Display angezeigt werden kann…

void drawImageDemo () {

Serial.println ("drawImageDemo"); // pogledajte https://blog.squix.org/2015/05/esp8266-nodemcu-how… // o tome kako stvoriti xbm datoteke 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)); longtimeSinceLastModeSwitch = 0;

void loop () {{100} {101}

// briše prikaz na ekranu.clear (); // crtanje demo demo metoda demo [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, String (millis ())); // upisuje bafer na display display.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } counter ++; kašnjenje (10); }

Korak 4: Alati, veze do Herkunft/Literaturhinweis

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

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

Preporučuje se: