Përmbajtje:

HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 hapa
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 hapa

Video: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 hapa

Video: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 hapa
Video: DIY Arduino SmartWatch, OLED, Wemos D1 mini, ESP8266 | Mr B Does Electronics 2024, Nëntor
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

Hallo, 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.

Hapi 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

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:"

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

Jetzt können wir den Passenden Boardtreiber installieren

(Bordi Werkzeuge: Boardverwaltung / Bild 3)

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

Hapi 2: I2C Schnittstelle Scannen

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

Për më tepër ju mund të shihni një PIN të pranishme në OLED-Display angeschlossen wurde, scannen wir zuerst die I2C-Schnittstelle. Pra, können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.

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

Das Ergebnis merken.

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

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

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

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

Gjithashtu vdisni Konfigurimin für die I2C-Schnittstelle.

Kodi diesem Könnt Ihr euch auch viele Info über die Benutzung eines OLEDs ableiten.

/** * Licenca MIT (MIT) * * E drejta e autorit (c) 2016 nga Daniel Eichhorn * * Me këtë leje i jepet, pa pagesë, çdo personi që merr një kopje * të këtij softueri dhe skedarëve të dokumentacionit të lidhur ("Softueri"), të merret * në Softuer pa kufizime, përfshirë pa kufizim të drejtat * për të përdorur, kopjuar, modifikuar, bashkuar, publikuar, shpërndarë, nën -licensuar dhe/ose shitur * kopje të Softuerit, dhe për të lejuar personat të cilëve Softueri është * e pajisur për ta bërë këtë, duke iu nënshtruar kushteve të mëposhtme: * * Njoftimi i mësipërm për të drejtën e autorit dhe ky njoftim për leje do të përfshihet në të gjitha * kopjet ose pjesët thelbësore të Softuerit. * * SOFTWARE OFROHET "SI ISSHT", PA GARANCI PYR ÇDO LLOJ, SHPREH OSE * I PLRFSHIR, P INRFSHIR POR P NOTRFSHIRJE POR KUFIZUAR NGA GARANCIT OF E TREGTARIS, * P FRFUNDIMI P AR QURLLIM DHE JO PAKIM. N NO NDONJ NGA NJENT NGJARJE * AUTORST DHE PRONT E TP DREJTAVE T DREJTS S PRGJEGJSIS P ANR ÇDO PADIT, DAMME OSE P *RGJEGJSI T TJERA *, PERFSHIRSE N IN VEPRIM T OF KONTRATS, TORTIT DHE T OTHER TJERT, Q AR NDRYSHOJN, * JASHT OSE N IN LIDHJE ME TASHT VEPRIMET N THE * SOFTUER. * *

/ Përfshini bibliotekën e ekranit të saktë

// Për një lidhje nëpërmjet I2C duke përdorur Wire përfshini #include // për I2C Wire #include "SSD1306.h" // alias për `#include" SSD1306Wire.h ""

// Përfshi imazhe me porosi

#përfshi "imazhet.h"

// Filloni ekranin OLED duke përdorur brzo_i2c

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

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

An der folgenden Stelle u njoh me PIN -et e tyre për konfigurimin e I2C Schnittstelle

// Filloni ekranin OLED duke përdorur bibliotekën Wire

Ekran SSD1306 (0x3c, D1, D2);

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

#përcakto DEMO_DURATION 3000

typedef void (*Demo) (bosh);

int demoMode = 0;

int counter = 1;

void setup () {

Serial.filloj (9600); Serial.println ("OLED_DEMO"); Serial.println ("Fillo DEMO");

// Fillimi i UI do të inicojë gjithashtu ekranin.

display.init ();

display.flipScreenVertical ();

display.setFont (ArialMT_Plain_10);

}

void drawFontFaceDemo () {

// Font Demo1 Serial.println ("Font DEMO 1"); // krijoni më shumë shkronja në 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, "Robotët janë / n E Ardhmja, dhe e Ardhmja, është tani. Por mos harroni Natyrën"); }

void drawTextAlignmentDemo () {

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

// Koordinatat përcaktojnë pikënisjen e majtë të tekstit

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

// Koordinatat përcaktojnë qendrën e tekstit

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Rreshtuar në qendër (64, 22)");

// Koordinatat përcaktojnë fundin e djathtë të tekstit

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Rreshtuar djathtas (128, 33)"); }

void drawRectDemo () {

Serial.println ("drawRectDemo"); // Vizatoni një piksel në pozicionin e dhënë për (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Plotësoni drejtkëndëshin

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

// Vizatoni një vijë horizontale

display.drawHorizontalLine (0, 40, 20);

// Vizatoni një vijë horizontale

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

void drawCircleDemo () {

Serial.println ("drawCircleDemo"); për (int i = 1; i <8; i ++) {display.setColor (E BARDH); display.drawCircle (32, 32, i*3); nëse (i % 2 == 0) {display.setColor (E ZI); } display.fillCircle (96, 32, 32 - i* 3); }}

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int progres = (kundër / 5) % 100; // vizatoni shiritin e progresit display.drawProgressBar (0, 32, 120, 10, progress);

// vizatoni përqindjen si String

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

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

void drawImageDemo () {

Serial.println ("drawImageDemo"); // shih https://blog.squix.org/2015/05/esp8266-nodemcu-how… // se si të krijoni fotografi 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)); kohë të gjatëSinceLastModeSwitch = 0;

lak void () {

// pastroni ekranin e ekranit.qartë (); // vizatoni demon e metodës aktuale demo [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, String (millis ())); // shkruaj tamponin në ekranin e ekranit.display ();

nëse (milis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = milis (); } sportel ++; vonesa (10); }

Hapi 4: Mjetet, Lidhjet Und Herkunft/Literaturhinweis

Ich möchte mich bei allen bedanken die a dem ein oder anderen Kodit 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

Recommended: