Turinys:

„HowTo“- „Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96“OLED DEMO Via Arduino GUI: 4 žingsniai
„HowTo“- „Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96“OLED DEMO Via Arduino GUI: 4 žingsniai

Video: „HowTo“- „Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96“OLED DEMO Via Arduino GUI: 4 žingsniai

Video: „HowTo“- „Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96“OLED DEMO Via Arduino GUI: 4 žingsniai
Video: How to Use Wemos ESP Wroom 02 D1 Mini WiFi Module ESP8266 + 18650 by Using Blynk 2024, Lapkritis
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

Sveiki, 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 žingsnis: 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 (2 paveikslas). 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)
  • Negalima pradėti ARDUINO GUI
  • Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)

2 žingsnis: „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. Taigi können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.

Sketch (Bild 1) arba ESP Hochladen, „Seriellen-Monitor“, skirtas ir Ausgabe warten. Dort könnt Ihr dann sehen, welches Device wo gefunden wurde. (2 paveikslas - „DigitalPIN Scan“)

Das Ergebnis merken.

Diesem rudenį: SDA = D1: SCL = D2 ir adresas 0x3c

3 žingsnis: demonstracinis eskizas „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.

Taip pat galite sukonfigūruoti I2C-Schnittstelle.

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

/** * MIT licencija (MIT) * * Autorių teisės (c) 2016 pateikė Daniel Eichhorn * * Leidimas nemokamai suteikiamas bet kuriam asmeniui, gaunančiam šios programinės įrangos ir susijusių dokumentų failų (toliau - Programinė įranga) kopiją *) be apribojimų prekiauti * programine įranga, įskaitant be apribojimų teises * naudoti, kopijuoti, keisti, sujungti, publikuoti, platinti, sublicencijuoti ir (arba) parduoti * programinės įrangos kopijas ir leisti asmenims, kuriems programinė įranga yra * įrengtas tam, laikantis šių sąlygų: * * Aukščiau pateiktas pranešimas apie autorių teises ir šis leidimas turi būti įtrauktas į visas * kopijas ar svarbias Programinės įrangos dalis. * * PROGRAMINĖ ĮRANGA PATEIKTA „KOKIA“, BE JOKIŲ RŪŠIŲ, NETIKIŲ ARBA NEMOKAMŲ GARANTIJŲ, ĮSKAIČIANT BET APRIBOTINIO GARANTIJĄ, * AUTORIAI AR AUTORIŲ TEISĖS TURĖTOJAI NIEKADA neatsako už bet kokius reikalavimus, žalą ar kitokią * ATSAKOMYBĘ, VEIKDAMI SUTARTIES, SKYRIUS ARBA KITAIS būdais, kilusius iš *, neprisijungus prie šios programinės įrangos arba PARDUOTUVĖS * PROGRAMINĖ ĮRANGA. * *

/ Įtraukite tinkamą rodymo biblioteką

// Jei norite prisijungti per I2C naudodami laidą, įtraukite #include // I2C Wire #include "SSD1306.h" // slapyvardis "#include" SSD1306Wire.h"

// Įtraukti pasirinktinius vaizdus

#include "images.h"

// Inicijuokite OLED ekraną naudodami brzo_i2c

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

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

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

// Inicijuokite OLED ekraną naudodami laidų biblioteką

SSD1306 ekranas (0x3c, D1, D2);

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

#define DEMO_DURATION 3000

typedef void (*Demo) (negalioja);

int demoMode = 0;

int skaitiklis = 1;

void setup () {

Serial.begin (9600); Serial.println („OLED_DEMO“); Serial.println („Paleisti DEMO“);

// Inicijuojant vartotojo sąsają taip pat bus rodomas ekranas.

display.init ();

display.flipScreenVertically ();

display.setFont („ArialMT_Plain_10“);

}

void drawFontFaceDemo () {

// Šriftas Demo1 Serial.println ("Šriftas DEMO 1"); // sukurti daugiau šriftų adresu 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, "Robotai yra / n ateitis, o ateitis yra dabar. Tačiau nepamirškite gamtos"); }

void drawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // Teksto lygiavimo demonstracinis ekranas.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen

// Koordinatės apibrėžia kairįjį teksto pradžios tašką

display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Lygiuotas kairėn (0, 10)");

// Koordinatės apibrėžia teksto centrą

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, „Sulygiuotas centre (64, 22)“);

// Koordinatės apibrėžia dešinįjį teksto galą

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, „Lygiuota dešinėn (128, 33)“); }

void drawRectDemo () {

Serial.println ("drawRectDemo"); // Nubrėžkite pikselį nurodytoje vietoje (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Užpildykite stačiakampį

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

// Nubrėžkite liniją horizontaliai

display.drawHorizontalLine (0, 40, 20);

// Nubrėžkite liniją horizontaliai

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

void drawCircleDemo () {

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

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int progresas = (skaitiklis / 5) % 100; // nupiešti progreso juostos ekraną.drawProgressBar (0, 32, 120, 10, progresas);

// nupieškite procentą kaip eilutę

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

Nuorodų nuoroda į komentarus, padedanti „Bild oder“ar logotipas, taigi, rodyti angezeig werden kann…

void drawImageDemo () {

Serial.println ("drawImageDemo"); // žr. https://blog.squix.org/2015/05/esp8266-nodemcu-how… // kaip sukurti xbm failus display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }

Demonstracinės demonstracinės versijos = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};

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

void loop () {

// išvalyti ekrano ekraną.clear (); // nupiešti dabartinį demonstracinį metodą demos [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, eilutė (milis ()))); // įrašykite buferį į ekrano ekraną.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = milis (); } skaitiklis ++; vėlavimas (10); }

4 žingsnis: Įrankiai, nuorodos Und 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

Rekomenduojamas: