ssd1306 --- Trình điều khiển màn hình OLED¶
Mô-đun này cung cấp trình điều khiển cho màn hình OLED sử dụng chip SSD1306. Hai giao thức truyền dữ liệu được hỗ trợ: I2C (SSD1306_I2C) và SPI (SSD1306_SPI). Cả hai đều kế thừa API vẽ từ SSD1306, lớp này bọc một framebuf.FrameBuffer1.
Ví dụ:
from machine import I2C
import ssd1306
i2c = I2C(2)
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
oled.fill(0)
oled.text("Hello", 0, 0)
oled.show()
Các lớp¶
- class ssd1306.SSD1306(width: int, height: int, external_vcc: bool)¶
Lớp cơ sở cho màn hình OLED SSD1306. Các lớp con phải khởi tạo
self.framebufvà cung cấp các phương thứcwrite_cmd,write_data,write_framebufvàpoweron.Các tham số:
width-- Chiều rộng màn hình tính bằng điểm ảnh.height-- Chiều cao màn hình tính bằng điểm ảnh (phải là bội số của 8).external_vcc--Truenếu sử dụng nguồn VCC ngoài,Falseđể bật bơm điện áp nội.
Thuộc tính thực thể:
width-- Chiều rộng màn hình tính bằng điểm ảnh.height-- Chiều cao màn hình tính bằng điểm ảnh.external_vcc-- Cờ nguồn VCC ngoài.pages-- Số trang cao 8 điểm ảnh (height // 8).
- init_display() None¶
Gửi chuỗi lệnh khởi tạo đến màn hình, xóa bộ đệm khung hình và làm mới. Được gọi tự động bởi
__init__.
- contrast(contrast: int) None¶
Đặt độ tương phản màn hình.
contrast-- Giá trị độ tương phản trong khoảng0--255.
- invert(invert: int) None¶
Đảo ngược màu sắc màn hình.
invert--0để hiển thị bình thường,1để hiển thị đảo ngược. Chỉ bit ít quan trọng nhất được sử dụng.
- fill(col: int) None¶
Tô toàn bộ bộ đệm khung hình bằng một màu duy nhất.
col-- Giá trị màu sắc (0để tắt,1để bật).
- pixel(x: int, y: int, col: int) None¶
Đặt màu sắc cho một điểm ảnh đơn lẻ.
x-- Tọa độ cột.y-- Tọa độ hàng.col-- Giá trị màu sắc (0hoặc1).
- class ssd1306.SSD1306_I2C(width: int, height: int, i2c: machine.I2C, addr: int = 0x3C, external_vcc: bool = False)¶
Trình điều khiển SSD1306 kết nối qua I2C. Kế thừa từ
SSD1306.Các tham số:
width-- Chiều rộng màn hình tính bằng điểm ảnh.height-- Chiều cao màn hình tính bằng điểm ảnh.i2c-- Đối tượngmachine.I2C(hoặc tương thích) đã được khởi tạo.addr-- Địa chỉ thiết bị I2C 7-bit (mặc định0x3C).external_vcc--Trueđể dùng nguồn VCC ngoài,Falseđể dùng bơm điện áp nội.
- class ssd1306.SSD1306_SPI(width: int, height: int, spi: machine.SPI, dc: machine.Pin, res: machine.Pin, cs: machine.Pin, external_vcc: bool = False)¶
Trình điều khiển SSD1306 kết nối qua SPI. Kế thừa từ
SSD1306. Sử dụng tốc độ xung nhịp SPI cố định là 10 MHz.Các tham số:
width-- Chiều rộng màn hình tính bằng điểm ảnh.height-- Chiều cao màn hình tính bằng điểm ảnh.spi-- Đối tượngpyb.SPI(hoặc tương thích).dc-- Chân chọn dữ liệu/lệnh.res-- Chân đặt lại (reset).cs-- Chân chọn chip.external_vcc--Trueđể dùng nguồn VCC ngoài,Falseđể dùng bơm điện áp nội.