Arduino के साथ 0.91 "OLED डिस्प्ले का उपयोग कैसे करें

How to Use a 0.91" OLED Display with Arduino

ए 0.91 "OLED प्रदर्शन एक छोटी, उच्च-विपरीत स्क्रीन के लिए एकदम सही है पाठ, ग्राफिक्स और सेंसर डेटा प्रदर्शित करना Arduino परियोजनाओं में। यह गाइड आपके माध्यम से चलेगा वायरिंग, कोडिंग और टेक्स्ट और ग्राफिक्स प्रदर्शित करना का उपयोग SSD1306- आधारित OLED मॉड्यूल Arduino के साथ।


1। आपको क्या चाहिए

अर्डुइनो बोर्ड (UNO, मेगा, नैनो, आदि)
0.91 "OLED डिस्प्ले (SSD1306, I2C)
जम्पर तार
Arduino ide स्थापित

🔹 टिप्पणी: यह ट्यूटोरियल पर केंद्रित है I2C संचार, जो केवल उपयोग करता है दो तार (एसडीए और एससीएल), यह सरल परियोजनाओं के लिए आदर्श है।


2। वायरिंग 0.91 "OLED से Arduino (I2C मोड)

Oled प्रदर्शन पिन Arduino Uno पिन अर्डुइनो नैनो पिन
वीसीसी 5V 5V
Gnd Gnd Gnd
एसएडीए ए 4 (एसडीए) ए 4 (एसडीए)
आयोग ए 5 (एससीएल) ए 5 (एससीएल)

🔹 Arduino मेगा के लिए: उपयोग एसडीए (पिन 20) और एससीएल (पिन 21).


3। आवश्यक पुस्तकालयों को स्थापित करना

कोडिंग से पहले, स्थापित करें Adafruit SSD1306 और Adafruit gfx पुस्तकालय:

  1. खुला अर्डुइनो आइड.
  2. जाओ स्केच → पुस्तकालय शामिल करें → पुस्तकालयों का प्रबंधन करें.
  3. निम्न को खोजें Adafruit SSD1306 और इसे स्थापित करें।
  4. निम्न को खोजें Adafruit gfx और इसे स्थापित करें।

4। OLED पर पाठ प्रदर्शित करने के लिए मूल कोड

यह उदाहरण OLED और प्रदर्शित करता है "हैलो, 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)
}

🔹 यह कोड क्या करता है:
✔ आरंभ करता है SSD1306 प्रदर्शन.
✔ प्रिंटों "हैलो, Arduino!" स्क्रीन पर।
✔ उपयोग I2C पता 0x3c (कुछ मॉड्यूल उपयोग कर सकते हैं 0x3d).


5। ग्राफिक्स प्रदर्शित करना (लाइनें, सर्कल, चित्र)

आकर्षित करने के लिए आकार, कोड का उपयोग करके संशोधित करें Adafruit GFX फ़ंक्शंस.

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() {}

🔹 अन्य ड्राइंग फ़ंक्शन:
display.drawLine(x1, y1, x2, y2, color); → एक लाइन खींचता है
display.drawCircle(x, y, radius, color); → एक सर्कल खींचता है
display.drawRect(x, y, width, height, color); → एक आयत खींचता है


6। स्क्रॉलिंग टेक्स्ट उदाहरण

यह उदाहरण पाठ स्क्रॉल करता है क्षैतिज OLED स्क्रीन के पार।

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() {}

🔹 स्क्रॉलिंग फ़ंक्शन:
display.startscrollleft(start, stop); → स्क्रॉल पाठ बाएं
display.startscrollright(start, stop); → स्क्रॉल पाठ सही
display.stopscroll(); → स्क्रॉल करना बंद कर देता है


7। समस्या निवारण युक्तियाँ

संकट: कुछ भी नहीं दिखा रहा है।
✅ जाँच करना वायरिंग (एसडीए और एससीएल सही ढंग से जुड़ा हुआ है).
✅ सुनिश्चित करें OLED I2C पता 0x3c है (या 0x3d का प्रयास करें).
✅ उपयोग करें I2C स्कैनर डिवाइस का पता लगाने के लिए:

#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() {}

संकट: पाठ बहुत छोटा या बहुत बड़ा है।
✅ समायोजित करना display.setTextSize(1); (बड़े पाठ के लिए वृद्धि)।


8। व्यावहारिक अनुप्रयोग

सेंसर डेटा प्रदर्शित करना -से रियल-टाइम रीडिंग दिखाएं DHT11, BMP280, आदि।
घड़ी प्रदर्शन - के साथ संयुक्त DS3231 RTC मॉड्यूल एक डिजिटल घड़ी बनाने के लिए।
मेनू प्रणालियाँ - मेनू के माध्यम से नेविगेट करने के लिए बटन का उपयोग करें।
बैटरी वोल्टेज संकेतक - पोर्टेबल परियोजनाओं में बिजली के स्तर की निगरानी करें।


9। निष्कर्ष

एक का उपयोग 0.91 "Arduino के साथ OLED जोड़ने का एक शानदार तरीका है दृश्य आउटपुट अपनी परियोजनाओं के लिए। आप प्रदर्शित करना चाहते हैं पाठ, ग्राफिक्स, या सेंसर डेटा, यह छोटा स्क्रीन प्रदान करता है उच्च विपरीत और कम बिजली की खपत.

एक टिप्पणी छोड़ें

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.