Სარჩევი:

HowTo - Esp -12F მინი WiFi მოდული ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 ნაბიჯი
HowTo - Esp -12F მინი WiFi მოდული ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 ნაბიჯი

ვიდეო: HowTo - Esp -12F მინი WiFi მოდული ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 ნაბიჯი

ვიდეო: HowTo - Esp -12F მინი WiFi მოდული ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Via Arduino GUI: 4 ნაბიჯი
ვიდეო: How to get 5V from 18650 Lithium Battery Powering Arduino ESP32 ESP8266 or charge your phone 2024, ივლისი
Anonim
HowTo - Esp -12F მინი WiFi მოდული ESP8266 18650 Nodemcu ბატარეა 0.96”OLED DEMO Via Arduino GUI
HowTo - Esp -12F მინი WiFi მოდული ESP8266 18650 Nodemcu ბატარეა 0.96”OLED DEMO Via Arduino GUI

ჰალო, hier möchte ich Euch zeigen wie Ihr das mit auf der Hauptplatine verbaute OLED ჩვენება benutzen/ansteuern könnt. Um es möglichst einfach zu halten, benutze ich die ARDUINO GUI zum schreiben des CODEs და zum hochladen der Firmware.

ნაბიჯი 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-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
  • დან "esp8266 by ESP8266 Community" auswählen und die aktuellste ვერსია installieren (Bild 4)
  • Die ARDUINO GUI neu starten
  • Danach das passende Board auswählen (z. B.: WeMos D1 R2 & mini)

ნაბიჯი 2: I2C Schnittstelle Scannen

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

Om zu sehen a welche PINs das OLED-Display angeschlossen wurde, scannen wir zuerst die I2C-Schnittstelle. So können wir auch sehen ob noch weitere I2C-Parts angeschlossen sind.

Den Sketch (Bild 1) auf den ESP Hochladen, den "Seriellen-Monitor" öffnen und auf die Ausgabe warten. თქვენ უნდა დაათვალიეროთ ეს მოწყობილობა, რომელიც მუშაობს მოწყობილობის გაფართოების მიზნით. (Bild 2 - ციფრული PIN სკანირება)

დას ერგენის შეირყა.

დიეზის შემოდგომაზე: SDA = D1: SCL = D2 bei Adresse 0x3c

ნაბიჯი 3: დემო-ესკიზი 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. მოდიფიცირებული werden muss.

ასევე die Konfiguration für die I2C-Schnittstelle.

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

