An Organic Light Emitting Diode (OLED) is a display technology that uses organic compounds to emit light when an electric current is applied. Unlike traditional LCDs, OLEDs do not require a backlight, allowing for thinner, more energy-efficient displays with superior image quality. Manufactured by Pololu, this OLED module is designed for use in a variety of electronic projects, offering high contrast ratios, vibrant colors, and deep blacks.
The Pololu OLED module is designed for ease of use and compatibility with microcontrollers like Arduino. Below are the key technical details:
Parameter | Value |
---|---|
Display Type | OLED |
Resolution | 128 x 64 pixels |
Interface | I2C or SPI |
Operating Voltage | 3.3V to 5V |
Current Consumption | ~20mA (typical) |
Dimensions | 27mm x 27mm x 4mm |
Viewing Angle | ~160° |
Manufacturer | Pololu |
The Pololu OLED module has a simple pinout for easy integration. Below is the pin configuration:
Pin Number | Pin Name | Description |
---|---|---|
1 | GND | Ground connection |
2 | VCC | Power supply (3.3V or 5V) |
3 | SCL | Serial Clock Line for I2C or SPI Clock |
4 | SDA | Serial Data Line for I2C or SPI Data |
5 | RES | Reset pin (active low) |
6 | DC | Data/Command control pin (used in SPI mode) |
7 | CS | Chip Select (used in SPI mode) |
To use the Pololu OLED module with an Arduino UNO, follow these steps:
Wiring: Connect the OLED module to the Arduino as shown below:
Install Libraries: Install the Adafruit_GFX
and Adafruit_SSD1306
libraries in the Arduino IDE. These libraries provide functions for controlling the OLED.
Upload Code: Use the following example code to display text on the OLED:
#include <Wire.h> // Library for I2C communication
#include <Adafruit_GFX.h> // Graphics library for OLED
#include <Adafruit_SSD1306.h> // OLED driver library
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
// Create an SSD1306 display object connected to I2C (SDA, SCL)
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
// Initialize the display
if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) {
Serial.println(F("SSD1306 allocation failed"));
for (;;); // Loop forever if initialization fails
}
display.clearDisplay(); // Clear the display buffer
display.setTextSize(1); // Set text size to 1 (smallest)
display.setTextColor(SSD1306_WHITE); // Set text color to white
display.setCursor(0, 0); // Set cursor to top-left corner
display.println(F("Hello, OLED!")); // Print text to the buffer
display.display(); // Display the buffer on the screen
}
void loop() {
// Nothing to do here
}
0x3C
. Verify this in the datasheet or by scanning I2C devices.The OLED does not turn on:
The display shows random pixels or is blank:
Text or graphics appear distorted:
SCREEN_WIDTH
and SCREEN_HEIGHT
).By following this documentation, you can successfully integrate and use the Pololu OLED module in your projects.