Мазмуну:

HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI: 4 кадам
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI: 4 кадам

Video: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI: 4 кадам

Video: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI: 4 кадам
Video: 5 Minute project: WiFi deauther with ESP8266 OLED module 2024, Июль
Anonim
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI
HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI

Салам, Бул жерде сиз эмне кылсаңыз болот? Ачык айтканда, ARDUINO GUI программасынын коддору жана программалык камсыздоонун программалык камсыздоосу өчүрүлөт.

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.

Gin интерфейсинде (Einstellungen / Билд 1) өчүрүү

"Zusätzliche Boardverwalter-URL'дер:"

ein (Bild 2). Boardtayber'дин каттоосунан баш тарткан жокпуз.

Jetzt können wir den Passenden Boardtreiber installieren

(Werkzeuge Board: Boardverwaltung / Bild 3)

  • Dort im Suchfeld "esp8266" eintragen
  • "ESP8266 Коомчулуктун" esp8266 "версиясы орнотулган эмес (Bild 4)
  • ARDUINO GUI өчпө
  • Башкаруу кеңеши (z. B.: WeMos D1 R2 & mini)

2 -кадам: I2C Schnittstelle Scannen

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

PIN коддору OLED-дисплейде, сканерленгенде I2C-Schnittstelle орнотулган. Ошентип, I2C-Бөлүктөрү жок кылынган жок.

Ден эскиз (Билд 1), ESP Hochladen, "Seriellen-Monitor" программалары, Ausgabe warten. Dort könnt Ihr dann sehen, welches Device wo gefunden wurde. (Bild 2 - DigitalPIN сканери)

Das Ergebnis merken.

Күзүндө: SDA = D1: SCL = D2 bei Adresse 0x3c

3-кадам: Demo-Sketch Anpassen Und Auf Den ESP Hochladen

OLED-Display DEMO үчүн Das ist der Code

Im 5. Abschnitt табуу Ihr die Stelle an der der Code ggf. mifden muss.

I2C-Schnittstelle конфигурациясы да өлөт.

Түзмөктүн коду жок кылынгандыктан, маалымат OLED'лердин эсебинен өчүрүлөт.

