ESP8266 – Oled I2C – Micropython

 

from machine import Pin, I2C
import ssd1306
from time import sleep

# 1 3 Busy

GREEN = Pin(0, Pin.OUT)    
GREEN.on()

BLUE_OLED = Pin(2, Pin.OUT)   
BLUE_OLED.on()

def do_connect():
    import network
    wlan = network.WLAN(network.STA_IF)
    wlan.active(True)
    if not wlan.isconnected():
        print('connecting to network...')
        wlan.connect('ssd', 'pass')
        while not wlan.isconnected():
            pass
    print('network config:', wlan.ifconfig())
    
do_connect()

i2c = I2C(-1, scl=Pin(4), sda=Pin(5))

print(i2c.scan())

oled_width = 128
oled_height = 64
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)

oled.text('Hello, World 1!', 0, 0)
oled.text('Hello, World 2!', 0, 10)
oled.text('Hello, World 3!', 0, 20)
        
oled.show()


ESP32 Development Board WiFi & bluetooth CP2102 18650 Battery 0.96 inch OLED

Использование OLED Дисплея.

https://github.com/elfnor/micropython-blog-examples/tree/master/oled

import ssd1306,machine
import lcd_gfx

i2c = machine.I2C(scl=machine.Pin(4), sda=machine.Pin(5))
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
oled.text(‘MicroPython on’, 0, 0)
oled.show()

lcd_gfx.drawCircle(35, 50, 10, oled, 1)
lcd_gfx.drawFillCircle(91, 50, 10, oled, 1)
lcd_gfx.drawLine(40, 20, 63, 5, oled, 1)
lcd_gfx.drawLine(63, 5, 85, 5, oled, 1)
lcd_gfx.drawFillTrie(63, 50, 63, 20, 50, 20, oled, 1)
lcd_gfx.drawTrie(63, 50, 63, 20, 78, 20, oled, 1)
lcd_gfx.drawRect(0, 0, 5, 5, oled, 1)
lcd_gfx.drawFillRect(122, 58, 5, 5, oled, 1)
oled.show()

OLED Display 0.96″ I2C/SPI 128 X 64

oled-dimension

oled-main

Разрешение: 128*64
Угол обзора: > 160 градусов
Ультра-низким энергопотреблением: 0.08 Вт
Рабочее напряжение: 3-5 Вольт
Рабочая температура: от-30 до 70 градусов Цельсия
Размер: 27.0 мм * 27.0 мм * 4.1 мм
I2c/интерфейс
SSD1306

Arduino Library. (backup download:OLED_I2C)

SPI

oled128x64spi

Библиотеки для микроконтроллеров (Arduino, и.т.д.)

u8glib – https://code.google.com/p/u8glib/

Для Arduino

D/C =>11, RST=>13,SDA=>9,SCL=10

U8GLIB_SSD1306_128X64 u8g(10, 9, 12, 11,13);

12=Не подключаем.

VCC = 3.3v !!! ( На этом модуле нет преобразователя 3.3в )

U8GLIB_SSD1306_128X64 u8g(10,9,12,11,13); // Arduino Fio