ssd1306 — OLED Sürücüsü¶
Bu modül, SSD1306 tabanlı OLED ekranlar için bir sürücü sağlar. İki aktarım türü desteklenir: I2C (SSD1306_I2C) ve SPI (SSD1306_SPI). Her ikisi de bir framebuf.FrameBuffer1 nesnesini saran SSD1306 sınıfından çizim API’sini devralır.
Örnek:
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()
Sınıflar¶
- class ssd1306.SSD1306(width: int, height: int, external_vcc: bool)¶
SSD1306 OLED ekranları için temel sınıf. Alt sınıflar
self.framebuföğesini başlatmalı vewrite_cmd,write_data,write_framebufvepoweronmetotlarını sağlamalıdır.Argümanlar:
width– Ekran genişliği (piksel cinsinden).height– Ekran yüksekliği (piksel cinsinden, 8’in katı olmalıdır).external_vcc– Harici bir VCC kaynağı kullanılıyorsaTrue, dahili şarj pompasını etkinleştirmek içinFalse.
Örnek nitelikleri:
width– Ekran genişliği (piksel cinsinden).height– Ekran yüksekliği (piksel cinsinden).external_vcc– Harici VCC bayrağı.pages– 8 piksel yüksekliğindeki sayfaların sayısı (height // 8).
- init_display() None¶
Başlatma komut dizisini ekrana gönderir, çerçeve arabelleğini temizler ve yeniler.
__init__tarafından otomatik olarak çağrılır.
- contrast(contrast: int) None¶
Ekran kontrastını ayarlar.
contrast–0–255aralığında kontrast değeri.
- invert(invert: int) None¶
Ekran renklerini tersine çevirir.
invert– Normal çıktı için0, tersine çevrilmiş çıktı için1. Yalnızca en az anlamlı bit kullanılır.
- fill(col: int) None¶
Tüm çerçeve arabelleğini tek bir renkle doldurur.
col– Renk değeri (kapalı için0, açık için1).
- pixel(x: int, y: int, col: int) None¶
Tek bir pikselin rengini ayarlar.
x– Sütun koordinatı.y– Satır koordinatı.col– Renk değeri (0veya1).
- class ssd1306.SSD1306_I2C(width: int, height: int, i2c: machine.I2C, addr: int = 0x3C, external_vcc: bool = False)¶
I2C ile bağlanan SSD1306 sürücüsü.
SSD1306sınıfından devralır.Argümanlar:
width– Ekran genişliği (piksel cinsinden).height– Ekran yüksekliği (piksel cinsinden).i2c– Başlatılmış birmachine.I2C(veya uyumlu) nesnesi.addr– 7 bitlik I2C aygıt adresi (varsayılan0x3C).external_vcc– Harici VCC içinTrue, dahili şarj pompasını kullanmak içinFalse.
- class ssd1306.SSD1306_SPI(width: int, height: int, spi: machine.SPI, dc: machine.Pin, res: machine.Pin, cs: machine.Pin, external_vcc: bool = False)¶
SPI ile bağlanan SSD1306 sürücüsü.
SSD1306sınıfından devralır. 10 MHz’lik sabit bir SPI saat hızı kullanır.Argümanlar:
width– Ekran genişliği (piksel cinsinden).height– Ekran yüksekliği (piksel cinsinden).spi– Birpyb.SPI(veya uyumlu) nesnesi.dc– Veri/komut seçim pini.res– Sıfırlama pini.cs– Yonga seçim pini.external_vcc– Harici VCC içinTrue, dahili şarj pompasını kullanmak içinFalse.