/** * The MIT License (MIT) * * Copyright (c) 2016 by Daniel Eichhorn * * Уруксат бул жерде жана бул программалык камсыздоонун жана тиешелүү документтердин файлдарынын ("Программалык камсыздоонун" көчүрмөсүн * алгандардын баарына бекер берилет).), Программаны чектөөсүз иштетүү *, анын ичинде чектөөлөрсүз эле Программаны колдонуу, көчүрүү, өзгөртүү, бириктирүү, басып чыгаруу, жайылтуу, сублицензиялоо жана/же сатуу * жана Программалык камсыздоо болгон адамдарга уруксат берүү. төмөнкү шарттарды сактоо менен * жабдылган: * * Жогорудагы автордук укук эскертүүсү жана бул уруксат эскертүүсү Программанын бардык * көчүрмөлөрүнө же олуттуу бөлүктөрүнө киргизилет. * * ПРОГРАММА "БОЛГОНДО" БЕРИЛЕТ, ЭЧ КАНДАЙ КЕПИЛДИКСИЗ, ЭКСПРЕСС ЖАНА * КОЛДОНУУСУЗ, КИРГИЗИЛГЕНДЕ, САТЫЛУУЛУК КЕПИЛДИКТЕРИ МЕНЕН ЧЕКТЕЛБЕЙТ. ЭЧ КАНДАЙ БОЛСО, * АВТОРЛОРДУН ЖАНА АВТОРДУК ЭЭЛЕРДИН ЭЧ КАНДАЙ ДОО, ЗЫЯН ЖАНА БАШКА * ЖООПКЕРЧИЛИГИ ҮЧҮН ЖООПКЕРЧИЛИК БОЛБОЙТ, КЕЛИШИМДИ, КЫЙНАЛДЫКТЫ ЖАНА БАШКА ТАРТИПТЕН, * СОФТОН ЖАНА БАШКА ЖАБДЫКТА. * ПРОГРАММАСЫНДАГЫ КЕЛИШИМДЕР. * *

/ Туура дисплей китепканасын кошуу

// Wire аркылуу I2C аркылуу туташуу үчүн #include // камтыйт I2C Wire #include "SSD1306.h" // "#include" SSD1306Wire.h "үчүн ылакап ат"

// Ыңгайлаштырылган сүрөттөрдү кошуу

#"images.h" кошуу

// OLED дисплейин brzo_i2c аркылуу баштаңыз

// D3 -> SDA // D5 -> SCL // SSD1306 дисплейи (0x3c, D1, D2); же SSD1306 дисплейи (0x3c, 5, 4); же SSD1306 дисплейи (0x3c, GPIO5, GPIO4);

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

Stelle I2C Schnittstelle конфигурациясынан кийин PIN -коддорду өчүрөт

// Wire китепканасын колдонуу менен OLED дисплейин баштоо

SSD1306 дисплейи (0x3c, D1, D2);

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

#аныктоо DEMO_DURATION 3000

typedef void (*Demo) (жараксыз);

int demoMode = 0;

int counter = 1;

жараксыз орнотуу () {

Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("DEMO баштоо");

// UIди баштоо дисплейди да баштайт.

display.init ();

display.flipScreenVertically ();

display.setFont (ArialMT_Plain_10);

}

жараксыз DrawFontFaceDemo () {

// Font Demo1 Serial.println ("Font DEMO 1"); // 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"); }

жараксыз drawTextFlowDemo () {

Serial.println ("drawTextFlowDemo"); display.setFont (ArialMT_Plain_10); display.setTextAlignment (TEXT_ALIGN_LEFT); display.drawStringMaxWidth (0, 0, 128, "Роботтор / n Келечек жана Келечек азыр, бирок. Жаратылышты унутпаңыз"); }

жараксыз DrawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // Текстти тегиздөө демо display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen

// Координаттар тексттин сол баштапкы чекитин аныктайт

display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Солго тегизделген (0, 10)"));

// Координаттар тексттин борборун аныктайт

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Ортого тегизделген (64, 22)");

// Координаттар тексттин оң жагын аныктайт

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Оңго тегизделген (128, 33)"); }

жараксыз drawRectDemo () {

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

// Тик бурчтукту толтуруңуз

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

// Горизонталдуу сызык чийиңиз

display.drawHorizontalLine (0, 40, 20);

// Горизонталдуу сызык чийиңиз

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

жараксыз DrawCircleDemo () {

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

жараксыз DrawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int progress = (counter / 5) % 100; // прогресс тилкесин чагылдыруу display.drawProgressBar (0, 32, 120, 10, прогресс);

// пайызды String катары тартыңыз

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, String (прогресс) + "%"); }

Төмөнкү шилтеме аркылуу Комментарийлерди жазгыла же жазгыла, ошондо логотипти колдонууга болот, демек, дисплейиңизди ачыңыз …

жараксыз DrawImageDemo () {

Serial.println ("drawImageDemo"); // кара https://blog.squix.org/2015/05/esp8266-nodemcu-how… // xbm файлдарын түзүү боюнча display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }

Демо демо = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};

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

void loop () {

// дисплей дисплейин тазалоо.clear (); // учурдагы демо ыкмасынын демосун тартуу [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, Стринг (миллис ())); // дисплей дисплейине буферди жазуу.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } counter ++; кечигүү (10); }

4 -кадам: Куралдар, Шилтемелер Und Herkunft/Literaturhinweis

Ички Мич Бэй Аллен Беданкен өлөт, демек коддору коду жок кылынат.

Die Grundlagen für diese Aneitung habe ich gefunden unter:

www.instructables.com/id/ESP8266-I2C-PORT-…

github.com/ThingPulse/esp8266-oled-ssd1306…

Viele Grüße

McUtty

Сунушталууда: