3232
3333from micropython import const
3434from 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
3639
3740__version__ = "0.0.0-auto.0"
3841__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_SSD1306.git"
@@ -63,7 +66,7 @@ class _SSD1306:
6366 """Base class for SSD1306 display driver"""
6467 #pylint: disable-msg=too-many-arguments
6568 #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 ):
6770 self .framebuf = framebuffer
6871 self .fill = self .framebuf .fill
6972 self .pixel = self .framebuf .pixel
@@ -74,6 +77,7 @@ def __init__(self, framebuffer, width, height, external_vcc, reset):
7477 self .vline = self .framebuf .vline
7578 self .hline = self .framebuf .hline
7679 self .fill_rect = self .framebuf .fill_rect
80+ self .rect = self .framebuf .rect
7781 self .width = width
7882 self .height = height
7983 self .external_vcc = external_vcc
@@ -188,7 +192,8 @@ def __init__(self, width, height, i2c, *, addr=0x3c, external_vcc=False, reset=N
188192 self .buffer = bytearray (((height // 8 ) * width ) + 1 )
189193 self .buffer [0 ] = 0x40 # Set first byte of data buffer to Co=0, D/C=1
190194 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 )
192197
193198 def write_cmd (self , cmd ):
194199 """Send a command to the SPI device"""
@@ -226,7 +231,8 @@ def __init__(self, width, height, spi, dc, reset, cs, *,
226231 self .dc_pin = dc
227232 self .buffer = bytearray ((height // 8 ) * width )
228233 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 )
230236
231237 def write_cmd (self , cmd ):
232238 """Send a command to the SPI device"""
0 commit comments