HowTo - Esp-12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Qua Arduino GUI: 4 bước
HowTo - Esp-12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Qua Arduino GUI: 4 bước
Anonim
HowTo - Esp-12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Qua Arduino GUI
HowTo - Esp-12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO Qua Arduino GUI

Ê, chào möchte ich Euch zeigen wie Ihr das mit auf der Hauptplatine verbaute OLED Màn hình 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.

Bước 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-URL:"

ein (Bild 2). Damit bekommen wir den benötigten Zugang zu dem quanden Boardtreiber.

Jetzt können wir den Passenden Boardtreiber installieren

(Bảng Werkzeuge: Boardverwaltung / Bild 3)

  • Dort im suchfeld "esp8266" eintragen
  • Dann "esp8266 bởi Cộng đồng ESP8266" auswählen und die aktuellste Phiên bản installieren (Bild 4)
  • Die ARDUINO GUI sau khi bắt đầu
  • Danach das Petrolimex Board auswählen (z. B: WeMos D1 R2 & mini)

Bước 2: I2C Schnittstelle Scannen

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

Um zu sehen an hàn mã PIN das OLED-Display angeschlossen wurde, scannen wir zuerst die I2C-Schnittstelle. Vì vậy, 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. Dort könnt Ihr dann sehen, Welches Thiết bị wo gefunden wurde. (Bild 2 - Quét DigitalPIN)

Das Ergebnis merken.

Trong dieem Fall: SDA = D1: SCL = D2 bei Adresse 0x3c

Bước 3: Demo-Sketch 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.

Đồng thời chết Konfiguration für chết I2C-Schnittstelle.

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

/ ** * Giấy phép MIT (MIT) * * Bản quyền (c) 2016 của Daniel Eichhorn * * Theo đây, quyền được cấp miễn phí cho bất kỳ người nào có được bản sao * của phần mềm này và các tệp tài liệu liên quan ("Phần mềm"), để giao dịch * trong Phần mềm mà không có giới hạn, bao gồm nhưng không giới hạn quyền * sử dụng, sao chép, sửa đổi, hợp nhất, xuất bản, phân phối, cấp phép lại và / hoặc bán * bản sao của Phần mềm và cho phép những người có Phần mềm * được cung cấp để làm như vậy, tuân theo các điều kiện sau: * * Thông báo bản quyền ở trên và thông báo cho phép này sẽ được bao gồm trong tất cả các bản sao * hoặc các phần quan trọng của Phần mềm. * * PHẦN MỀM ĐƯỢC CUNG CẤP "NGUYÊN TRẠNG", KHÔNG BẢO ĐẢM BẤT KỲ HÌNH THỨC NÀO, RÕ RÀNG HOẶC * NGỤ Ý, BAO GỒM NHƯNG KHÔNG GIỚI HẠN ĐẢM BẢO VỀ KHẢ NĂNG LAO ĐỘNG, * PHÙ HỢP VỚI MỤC ĐÍCH CỤ THỂ VÀ KHÔNG HỢP LỆ. TRONG MỌI TRƯỜNG HỢP SẼ KHÔNG CÓ * TÁC GIẢ HOẶC NGƯỜI GIỮ BẢN QUYỀN CHỊU TRÁCH NHIỆM PHÁP LÝ ĐỐI VỚI BẤT KỲ KHIẾU NẠI, THIỆT HẠI HOẶC KHÁC * TRÁCH NHIỆM PHÁP LÝ KHÁC, BẤT KỲ TRONG MỘT HÀNH ĐỘNG HỢP ĐỒNG, KHOẢN NÀO HOẶC KHÁC, PHÁT SINH TỪ, * NGOÀI HOẶC KẾT NỐI VỚI PHẦN MỀM HOẶC SỬ DỤNG HOẶC KHÁC KINH DOANH TRONG PHẦN MỀM *. * *

/ Bao gồm thư viện hiển thị chính xác

// Đối với kết nối qua I2C bằng Wire, hãy bao gồm #include // cho I2C Wire #include "SSD1306.h" // bí danh cho `#include" SSD1306Wire.h "`

// Bao gồm các hình ảnh tùy chỉnh

#include "images.h"

// Khởi tạo màn hình OLED bằng brzo_i2c

// D3 -> SDA // D5 -> SCL // Hiển thị SSD1306 (0x3c, D1, D2); hoặc màn hình SSD1306 (0x3c, 5, 4); hoặc màn hình SSD1306 (0x3c, GPIO5, GPIO4);

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

An der folgenden Stelle werden dann die PINs für die I2C Schnittstelle konfiguriert

// Khởi tạo màn hình OLED bằng thư viện Wire

Màn hình SSD1306 (0x3c, D1, D2);

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

#define DEMO_DURATION 3000

typedef void (* Demo) (void);

int demoMode = 0;

int counter = 1;

void setup () {

Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("Khởi động DEMO");

// Khởi tạo giao diện người dùng cũng sẽ init hiển thị.

display.init ();

display.flipScreenVerently ();

display.setFont (ArialMT_Plain_10);

}

void drawFontFaceDemo () {

// Phông chữ Demo1 Serial.println ("Phông chữ DEMO 1"); // tạo thêm phông chữ tại 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, "Robot là / n Tương lai, và tương lai, là bây giờ. Nhưng đừng quên Bản chất"); }

void drawTextAlignmentDemo () {

Serial.println ("drawTextAlignmentDemo"); // Bản demo căn chỉnh văn bản display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen

// Tọa độ xác định điểm bắt đầu bên trái của văn bản

display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Căn trái (0, 10)");

// Tọa độ xác định tâm của văn bản

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Căn giữa (64, 22)");

// Tọa độ xác định phần cuối bên phải của văn bản

display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Căn phải (128, 33)"); }

void drawRectDemo () {

Serial.println ("drawRectDemo"); // Vẽ một pixel tại vị trí đã cho for (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);

// Tô màu cho hình chữ nhật

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

// Vẽ một đường theo chiều ngang

display.drawHorizontalLine (0, 40, 20);

// Vẽ một đường theo chiều ngang

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 (BLACK); } display.fillCircle (96, 32, 32 - i * 3); }}

void drawProgressBarDemo () {

Serial.println ("drawProgressBarDemo"); int tiến trình = (bộ đếm / 5)% 100; // vẽ thanh tiến trình display.drawProgressBar (0, 32, 120, 10, tiến trình);

// vẽ tỷ lệ phần trăm dưới dạng Chuỗi

display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, String (tiến trình) + "%"); }

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"); // xem https://blog.squix.org/2015/05/esp8266-nodemcu-how… // về cách tạo tệp xbm display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }

Demo trình diễn = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};

int demoLength = (sizeof (demo) / sizeof (Demo)); lâuSinceLastModeSwitch = 0;

void loop () {

// xóa màn hình hiển thị display.clear (); // vẽ phương thức demo hiện tại demo [demoMode] ();

display.setTextAlignment (TEXT_ALIGN_RIGHT);

display.drawString (10, 128, String (millis ())); // ghi bộ đệm vào màn hình display.display ();

if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {

demoMode = (demoMode + 1)% demoLength; timeSinceLastModeSwitch = millis (); } bộ đếm ++; chậm trễ (10); }

Bước 4: Công cụ, Liên kết 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