Sisukord:
- Samm: Einstellen / Einrichten Der ARDUINO GUI
- 2. samm: I2C Schnittstelle Scannen
- 3. samm: demo-eskiis Anpassen Und Auf Den ESP Hochladen
- 4. samm: tööriistad, lingid Und Herkunft/Literaturhinweis
Video: Kuidas - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0,96”OLED DEMO Arduino GUI kaudu: 4 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Tere, 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.
Samm: 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 Boardverwalteri URL-id:"
ein (Bild 2). Damit bekommen wir den benötigten Zugang zu dem passenden Boardtreiber.
Jetzt können wir den Passenden Boardtreiber installieren
(Werkzeuge'i juhatus: Boardverwaltung / Bild 3)
- Dort im Suchfeld "esp8266" eintragen
- Dann "esp8266 by ESP8266 Community" auswählen und die aktuellste Version installieren (Bild 4)
- ARDUINO GUI on juba käivitatud
- Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)
2. samm: I2C Schnittstelle Scannen
Um zu sehen and welche PINs as das OLED-Display angeschlossen wurde, scanen wir zuerst die I2C-Schnittstelle. Nii können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.
Eskiis (Bild 1) või 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.
In diesem Fall: SDA = D1: SCL = D2 bei Adresse 0x3c
3. samm: demo-eskiis Anpassen Und Auf Den ESP Hochladen
DES ist der Code für das OLED-Display DEMO
Im 5. Abschnitt findet Ihr die Stelle an der der Code ggf. modifiziert werden muss.
Samuti konfigureerige I2C-Schnittstelle.
Aus diesem Code könnt Ihr euch auch viele Infos über die Benutzung eines OLEDs ableiten.
/** * MIT -litsents (MIT) * * Autoriõigus (c) 2016, autor Daniel Eichhorn * * Käesolevaga antakse tasuta luba igale isikule, kes saab selle tarkvara ja sellega seotud dokumentatsioonifailide ("Tarkvara") koopia *), piiranguteta tarkvaraga tegelema, sealhulgas piiranguteta * õigusi * tarkvara tarkvara koopiaid kasutada, kopeerida, muuta, ühendada, avaldada, levitada, all -litsentsida ja/või müüa ning lubada isikutele, kellele tarkvara on * selleks ette nähtud, järgides järgmisi tingimusi: * * Ülaltoodud autoriõiguse teatis ja see loa teatis peavad sisalduma kõikides * tarkvara koopiates või olulistes osades. * * TARKVARA ESITATAKSE "NAGU OLEMAS", ILMA MITMESUGUSE, VÄLJALIKU VÕI * KOHALDATUD GARANTIID, KAASA, PIIRATUD MÜÜGITAVUSE GARANTIIKS, * AUTORID VÕI AUTORIÕIGUSTE OMANIKUD EI VASTUTA MINGI NÕUETE, KAHJUTE VÕI MUU * VASTUTUSE KOHTA, LEPINGU, PIIRDUSE VÕI MUU KOHTA, TULEVAD * TARKVARA TEHNIKAST VÄLJAS või SEOS * TARKVARA PAKKUMINE. * *
/ Kaasa õige kuvakogu
// I2C kaudu ühenduse loomiseks traadi abil lisage #include // I2C Wire jaoks #include "SSD1306.h" // varjunimi "#include" SSD1306Wire.h "jaoks
// Kaasa kohandatud pilte
#include "images.h"
// Vormindage OLED -ekraan brzo_i2c abil
// D3 -> SDA // D5 -> SCL // SSD1306 ekraan (0x3c, D1, D2); või SSD1306 ekraan (0x3c, 5, 4); või SSD1306 ekraan (0x3c, GPIO5, GPIO4);
**************************************************************************************************
An der folgenden Stelle werden dann die PINs für die I2C Schnittstelle Configuration
// Initsialiseeri OLED -ekraan traaditeegi abil
SSD1306 ekraan (0x3c, D1, D2);
***************************************************************************************************
#define DEMO_DURATION 3000
typedef void (*Demo) (tühine);
int demoMode = 0;
int loendur = 1;
tühine seadistus () {
Seriaalne algus (9600); Serial.println ("OLED_DEMO"); Serial.println ("Käivita DEMO");
// UI vormindamine käivitab ka kuva.
display.init ();
display.flipScreenVertically ();
display.setFont (ArialMT_Plain_10);
}
void drawFontFaceDemo () {
// Font Demo1 Serial.println ("Font DEMO 1"); // luua rohkem fonte aadressil 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, "Robotid on / n tulevik ja tulevik on praegu. Kuid ärge unustage loodust"); }
void drawTextAlignmentDemo () {
Serial.println ("drawTextAlignmentDemo"); // Teksti joondamise demo display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen
// Koordinaadid määravad teksti vasaku alguspunkti
display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Vasakule joondatud (0, 10)");
// Koordinaadid määravad teksti keskpunkti
display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Joondatud keskele (64, 22)");
// Koordinaadid määravad teksti parema otsa
display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Paremale joondatud (128, 33)"); }
void drawRectDemo () {
Serial.println ("drawRectDemo"); // Joonista piksel antud asukohas (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);
// Täitke ristkülik
display.fillRect (14, 14, 17, 17);
// Joonista joon horisontaalselt
display.drawHorizontalLine (0, 40, 20);
// Joonista joon horisontaalselt
display.drawVerticalLine (40, 0, 20); }
void drawCircleDemo () {
Serial.println ("drawCircleDemo"); for (int i = 1; i <8; i ++) {display.setColor (VALGE); display.drawCircle (32, 32, i*3); if (i % 2 == 0) {display.setColor (MUST); } display.fillCircle (96, 32, 32 - i* 3); }}
void drawProgressBarDemo () {
Serial.println ("drawProgressBarDemo"); int progress = (loendur / 5) % 100; // joonista edenemisriba display.drawProgressBar (0, 32, 120, 10, progress);
// joonista protsent stringina
display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, String (edenemine) + "%"); }
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"); // vt https://blog.squix.org/2015/05/esp8266-nodemcu-how… // kuidas luua xbm-faile display.drawXbm (34, 0, logo_laius, logo_kõrgus, logo_bits); }
Demode demod = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};
int demoLength = (sizeof (demos) / sizeof (Demo)); long timeSinceLastModeSwitch = 0;
void loop () {
// ekraani kuva tühjendamine.clear (); // joonista praegune demo meetod demos [demoMode] ();
display.setTextAlignment (TEXT_ALIGN_RIGHT);
display.drawString (10, 128, String (millis ()))); // kirjutage puhver kuvari kuvale.display ();
if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {
demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } loendur ++; viivitus (10); }
4. samm: tööriistad, lingid 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
Soovitan:
Juhtimine Blynk -rakenduse kaudu Nodemcu abil Interneti kaudu: 5 sammu
LED -i juhtimine Blynk -rakenduse kaudu Interneti kaudu Nodemcu abil: Tere kõigile, täna näitame teile, kuidas saate LED -i juhtida Interneti kaudu nutitelefoni abil
Klaasist kivist LED -toru (WiFi kaudu juhitav nutitelefonirakenduse kaudu): 6 sammu (koos piltidega)
Klaasist kivist LED-toru (WiFi kaudu juhitav nutitelefonirakenduse kaudu): Tere kaastegijad! Selles juhendatavas näitan teile, kuidas ehitada WiFi-juhitav LED-toru, mis on klaasikividega täidetud, et saada kena difusiooniefekt. Valgusdioodid on individuaalselt adresseeritavad ja seetõttu on mõned head efektid võimalikud
Kuva tekst OLED -i kaudu Interneti kaudu: 9 sammu
Kuva tekst OLED -i kaudu Interneti kaudu: Tere ja tere tulemast! See lühike õpetus õpetab teid Magicblocks -i abil Magicbitil teksti kuvama. Selle eesmärgi saavutamiseks on kaks peamist meetodit; Kasutades süstimisplokki. Kasutades armatuurlauda. Kõigepealt logige sisse oma Magicb'i
Eraldiseisev Arduino 3.3V W / väline 8 MHz kell programmeeritakse Arduino Uno kaudu ICSP / ISP kaudu (jadaseirega!): 4 sammu
Eraldiseisev Arduino 3,3 V W / väline 8 MHz kell programmeeritakse Arduino Uno kaudu ICSP / ISP kaudu (jadaseirega!): Eesmärgid: Ehitada eraldiseisev Arduino, mis töötab 3,3 V toitel 8 MHz välisel kellal. Selle programmeerimine Interneti-teenuse pakkuja (tuntud ka kui ICSP, ahelasisene jadaprogrammeerimine) kaudu Arduino Unost (töötab 5 V juures) Alglaaduri faili redigeerimiseks ja põletamiseks
HRV temperatuur OpenHAB -i kaudu ESP8266 kaudu (seeriakoodi näide!): 3 sammu
HRV temperatuur OpenHAB -i kaudu ESP8266 kaudu (seeriakoodi näide!): HRV - juhtmevaba kuni OpenHAB -i TTL seeriaandmed) võivad olla h