Skip to main content

MicroPython Library for SSD1306 OLED Displays with some simple shape drawing functions.

Project description

MicroPython SSD1306

Version License

MicroPython Library for SSD1306 OLED Displays with some simple shape drawing functions.

https://github.com/PerfecXX/MicroPython-SSD1306

Example Usage

Quick Example

# Import Library
from machine import Pin,SoftI2C
from ssd1306 import SSD1306_I2C
from time import sleep,sleep_us

# Pin Setup
screen_width = 128
screen_height = 64
i2c = SoftI2C(scl=Pin(22), sda=Pin(21))
oled = SSD1306_I2C(screen_width, screen_height, i2c)

#---Turn on the oled---
oled.poweron()
oled.contrast(0)

#---Show Text---
oled.text("...Test Begin...",0,0)
oled.text("Contrast LV",20,20)
oled.show()
sleep(1)

#---Show Contrast Level---
for contrast_level in range(0,256,1):
    oled.contrast(contrast_level)
    oled.text("LV:{}".format(contrast_level),50,40,1)
    oled.show()
    oled.text("LV:{}".format(contrast_level),50,40,0)
    sleep_us(1)
sleep(1)

#---Fill Screen (clear screen)---
oled.fill(0)
oled.show()
sleep(1)

#---Invert Screen---
oled.text("Color Inverted!",0,5)
oled.invert(1)
oled.show()
sleep(1)

# Scroll Text (Right->Left)
for x in range(0,128):
    oled.fill(0)
    oled.text("Scroll Text", 128 - x, 10)
    oled.show()
    sleep(0.01)

# Scroll Text (Left->Right)
for x in range(0,128):
    oled.fill(0)
    oled.text("Scroll Text",x, 10)
    oled.show()
    sleep(0.01)

#---Draw line---
oled.fill(0)
oled.text("Line",50,10)
oled.hline(0,30,100,1) # Horizontal Line
oled.vline(64,25,60,1) # Vertival Line
oled.show()
sleep(1)


#---Draw a Triangle---
oled.fill(0)
oled.text("Triangle",25,5)
oled.triangle(30, 20, 60, 60, 90, 20, color=1, fill=False) # Outline
oled.show()
sleep(1)
oled.triangle(30, 20, 60, 60, 90, 20, color=1, fill=True) #Filled
oled.show()
sleep(1)

#---Draw a Rectangle---
oled.fill(0)
oled.text("Rectangle",25,5)
oled.rect(3,15,20,20,1,0) # Outline
oled.show()
oled.rect(3,40,20,20,1,1) # Filled
oled.show()
sleep(1)

#---Draw a Round Rectangle---
oled.fill(0)
oled.text("Round Rectangle",5,5)
oled.round_rect(10, 20, 60, 40, 1, filled=False , radius=10) # Outline
oled.show()
sleep(1)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

micropython-ssd1306-driver-1.0.2.tar.gz (8.9 kB view details)

Uploaded Source

File details

Details for the file micropython-ssd1306-driver-1.0.2.tar.gz.

File metadata

File hashes

Hashes for micropython-ssd1306-driver-1.0.2.tar.gz
Algorithm Hash digest
SHA256 d3c11809537ec91c6fc7d3b1a8d59fe9062c1cd6512bb5bdc0569181ab6408a9
MD5 ee56d48b077ccac88c558a3305483026
BLAKE2b-256 88c5357ba67f6ab776595f3ae838fc6abe35d1c1742fded563c25e9c6ead8b8f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page