32
32
33
33
from micropython import const
34
34
from adafruit_bus_device import i2c_device , spi_device
35
- import framebuf
35
+ try :
36
+ import framebuf
37
+ except ImportError :
38
+ import adafruit_framebuf as framebuf
36
39
37
40
__version__ = "0.0.0-auto.0"
38
41
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_SSD1306.git"
@@ -63,7 +66,7 @@ class _SSD1306:
63
66
"""Base class for SSD1306 display driver"""
64
67
#pylint: disable-msg=too-many-arguments
65
68
#pylint: disable-msg=too-many-instance-attributes
66
- def __init__ (self , framebuffer , width , height , external_vcc , reset ):
69
+ def __init__ (self , framebuffer , width , height , * , external_vcc , reset ):
67
70
self .framebuf = framebuffer
68
71
self .fill = self .framebuf .fill
69
72
self .pixel = self .framebuf .pixel
@@ -74,6 +77,7 @@ def __init__(self, framebuffer, width, height, external_vcc, reset):
74
77
self .vline = self .framebuf .vline
75
78
self .hline = self .framebuf .hline
76
79
self .fill_rect = self .framebuf .fill_rect
80
+ self .rect = self .framebuf .rect
77
81
self .width = width
78
82
self .height = height
79
83
self .external_vcc = external_vcc
@@ -188,7 +192,8 @@ def __init__(self, width, height, i2c, *, addr=0x3c, external_vcc=False, reset=N
188
192
self .buffer = bytearray (((height // 8 ) * width ) + 1 )
189
193
self .buffer [0 ] = 0x40 # Set first byte of data buffer to Co=0, D/C=1
190
194
framebuffer = framebuf .FrameBuffer1 (memoryview (self .buffer )[1 :], width , height )
191
- super ().__init__ (framebuffer , width , height , external_vcc , reset )
195
+ super ().__init__ (framebuffer , width , height ,
196
+ external_vcc = external_vcc , reset = reset )
192
197
193
198
def write_cmd (self , cmd ):
194
199
"""Send a command to the SPI device"""
@@ -226,7 +231,8 @@ def __init__(self, width, height, spi, dc, reset, cs, *,
226
231
self .dc_pin = dc
227
232
self .buffer = bytearray ((height // 8 ) * width )
228
233
framebuffer = framebuf .FrameBuffer1 (self .buffer , width , height )
229
- super ().__init__ (framebuffer , width , height , external_vcc , reset )
234
+ super ().__init__ (framebuffer , width , height ,
235
+ external_vcc = external_vcc , reset = reset )
230
236
231
237
def write_cmd (self , cmd ):
232
238
"""Send a command to the SPI device"""
0 commit comments