Giới thiệu Màn hình Oled 0.96in I2C màu trắng
Màn hình Oled 0.96in I2C màu trắng cho khả năng hiển thị đẹp, sang trọng, rõ nét vào ban ngày và khả năng tiết kiệm năng lượng tối đa với mức chi phí phù hợp, màn hình sử dụng giao tiếp I2C cho chất lượng đường truyền ổn định và rất dễ giao tiếp chỉ với 2 chân GPIO.
Màn hình OLED gồm những lớp như tấm nền, Anode, lớp hữu cơ, cathode. Và phát ra ánh sáng theo cách tương tự như đèn LED. Quá trình trên được gọi là phát lân quang điện tử.
Nhược điểm có thể kể tới là tuổi thọ màn này khá thấp, giá thành sản xuất cao và rất dễ hỏng khi gặp nước. Nên dễ hiểu màn hình này chưa được ứng dụng nhiều.
Những ưu điểm có thể kể đến trên màn hình OLED là những lớp hữu cơ nhựa mỏng, nhẹ mềm dẻo hơn những lớp tinh thể trên LED hay LCD nhờ vậy mà có thể ứng dụng OLED để chế tạo màn hình gập cuộn được. Độ sáng của OLED cũng tốt hơn LED và không cần đèn nền như trên LCD nên sử dụng pin ít hơn. Góc nhìn cũng cài thiện hơn những công nghệ tiền nhiệm, khoảng 170 độ.
Các mã màn hình khác: Oled – LCD


Chức năng các chân
- VDD : Cấp nguồn 5V.
- GND : Cấp nguồn 0V.
- SCL : Cấp xung Clock cho chuẩn I2C
- SDA : Cấp xung Data cho chuẩn I2C
Thông số kỹ thuật Màn hình Oled 0.96in I2C màu trắng
- Điện áp hoạt động : 5V
- Dòng điện : 8mA
- Công suất : 40mW
- Chuẩn truyền : I2C
- Góc hiển thị : 160°
- Nhiệt độ hoạt động : -10°C – 60°C
- Số điểm hiển thị : 128×64
- Số chân : 4
- Loại màu chữ : màu trắng
- Loại : Module
- Loại IC : SSD1315
- Kích thước : 24.6mm*27mm
Chương trình Test
Nguyên lý kết nối

Chương trình
Thư viện : Tải tại đây Adafruit-GFX-Library
Thư viện : Tải tại đây Adafruit_SSD1106
Thư viện : Tải tại đây ArduinoRTClibrary
#include <Wire.h>
#include <virtuabotixRTC.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SH1106.h>
// configure clock - virtuabotixRTC clock(SCLK_PIN, I/O_PIN, CE_PIN)
virtuabotixRTC clock(3, 4, 2);
// Configure display
Adafruit_SH1106 display(-1);
int state = 1;
void setup() {
pinMode(5, INPUT_PULLUP);
display.begin(SH1106_SWITCHCAPVCC, 0x3C);
display.setTextColor(WHITE);
drawUI();
display.display();
}
void loop() {
// clock sleep/turn off mode
if (digitalRead(5) == LOW) {
if (state == 0) {
delay(500);
drawUI();
state = 1;
}else{
delay(500);
display.drawRect(4, 7, 120, 50, WHITE);
display.fillRect(5, 8, 118, 48, BLACK);
display.setTextSize(1);
display.setCursor(6, 12);
display.println("Clock will turn");
display.println(" off in a moment.");
display.println("");
display.println(" To turn back on,");
display.println(" press the button.");
display.display();
delay(3000);
display.clearDisplay();
display.display();
state = 0;
}
}
if (state == 1) {
// Update time every second
clock.updateTime();
drawUI();
display.setTextColor(WHITE);
display.setTextSize(3);
display.setCursor(1, 19);
if (clock.hours < 10) {
display.print("0");
}
display.print(clock.hours);
display.print(":");
if (clock.minutes < 10) {
display.print("0");
}
display.print(clock.minutes);
display.setTextSize(2);
display.print(":");
if (clock.seconds < 10) {
display.print("0");
}
display.print(clock.seconds);
display.setTextSize(1);
display.setCursor(26, 48);
if (clock.dayofweek == 1) {
display.print("Monday,");
}
if (clock.dayofweek == 2) {
display.print("Tuesday,");
}
if (clock.dayofweek == 3) {
display.print("Wednesday,");
}
if (clock.dayofweek == 4) {
display.print("Thursday,");
}
if (clock.dayofweek == 5) {
display.print("Friday,");
}
if (clock.dayofweek == 6) {
display.print("Saturday,");
}
if (clock.dayofweek == 7) {
display.print("Sunday,");
}
display.setCursor(26, 56);
if (clock.dayofmonth < 10) {
display.print("0");
}
display.print(clock.dayofmonth);
display.print(".");
if (clock.month < 10) {
display.print("0");
}
display.print(clock.month);
display.print(".");
display.print(clock.year);
display.display();
delay(999);
}
}
void drawUI() {
// draw the GUI
display.clearDisplay();
display.setTextSize(1);
display.setCursor(2, 2);
display.println(" Adam's Clock Sleep");
display.drawLine(0, 11, 128, 11, WHITE);
display.drawLine(94, 0, 94, 10, WHITE);
display.drawLine(26, 44, 102, 44, WHITE);
}
Tham khảo chương trình mẫu và thông tin linh kiện chi tiết tại:

ĐỘNG CƠ SERVO SG90 360 ĐỘ, ĐỘNG CƠ QUAY GÓC 0 - 360 ĐỘ
Module nguồn xung AC-DC 5VDC-2A-10W, Nguồn xung giảm áp
Điện trở 330K 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Hàng rào đực đơn thẳng 1*40P 17mm 2.54mm, Jump header đơn 40 pin
Động cơ rung tròn 1027 3V, Động cơ rung điện thoại
Hàng rào cái lỗ tròn đơn thẳng 1*40P 2.54mm, Jump header đơn 40 pin
Cảm Biến Bụi PM2.5, CẢM BIẾN GP2Y1010AU0F
CẦU DIODE KBL608 DIP, CHỈNH LƯU TOÀN KỲ 6A - 800V
CẦU DIODE KBPC1010 DIP, CHỈNH LƯU TOÀN KỲ 10A - 1000V
TRANSISTOR NPN C1815 DIP, DÃY HOẠT ĐỘNG 50V VÀ 150mA
Dây bus 6pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Dây bus 3pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Dây bus 3pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
ĐỘNG CƠ SERVO SG92R NHỰA, ĐỘNG CƠ GÓC 0 - 180 ĐỘ
Dây bus 2pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Kìm cắt linh kiện 90mm có khóa, Kìm cắt dây điện
Điện trở 6R8 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Hàng rào cái vuông đơn thẳng 1*40P 2.54mm, Jump header đơn 40 pin
CẦU DIODE KBPC5010 DIP, CHỈNH LƯU TOÀN KỲ 50A - 1000V
Module giảm áp LM2596 3led 7 đoạn, Ổn áp DC-DC giảm áp 5A
Màn hình Oled 2.42in I2C Màu trắng, Màn hình Oled 128x64 hiển thị điểm ảnh 

















Đánh giá
Chưa có đánh giá nào.