Giới thiệu Màn hình Oled 0.96in I2C xanh dương
Màn hình Oled 0.96in I2C xanh dươ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 xanh dươ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ữ : xanh dươ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:

Điện trở 20R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Dây bus 4pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
CẢM BIẾN TCRT5000, DÒ LINE TRẮNG ĐEN
Module giảm áp LM2596 ADJ 3A, Module ổn áp DC-DC giảm áp 3A
Module giảm áp ASM1117 3.3V ngang , Mạch giảm áp DC-DC 800mA
Điện trở 560R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Màn hình LCD2004 I2C Xanh lá, Màn hình hiển thị Text
Dây bus 2pin 40cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Jack DC Đực 3.5x1.1mm hàn dây, Đầu nối nguồn thông dụng
Pic12F683, VI ĐIỀU KHIỂN HỌ PIC CỦA MICROCHIP
Hàng rào đực đơn thẳng 1*40P 17mm 2.54mm, Jump header đơn 40 pin
Hàng rào cái vuông đơn thẳng 1*40P 2.54mm, Jump header đơn 40 pin
Động cơ ENCODER JGY-370 12V 23rpm, Động cơ giảm tốc
Dây bus 5pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Module PCF8574 I2C LCD, Mạch chuyển đổi giao tiếp LCD sang I2C
Dây bus 2pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Động cơ ENCODER JGY-370 24V 23rpm, Động cơ giảm tốc
DS18B20 Dây, CẢM BIẾN NHIỆT ĐỘ - 2M
Anten GPS+BD 28dBi 41x47mm dây 3m, Tần số 1555/1580MHz
Điện trở 1R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Động cơ DC Encoder JGB37-520 12V 330rpm, DC giảm tốc
MÁY BƠM CHÌM 5V TRẮNG ĐỨNG, CÔNG SUẤT BƠM LƯU LƯỢNG 1.6L/P
ỐNG NƯỚC MỀM 6MM, ỐNG DÂY CHO MÁY BƠM - 1 MÉT
Dây chuyển mối hàn sang SMA 11mm kim trong 30cm
Bàn phím mềm keypad 1x4, Ma trận phím mềm 



















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