Gubernatiō tabulæ SBC-OLED-IV2 per RaspberryPi Pico sine  modulō SSD1306.py

Haec pāgina mōnstrat quōmodo textum in tabulā SBC-OLED-I2V ostendātur sine modulō SSD1306.py. Quod permittit intellegere quōmodo displayum in gradū inferiorī gubernētur

Administratiō monitoriī duōbus scrīptīs in MicroPython scrīptīs opus habet :

  • ostendumTextum.py : hoc est scrīptum prīncipāle
  • font8x8.py : modulus est ad ostendendōs characterēs commūnēs atque specialēs

 

Dēscriptiō scrīptī ostendumTextum.py

Cum RaspberryPi Pico et prōtocollō I2C ūtimur, dēbēmus modulōs idōneōs importāre


  from machine import Pin, I2C
  from font8x8 import font8x8

# Initium I2C


i2c = I2C(0, scl=Pin(1), sda=Pin(0), freq=400000)
oled_addr = 0x3C  # Inscriptio interna OLED

i2c = I2C(0, ....     significat quod ūtimur bus 0
0x3C est īnscrptiō interna modulī OLED

# Creatiō mēmoriae tampondī (bufferī) ad retinendum displayum (1024 octetōrum)


buffer = bytearray(1024)

# Fūnctiō ad mittendum mandātum ad monitorium


def oled_cmd(cmd):
    i2c.writeto(oled_addr, b'\x00' + bytes([cmd]))

b'\x00' indicat mandātum ā nōbis trānsmittendum esse

# Fūnctiō ad trānsferenda dāta ad tabulam OLED in mōle


def oled_data(data):
    i2c.writeto(oled_addr, b'\x40' + data)  # Missiō collēctīva

b'\x00' indicat data ā nōbis trānsmitenda esse

# Initiun (initializātiō) ostentiōnis


def init_oled():
    cmds = [
        0xAE,  # Ostentātiōnem exstinguere
        0xD5, 0x80,  # Mandātum 0xD5 sequēns 0x80 dīvīsōrem hōrologiī ostenti SSD1306 cōnfīcit.
        0xA8, 0x3F,  # Multiplexor (LXIV lineæ)
        0xD3, 0x00,  # Discrepantia verticālis
        0x40,  # Début de ligne
        0x8D, 0x14,  # Activer la charge de pompe
        0x20, 0x00,  # Mode d'adresse horizontale
        0xA1,  # Inverser horizontalement
        0xC8,  # Inverser verticalement
        0xDA, 0x12,  # Configuration des broches
        0x81, 0xCF,  # Contraste
        0xD9, 0xF1,  # Précharge
        0xDB, 0x40,  # Configuration du VCOM
        0xA4,  # Affichage normal
        0xA6,  # Pas d'inversion
        0xAF   # Ostentātiōnem illūmināre
    ]
    for cmd in cmds:
        oled_cmd(cmd)