ssd1306 — OLED-drivrutin¶
Denna modul tillhandahåller en drivrutin för SSD1306-baserade OLED-skärmar. Två transportvarianter stöds: I2C (SSD1306_I2C) och SPI (SSD1306_SPI). Båda ärver rit-API:et från SSD1306, som omsluter en framebuf.FrameBuffer1.
Exempel:
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()
Klasser¶
- class ssd1306.SSD1306(width: int, height: int, external_vcc: bool)¶
Basklass för SSD1306 OLED-skärmar. Underklasser måste initiera
self.framebufoch tillhandahålla metodernawrite_cmd,write_data,write_framebufochpoweron.Argument:
width– Skärmbredd i pixlar.height– Skärmhöjd i pixlar (måste vara en multipel av 8).external_vcc–Trueom en extern VCC-källa används,Falseför att aktivera den interna laddningspumpen.
Instansattribut:
width– Skärmbredd i pixlar.height– Skärmhöjd i pixlar.external_vcc– Flagga för extern VCC.pages– Antal 8 pixlar höga sidor (height // 8).
- init_display() None¶
Skicka initieringskommandosekvensen till skärmen, töm bildbufferten och uppdatera. Anropas automatiskt av
__init__.
- contrast(contrast: int) None¶
Ställ in skärmens kontrast.
contrast– Kontrastvärde i intervallet0–255.
- invert(invert: int) None¶
Invertera skärmens färger.
invert–0för normal utmatning,1för inverterad utmatning. Endast den minst signifikanta biten används.
- fill(col: int) None¶
Fyll hela bildbufferten med en enda färg.
col– Färgvärde (0för av,1för på).
- pixel(x: int, y: int, col: int) None¶
Ställ in färgen på en enskild pixel.
x– Kolumnkoordinat.y– Radkoordinat.col– Färgvärde (0eller1).
- class ssd1306.SSD1306_I2C(width: int, height: int, i2c: machine.I2C, addr: int = 0x3C, external_vcc: bool = False)¶
I2C-ansluten SSD1306-drivrutin. Ärver från
SSD1306.Argument:
width– Skärmbredd i pixlar.height– Skärmhöjd i pixlar.i2c– Ett initieratmachine.I2C-objekt (eller kompatibelt).addr– 7-bitars I2C-enhetsadress (standard0x3C).external_vcc–Trueför extern VCC,Falseför att använda den interna laddningspumpen.
- 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-ansluten SSD1306-drivrutin. Ärver från
SSD1306. Använder en fast SPI-klockfrekvens på 10 MHz.Argument:
width– Skärmbredd i pixlar.height– Skärmhöjd i pixlar.spi– Ettpyb.SPI-objekt (eller kompatibelt).dc– Data/kommando-väljarstift.res– Återställningsstift.cs– Chip-select-stift.external_vcc–Trueför extern VCC,Falseför att använda den interna laddningspumpen.