/** * MIT ლიცენზია (MIT) * * საავტორო უფლება (გ) 2016 დანიელ ეიხჰორნის * * ამით ნებართვა მიენიჭება უფასოდ, ნებისმიერ პირს, რომელიც მიიღებს ამ პროგრამული უზრუნველყოფის ასლს * და მასთან დაკავშირებული დოკუმენტაციის ფაილებს ("პროგრამული უზრუნველყოფა"), გაუმკლავდეთ * პროგრამულ უზრუნველყოფას შეზღუდვის გარეშე, მათ შორის შეუზღუდავი უფლებებით * პროგრამული უზრუნველყოფის ასლების გამოყენების, კოპირების, მოდიფიკაციის, შერწყმის, გამოქვეყნების, გავრცელების, ქველიცენზიისა და/ან გაყიდვის შესახებ და ნებადართული პირებისთვის, ვისთვისაც პროგრამული უზრუნველყოფა არის * უზრუნველყოფილი ამისათვის, შემდეგი პირობების დაცვით: * * ზემოაღნიშნული საავტორო უფლებების ცნობა და ეს ნებართვის ცნობა უნდა იყოს შეტანილი პროგრამის ყველა * ასლში ან მნიშვნელოვან ნაწილში. * * პროგრამული უზრუნველყოფა უზრუნველყოფილია "როგორც არის", ყოველგვარი სახის, გამოხატული ან * გარანტირების გარეშე, მათ შორის, მაგრამ შეზღუდული არ არის საქონლის გარანტიები, * ვარგისიანობა კონკრეტული მიზნისთვის და არა არავითარ შემთხვევაში არ უნდა იყოს * ავტორები ან საავტორო უფლებების მფლობელები პასუხისმგებელი ნებისმიერი პრეტენზიის, დაზიანების ან სხვა * პასუხისმგებლობისათვის, მიუხედავად იმისა, რომ კონტრაქტის, დებულების ან სხვაგვარად მოქმედებისას, წარმოიშვება, საქმეები პროგრამულ უზრუნველყოფაში *. * *

/ ჩართეთ სწორი ჩვენების ბიბლიოთეკა

// I2C– ით კავშირისთვის მავთულის გამოყენებით შეიყვანეთ #ჩართეთ // I2C მავთულისთვის #შეიტანეთ "SSD1306.h" // მეტსახელი " #მოიცავს" SSD1306Wire.h ""

// ჩართეთ პერსონალური სურათები

#მოიცავს "images.h"

// OLED ეკრანის ინიციალიზაცია brzo_i2c გამოყენებით

// D3 -> SDA // D5 -> SCL // SSD1306 ჩვენება (0x3c, D1, D2); ან SSD1306 ჩვენება (0x3c, 5, 4); ან SSD1306 ჩვენება (0x3c, GPIO5, GPIO4);

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

Stelle– ს მიანიჭეს PIN– ები I2C Schnittstelle– ის კონფიგურაციისთვის

// OLED ეკრანის ინიციალიზაცია მავთულის ბიბლიოთეკის გამოყენებით

SSD1306 ჩვენება (0x3c, D1, D2);

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

#განსაზღვრეთ DEMO_DURATION 3000

typedef სიცარიელე (*დემო) (ბათილი);

int demoMode = 0;

int counter = 1;

void setup () {

სერიული.დაწყება (9600); Serial.println ("OLED_DEMO"); Serial.println ("დაიწყე დემო");

// ინტერფეისის ინიციალიზაცია ინიციალებს ჩვენებასაც.

display.init ();

display.flipScreenVertically ();

display.setFont (ArialMT_Plain_10);

}

void drawFontFaceDemo () {

// შრიფტის დემო 1 Serial.println ("შრიფტის დემო 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"); }

void drawTextFlowDemo () {

Serial.println ("drawTextFlowDemo"); display.setFont (ArialMT_Plain_10); display.setTextAlignment (TEXT_ALIGN_LEFT); display.drawStringMaxWidth (0, 0, 128, "რობოტები არიან / n მომავალი და მომავალი, არის. მაგრამ არ დაივიწყოთ ბუნება"); }

void drawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // ტექსტის გასწორების დემო ჩვენება. 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)"); }

void 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); }

void drawCircleDemo () {

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

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int პროგრესი = (მრიცხველი / 5) % 100; // დახაზეთ პროგრესის ბარი display.drawProgressBar (0, 32, 120, 10, პროგრესი);

// პროცენტის დახაზვა სიმების სახით

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, სიმებიანი (პროგრესი) + "%"); }

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"); // იხილეთ 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 (დემო) / sizeof (დემო)); long timeSinceLastModeSwitch = 0;

ბათილი მარყუჟი () {

// ეკრანის ჩვენების გასუფთავება. clear (); // დახაზეთ მიმდინარე დემო მეთოდი demos [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, სიმებიანი (მილი ())); // ჩაწერეთ ბუფერი ჩვენების ჩვენებაზე. ჩვენება ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = მილი (); } მრიცხველი ++; დაგვიანება (10); }

ნაბიჯი 4: ინსტრუმენტები, ბმულები და სხვა ლიტერატურა

Ich möchte mich bei allen bedanken die dem 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…

ვილე გრეე

მაკუტი

გირჩევთ: