ssd1306 — Pilote OLED¶
Ce module fournit un pilote pour les écrans OLED basés sur le SSD1306. Deux variantes de transport sont prises en charge : I2C (SSD1306_I2C) et SPI (SSD1306_SPI). Toutes deux héritent de l’API de dessin de SSD1306, qui encapsule un framebuf.FrameBuffer1.
Exemple
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()
Classes¶
- class ssd1306.SSD1306(width: int, height: int, external_vcc: bool)¶
Classe de base pour les écrans OLED SSD1306. Les sous-classes doivent initialiser
self.framebufet fournir les méthodeswrite_cmd,write_data,write_framebufetpoweron.Arguments :
width– Largeur de l’écran en pixels.height– Hauteur de l’écran en pixels (doit être un multiple de 8).external_vcc–Truesi une source VCC externe est utilisée,Falsepour activer la pompe de charge interne.
Attributs d’instance :
width– Largeur de l’écran en pixels.height– Hauteur de l’écran en pixels.external_vcc– Indicateur de VCC externe.pages– Nombre de pages de 8 pixels de hauteur (height // 8).
- init_display() None¶
Envoie la séquence de commandes d’initialisation à l’écran, efface le tampon d’image et rafraîchit. Appelée automatiquement par
__init__.
- contrast(contrast: int) None¶
Règle le contraste de l’écran.
contrast– Valeur de contraste comprise entre0et255.
- invert(invert: int) None¶
Inverse les couleurs de l’écran.
invert–0pour une sortie normale,1pour une sortie inversée. Seul le bit de poids faible est utilisé.
- fill(col: int) None¶
Remplit l’intégralité du tampon d’image avec une seule couleur.
col– Valeur de couleur (0pour éteint,1pour allumé).
- pixel(x: int, y: int, col: int) None¶
Règle la couleur d’un seul pixel.
x– Coordonnée de colonne.y– Coordonnée de ligne.col– Valeur de couleur (0ou1).
- class ssd1306.SSD1306_I2C(width: int, height: int, i2c: machine.I2C, addr: int = 0x3C, external_vcc: bool = False)¶
Pilote SSD1306 connecté en I2C. Hérite de
SSD1306.Arguments :
width– Largeur de l’écran en pixels.height– Hauteur de l’écran en pixels.i2c– Un objetmachine.I2C(ou compatible) initialisé.addr– Adresse I2C 7 bits du périphérique (par défaut0x3C).external_vcc–Truepour un VCC externe,Falsepour utiliser la pompe de charge interne.
- class ssd1306.SSD1306_SPI(width: int, height: int, spi: machine.SPI, dc: machine.Pin, res: machine.Pin, cs: machine.Pin, external_vcc: bool = False)¶
Pilote SSD1306 connecté en SPI. Hérite de
SSD1306. Utilise une fréquence d’horloge SPI fixe de 10 MHz.Arguments :
width– Largeur de l’écran en pixels.height– Hauteur de l’écran en pixels.spi– Un objetpyb.SPI(ou compatible).dc– Broche de sélection données/commande.res– Broche de réinitialisation.cs– Broche de sélection de puce.external_vcc–Truepour un VCC externe,Falsepour utiliser la pompe de charge interne.