Eräs 0,91 "OLED -näyttö on pieni, korkean kontrastinäyttö, joka on täydellinen Tekstin, grafiikan ja anturitietojen näyttäminen Arduino -projekteissa. Tämä opas opastaa sinut läpi Johdotus, koodaus ja tekstin ja grafiikan näyttäminen käyttämällä SSD1306-pohjainen OLED-moduuli Arduinon kanssa.
1. Mitä tarvitset
✅ Arduino -lautakunta (UNO, Mega, Nano jne.)
✅ 0,91 "OLED -näyttö (SSD1306, I2C)
✅ Hyppyjohdot
✅ Arduino IDE asennettu
🔹 Huomaa: Tämä opetusohjelma keskittyy I2C -viestintä, joka käyttää vain Kaksi johtoa (SDA & SCL), tekee siitä ihanteellisen yksinkertaisille projekteille.
2.
OLED -näyttötappi | Arduino uno -nasta | Arduino -nanotappi |
---|---|---|
VCC | 5V | 5V |
Hölynpöly | Hölynpöly | Hölynpöly |
SDA | A4 (SDA) | A4 (SDA) |
SCL | A5 (SCL) | A5 (SCL) |
🔹 Arduino -megaanKäyttää SDA (nasta 20) ja SCL (nasta 21).
3. vaadittavien kirjastojen asentaminen
Asenna ennen koodausta Adafruit SSD1306 ja Adafruit gfx Kirjastot:
- Avata Arduino IDE.
- Mennä jhk Luonnos → Sisällytä kirjasto → Hallitse kirjastoja.
- Etsiä jtk Adafruit SSD1306 ja asenna se.
- Etsiä jtk Adafruit gfx ja asenna se.
4. Peruskoodi, joka näyttää tekstiä OLED: ssä
Tämä esimerkki alustaa OLED: n ja näyttää "Hei, Arduino!".
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
// Define OLED screen size
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 32
// Initialize OLED display (I2C address 0x3C)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
Serial.begin(115200);
// Start OLED display
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println("SSD1306 allocation failed");
for (;;);
}
display.clearDisplay(); // Clear buffer
display.setTextSize(1); // Text size
display.setTextColor(SSD1306_WHITE);
display.setCursor(10, 10);
display.println("Hello, Arduino!");
display.display(); // Show text on screen
}
void loop() {
// Nothing here (text is static)
}
🔹 Mitä tämä koodi tekee:
✔ Alustaa SSD1306 -näyttö.
✔ Tulosteet "Hei, Arduino!" näytöllä.
✔ Käyttötarkoitukset I2c -osoite 0x3c (Jotkut moduulit voivat käyttää 0x3d).
5. Grafiikan näyttäminen (rivit, ympyrät, kuvat)
Piirtää muodot, muokata koodia käyttämällä Adafruit GFX -toiminnot.
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
// Draw a rectangle
display.drawRect(10, 10, 50, 20, SSD1306_WHITE);
// Draw a filled circle
display.fillCircle(90, 16, 10, SSD1306_WHITE);
display.display();
}
void loop() {}
🔹 Muut piirustustoiminnot:
✔ display.drawLine(x1, y1, x2, y2, color);
→ piirtää viivan
✔ display.drawCircle(x, y, radius, color);
→ piirtää ympyrän
✔ display.drawRect(x, y, width, height, color);
→ piirtää suorakulmion
6. Vieritys tekstiesimerkki
Tämä esimerkki vierittää tekstiä vaakasuoraan OLED -näytön yli.
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 10);
display.println("Scrolling Text...");
display.display();
// Start scrolling
display.startscrollleft(0x00, 0x0F);
}
void loop() {}
🔹 Vieritystoiminnot:
✔ display.startscrollleft(start, stop);
→ Vieritä tekstiä vasen
✔ display.startscrollright(start, stop);
→ Vieritä tekstiä oikea
✔ display.stopscroll();
→ Lopettaa vierittämisen
7. Vianmääritysvinkit
Ongelma: Näyttö ei näy mitään.
✅ Tarkistaa Johdotus (SDA & SCL kytketty oikein).
✅ Varmistaa OLED I2C -osoite on 0x3c (tai kokeile 0x3d).
✅ Käyttää I2C -skanneri laitteen havaitseminen:
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(115200);
Serial.println("Scanning...");
for (byte address = 8; address < 120; address++) {
Wire.beginTransmission(address);
if (Wire.endTransmission() == 0) {
Serial.print("Found I2C device at 0x");
Serial.println(address, HEX);
}
}
}
void loop() {}
Ongelma: Teksti on liian pieni tai liian suuri.
✅ Säätää display.setTextSize(1);
(Lisää suuremman tekstin).
8. Käytännön sovellukset
✔ Anturitietojen näyttäminen -Näytä reaaliaikaiset lukemat DHT11, BMP280, jne.
✔ Kellonäyttö - Yhdistä DS3231 RTC -moduuli tehdä digitaalinen kello.
✔ Valikkojärjestelmät - Käytä painikkeita navigoidaksesi valikoiden läpi.
✔ Akun jännitteen ilmaisin - Seuraa kannettavien hankkeiden tehotasoja.
9. Johtopäätös
Käyttämällä a 0,91 "OLED Arduinon kanssa on hieno tapa lisätä visuaalinen lähtö projektiisi. Haluatko näyttää teksti-, grafiikka- tai anturitiedot, tämä pieni näyttö tarjoaa korkea kontrasti ja alhainen virrankulutus.