Talaan ng mga Nilalaman:
- Hakbang 1: Einstellen / Einrichten Der ARDUINO GUI
- Hakbang 2: I2C Schnittstelle Scannen
- Hakbang 3: Ang Demo-Sketch Anpassen Und Auf Den ESP Hochladen
- Hakbang 4: Mga Tool, Mga Link Und Herkunft / Literaturhinweis
Video: HowTo - Esp-12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Sa pamamagitan ng Arduino GUI: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
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.
Hakbang 1: Einstellen / Einrichten Der ARDUINO GUI
Als erstes muss das ESP8266 Board sa 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-URLs:"
ein (Bild 2). 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
- Ang "esp8266 ng Pamayanan ng ESP8266" ay hindi na makakakuha ng isang bersyon ng installieren (Bild 4)
- Mamatay ARDUINO GUI neu starten
- Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)
Hakbang 2: I2C Schnittstelle Scannen
Um zu sehen an welche PINs das OLED-Display angeschlossen wurde, scannen wir zuerst die I2C-Schnittstelle. Kaya't können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.
Ang Den Sketch (Bild 1) ay ang ESP Hochladen, at ang "Seriellen-Monitor" ay hindi na kailangan ng Ausgabe warten. Dort könnt Ihr dann sehen, welches Device wo gefunden wurde. (Bild 2 - DigitalPIN Scan)
Das Ergebnis merken.
Sa diesem Fall: SDA = D1: SCL = D2 bei Adresse 0x3c
Hakbang 3: Ang Demo-Sketch Anpassen Und Auf Den ESP Hochladen
Das ist der Code para sa OLED-Display DEMO
Im 5. Natagpuan ang Ihr die Stelle an der der Code ggf. modifiziert werden muss.
Mamatay din Konfiguration para sa I2C-Schnittstelle.
Aus diesem Code könnt Ihr euch auch viele Infos über die Benutzung eines OLEDs canitenen.
/ ** * Ang MIT Lisensya (MIT) * * Copyright (c) 2016 ni Daniel Eichhorn * * Sa ngayon ay ipinagkaloob ang pahintulot, nang walang bayad, sa sinumang tao na kumukuha ng isang kopya * ng software na ito at mga nauugnay na mga file ng dokumentasyon (ang "Software"), upang makitungo * sa Software nang walang paghihigpit, kasama ang walang limitasyon sa mga karapatang * gamitin, kopyahin, baguhin, pagsamahin, i-publish, ipamahagi, sublicense, at / o ibenta * ang mga kopya ng Software, at upang payagan ang mga tao kanino ang Software ay * inayos upang gawin ito, napapailalim sa mga sumusunod na kundisyon: * * Ang paunawa sa copyright at ang paunawang pahintulot na ito ay dapat isama sa lahat ng * mga kopya o malalaking bahagi ng Software. * * ANG SOFTWARE AY BINIGYAN NG "AS IS", WALANG garantiya ng ANUMANG KALAGANG, EXPRESS O * IMPLIED, KASAMA HINDI LIMITADO SA MGA WARRANTIES OF MERCHANTABILITY, * KASANAYAN PARA SA ISANG KASUNDUAN NA LAYUNIN AT NONINFRINGEMENT. SA ANUMANG KAGANAPAN AY ANG * Mga AUTHOR O KAPANGYARIHAN NG COPYRIGHT AY DAPAT HANGGANG PARA SA ANUMANG CLAIM, DAMAGES O IBA PA * KATANGGAPAN, ANO SA ISANG AKSYON NG KONTRATA, PAGSAKOT O PAGKAKAROON, NANGUNGULING MULA SA, * LABAS O KONEKTO SA SOFTWARE O NG GAMIT O IBA PA Mga Pakikitungo sa * SOFTWARE. * *
/ Isama ang tamang display library
// Para sa isang koneksyon sa pamamagitan ng I2C gamit ang Wire isama ang #include // para sa I2C Wire # isama ang "SSD1306.h" // alias para sa `#include" SSD1306Wire.h "`
// Isama ang mga pasadyang larawan
# isama ang "mga imahe.h"
// Initialize the OLED display using brzo_i2c
// D3 -> SDA // D5 -> SCL // SSD1306 display (0x3c, D1, D2); o display ng SSD1306 (0x3c, 5, 4); o display ng SSD1306 (0x3c, GPIO5, GPIO4);
**************************************************************************************************
Isang der folgenden Stelle werden dann die PINs para sa I2C Schnittstelle konfiguriert
// Initialize the OLED display using Wire library
Ipakita ang SSD1306 (0x3c, D1, D2);
***************************************************************************************************
# tukuyin ang DEMO_DURATION 3000
typedef void (* Demo) (void);
int demoMode = 0;
int counter = 1;
walang bisa ang pag-setup () {
Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("Simulan ang DEMO");
// Initialising the UI will init the display too.
display.init ();
display.flipScreenVertically ();
display.setFont (ArialMT_Plain_10);
}
walang bisa drawFontFaceDemo () {
// Font Demo1 Serial.println ("Font DEMO 1"); // lumikha ng higit pang mga font sa 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"); }
walang bisa drawTextFlowDemo () {
Serial.println ("drawTextFlowDemo"); display.setFont (ArialMT_Plain_10); display.setTextAlignment (TEXT_ALIGN_LEFT); display.drawStringMaxWidth (0, 0, 128, "Ang mga Robots ay / n ang Hinaharap, at ang Hinaharap, ngayon. Ngunit huwag kalimutan ang Kalikasan"); }
void drawTextAlignmentDemo () {
Serial.println ("drawTextAlignmentDemo"); // Display alignment demo display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen
// Ang mga coordinate ay tumutukoy sa kaliwang panimulang punto ng teksto
display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Naka-align sa kaliwa (0, 10)");
// Ang mga coordinate ay tumutukoy sa gitna ng teksto
display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Nakahanay ang center (64, 22)");
// Ang mga coordinate ay tumutukoy sa kanang dulo ng teksto
display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Nakahanay sa kanan (128, 33)"); }
walang bisa drawRectDemo () {
Serial.println ("drawRectDemo"); // Gumuhit ng isang pixel sa ibinigay na posisyon para sa (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);
// Punan ang parihaba
display.fillRect (14, 14, 17, 17);
// Gumuhit ng isang linya nang pahalang
display.drawHorizontalLine (0, 40, 20);
// Gumuhit ng isang linya nang pahalang
display.drawVerticalLine (40, 0, 20); }
walang bisa drawCircleDemo () {
Serial.println ("drawCircleDemo"); para sa (int i = 1; i <8; i ++) {display.setColor (WHITE); display.drawCircle (32, 32, i * 3); kung (i% 2 == 0) {display.setColor (BLACK); } display.fillCircle (96, 32, 32 - i * 3); }}
walang bisa drawProgressBarDemo () {
Serial.println ("drawProgressBarDemo"); int pagsulong = (counter / 5)% 100; // draw the progress bar display.drawProgressBar (0, 32, 120, 10, progress);
// iguhit ang porsyento bilang String
display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, String (pagsulong) + "%"); }
Mag-link sa pamamagitan ng Link sa Kommentar para sa helfen ein Bild oder Logo kaya umzuwandeln, maaari mong ipakita ang Display Network ng…
walang bisa drawImageDemo () {
Serial.println ("drawImageDemo"); // tingnan ang https://blog.squix.org/2015/05/esp8266-nodemcu-how… // sa kung paano lumikha ng mga xbm file display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }
Mga demo na demo = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};
int demoLength = (sizeof (demo) / sizeof (Demo)); mahabang panahonSinceLastModeSwitch = 0;
void loop () {
// limasin ang display display.clear (); // iguhit ang kasalukuyang demo na paraan ng demo [demoMode] ();
display.setTextAlignment (TEXT_ALIGN_RIGHT);
display.drawString (10, 128, String (millis ())); // isulat ang buffer sa display display.display ();
kung (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {
demoMode = (demoMode + 1)% demoLength; timeSinceLastModeSwitch = millis (); } counter ++; antala (10); }
Hakbang 4: Mga Tool, Mga Link Und Herkunft / Literaturhinweis
Ich möchte mich bei allen bedanken die an dem ein oder anderen Code 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
Inirerekumendang:
Paano Mag-Flash o Mag-Program ng ESP8266 SA Firmware sa pamamagitan ng Paggamit ng ESP8266 Flasher at Programmer, IOT Wifi Module: 6 Hakbang
Paano Mag-Flash o Mag-Program ng ESP8266 AT Firmware sa pamamagitan ng Paggamit ng ESP8266 Flasher at Programmer, IOT Wifi Module: Paglalarawan: Ang Modyul na ito ay isang USB adapter / programmer para sa mga module na ESP8266 ng uri ng ESP-01 o ESP-01S. Maginhawang nilagyan ito ng isang 2x4P 2.54mm babaeng header upang mai-plug ang ESP01. Din nito sinisira ang lahat ng mga pin ng ESP-01 sa pamamagitan ng isang 2x4P 2.54mm male h
Neopixel Wifi Control Sa pamamagitan ng NodeMCU: 3 Mga Hakbang
Neopixel Wifi Control Sa pamamagitan ng NodeMCU: Nawala ang mga oras kung nais mong kontrolin ang mga RGB LED na kailangan mong harapin ang isang kalabisan ng mga wire, ang pag-untang muli ng mga ito nang paulit-ulit ay maaaring maging nakakainis. Sa Neopixel, mayroon kang pagpipilian na i-powering ang led na may dalawang wires at isang wire lamang, na kung saan ay si Dat
Kontrolin ang LED Board sa pamamagitan ng Telepono Gamit ang NodeMCU, ESP8266 at MAX7219: 8 Mga Hakbang
Kontrolin ang LED Board sa pamamagitan ng Telepono Gamit ang NodeMCU, ESP8266 at MAX7219: Gusto kong gumamit ng telepono upang makontrol ang LED board bilang isang turn signal. Kaya, ang ESP8266 ay kikilos bilang isang Access Point, microcontroller at isang server din. Ang web server ay magkakaroon ng isang simpleng webpage na may 3 mga pindutan: Lumiko sa Kaliwa, Lumiko KANAN, at Lumiko sa SOS. Ang tex
ESP8266-NODEMCU $ 3 WiFi Modyul # 2 - Pagkontrol ng Mga Wireless na Pin Sa Pamamagitan ng WEB PAGE: 9 Mga Hakbang (na may Mga Larawan)
ESP8266-NODEMCU $ 3 WiFi Module # 2 - Wireless Pins Controlling Through WEB PAGE: Isang bagong mundo ng mga micro computing na ito ang dumating at ang bagay na ito ay ang ESP8266 NODEMCU. Ito ang unang bahagi na nagpapakita kung paano mo mai-install ang kapaligiran ng esp8266 sa iyong arduino IDE sa pamamagitan ng pagsisimula ng video at bilang mga bahagi sa
Blink LED sa pamamagitan ng Paggamit ng ESP32 NodeMCU WiFi & Bluetooth Module Tutorial: 5 Mga Hakbang
Blink LED sa pamamagitan ng Paggamit ng ESP32 NodeMCU WiFi & Tutorial sa Module ng Bluetooth: Ang DeskripsiyoNodeMCU ay isang bukas na mapagkukunan na IoT platform. Ito ay na-program sa pamamagitan ng paggamit ng wikang scripting ng Lua. Ang platform ay batay sa mga eLua open source na proyekto. Gumagamit ang platform ng maraming mga bukas na proyekto ng mapagkukunan, tulad ng lua-cjson, mga spiff. Ang ESP32 NodeMc na ito