commit
6e9d056cd9
@ -31,13 +31,8 @@ class Chip(metaclass=abc.ABCMeta):
|
|||||||
return self._width
|
return self._width
|
||||||
|
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""convert RGB background to available color"""
|
"""convert color to avaible one"""
|
||||||
pass
|
|
||||||
|
|
||||||
@abc.abstractmethod
|
|
||||||
def _converted_color(self):
|
|
||||||
"""convert RGB color to available color"""
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@ -90,7 +85,7 @@ class Chip(metaclass=abc.ABCMeta):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
@abc.abstractmethod
|
@abc.abstractmethod
|
||||||
def draw_pixel(self, pos_x, pos_y):
|
def draw_pixel(self, pos_x, pos_y, color=None):
|
||||||
"""draw a pixel at x,y"""
|
"""draw a pixel at x,y"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -21,8 +21,12 @@ def test1():
|
|||||||
lcd = CharLCD(drv.width, drv.height, drv, 0, 0)
|
lcd = CharLCD(drv.width, drv.height, drv, 0, 0)
|
||||||
lcd.init()
|
lcd.init()
|
||||||
|
|
||||||
lcd.write('-!Second blarg!')
|
lcd.write('First Line')
|
||||||
lcd.write("-second line", 0, 1)
|
lcd.write("This text is displayed", 2, 18)
|
||||||
|
lcd.write("via CharLCD package", 10, 20)
|
||||||
|
lcd.write('GfxLCD uses driver', 1, 22)
|
||||||
|
lcd.write('to be compatible with', 9, 24)
|
||||||
|
lcd.write('HD44780', 10, 26)
|
||||||
lcd.flush()
|
lcd.flush()
|
||||||
|
|
||||||
lcd.write('/* ', 19, 0)
|
lcd.write('/* ', 19, 0)
|
||||||
|
28
gfxlcd/demos/nju_hd44780.py
Normal file
28
gfxlcd/demos/nju_hd44780.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
import sys
|
||||||
|
sys.path.append("../../")
|
||||||
|
import RPi.GPIO # NOQA pylint: disable=I0011,F0401
|
||||||
|
from charlcd.buffered import CharLCD # NOQA
|
||||||
|
from gfxlcd.driver.nju6450.gpio import GPIO
|
||||||
|
from gfxlcd.driver.nju6450.nju6450 import NJU6450
|
||||||
|
from gfxlcd.driver.hd44780 import HD44780
|
||||||
|
RPi.GPIO.setmode(RPi.GPIO.BCM)
|
||||||
|
|
||||||
|
|
||||||
|
def test1():
|
||||||
|
"""demo """
|
||||||
|
lcd = NJU6450(122, 32, GPIO())
|
||||||
|
|
||||||
|
drv = HD44780(lcd, True)
|
||||||
|
print(drv.width, drv.height)
|
||||||
|
lcd = CharLCD(drv.width, drv.height, drv, 0, 0)
|
||||||
|
lcd.init()
|
||||||
|
lcd.write('First')
|
||||||
|
|
||||||
|
lcd.write('HD44780', 6, 3)
|
||||||
|
lcd.flush()
|
||||||
|
lcd.write('/* ', 12, 0)
|
||||||
|
lcd.write('|*|', 12, 1)
|
||||||
|
lcd.write(' */', 12, 2)
|
||||||
|
lcd.flush()
|
||||||
|
|
||||||
|
test1()
|
28
gfxlcd/demos/ssd_hd44780.py
Normal file
28
gfxlcd/demos/ssd_hd44780.py
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
import sys
|
||||||
|
sys.path.append("../../")
|
||||||
|
import RPi.GPIO # NOQA pylint: disable=I0011,F0401
|
||||||
|
from charlcd.buffered import CharLCD # NOQA
|
||||||
|
from gfxlcd.driver.ssd1306.spi import SPI
|
||||||
|
from gfxlcd.driver.ssd1306.ssd1306 import SSD1306
|
||||||
|
from gfxlcd.driver.hd44780 import HD44780
|
||||||
|
RPi.GPIO.setmode(RPi.GPIO.BCM)
|
||||||
|
|
||||||
|
|
||||||
|
def test1():
|
||||||
|
"""demo """
|
||||||
|
lcd = SSD1306(128, 64, SPI())
|
||||||
|
|
||||||
|
drv = HD44780(lcd, True)
|
||||||
|
print(drv.width, drv.height)
|
||||||
|
lcd = CharLCD(drv.width, drv.height, drv, 0, 0)
|
||||||
|
lcd.init()
|
||||||
|
lcd.write('First')
|
||||||
|
|
||||||
|
lcd.write('HD44780', 6, 3)
|
||||||
|
lcd.flush()
|
||||||
|
lcd.write('/* ', 12, 0)
|
||||||
|
lcd.write('|*|', 12, 1)
|
||||||
|
lcd.write(' */', 12, 2)
|
||||||
|
lcd.flush()
|
||||||
|
|
||||||
|
test1()
|
@ -13,22 +13,24 @@ class Area(Pixel):
|
|||||||
"""additional initialization"""
|
"""additional initialization"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def draw_pixel(self, pos_x, pos_y):
|
def draw_pixel(self, pos_x, pos_y, color=None):
|
||||||
"""draw one pixel"""
|
"""draw one pixel"""
|
||||||
|
if color is None:
|
||||||
|
color = self.options['color']
|
||||||
self._set_area(pos_x, pos_y, pos_x, pos_y)
|
self._set_area(pos_x, pos_y, pos_x, pos_y)
|
||||||
self.driver.data(self._converted_color(), None)
|
self.driver.data(self._convert_color(color), None)
|
||||||
|
|
||||||
def _draw_vertical_line(self, pos_x, pos_y, length):
|
def _draw_vertical_line(self, pos_x, pos_y, length):
|
||||||
"""draw vertical line"""
|
"""draw vertical line"""
|
||||||
self._set_area(pos_x, pos_y, pos_x, pos_y + length)
|
self._set_area(pos_x, pos_y, pos_x, pos_y + length)
|
||||||
color = self._converted_color()
|
color = self._convert_color(self.options['color'])
|
||||||
for _ in itertools.repeat(None, length):
|
for _ in itertools.repeat(None, length):
|
||||||
self.driver.data(color, None)
|
self.driver.data(color, None)
|
||||||
|
|
||||||
def _draw_horizontal_line(self, pos_x, pos_y, length):
|
def _draw_horizontal_line(self, pos_x, pos_y, length):
|
||||||
"""draw horizontal line"""
|
"""draw horizontal line"""
|
||||||
self._set_area(pos_x, pos_y, pos_x + length, pos_y)
|
self._set_area(pos_x, pos_y, pos_x + length, pos_y)
|
||||||
color = self._converted_color()
|
color = self._convert_color(self.options['color'])
|
||||||
for _ in itertools.repeat(None, length):
|
for _ in itertools.repeat(None, length):
|
||||||
self.driver.data(color, None)
|
self.driver.data(color, None)
|
||||||
|
|
||||||
@ -94,7 +96,8 @@ class Area(Pixel):
|
|||||||
max(pos_x1, pos_x2),
|
max(pos_x1, pos_x2),
|
||||||
max(pos_y1, pos_y2)
|
max(pos_y1, pos_y2)
|
||||||
)
|
)
|
||||||
color = self._converted_background_color()
|
# color = self._converted_background_color()
|
||||||
|
color = self._convert_color(self.options['background_color'])
|
||||||
for _ in range(0, size):
|
for _ in range(0, size):
|
||||||
self.driver.data(color, None)
|
self.driver.data(color, None)
|
||||||
|
|
||||||
@ -131,7 +134,9 @@ class Area(Pixel):
|
|||||||
self._set_area(*temporary_area)
|
self._set_area(*temporary_area)
|
||||||
temporary_area = None
|
temporary_area = None
|
||||||
self.color = (red, green, blue)
|
self.color = (red, green, blue)
|
||||||
self.driver.data(self._converted_color(), None)
|
self.driver.data(
|
||||||
|
self._convert_color(self.options['color']), None
|
||||||
|
)
|
||||||
|
|
||||||
col += 1
|
col += 1
|
||||||
if col > width - 1:
|
if col > width - 1:
|
||||||
@ -155,3 +160,27 @@ class Area(Pixel):
|
|||||||
return True
|
return True
|
||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def _draw_letter(self, pos_x, pos_y, letter, with_background=False):
|
||||||
|
"""draw a letter"""
|
||||||
|
if not with_background:
|
||||||
|
super()._draw_letter(pos_x, pos_y, letter, with_background)
|
||||||
|
else:
|
||||||
|
font = self.options['font']
|
||||||
|
self._set_area(
|
||||||
|
pos_x,
|
||||||
|
pos_y,
|
||||||
|
pos_x + font.size[0] - 1,
|
||||||
|
pos_y + font.size[1] - 1
|
||||||
|
)
|
||||||
|
|
||||||
|
bits = font.size[0]
|
||||||
|
color = self._convert_color(self.options['color'])
|
||||||
|
background_color = self._convert_color(self.options['background_color'])
|
||||||
|
for row, data in enumerate(font.get(letter)):
|
||||||
|
for bit in range(bits):
|
||||||
|
if data & 0x01:
|
||||||
|
self.driver.data(color, None)
|
||||||
|
else:
|
||||||
|
self.driver.data(background_color, None)
|
||||||
|
data >>= 1
|
||||||
|
@ -16,9 +16,11 @@ class Page(Pixel, metaclass=abc.ABCMeta):
|
|||||||
else:
|
else:
|
||||||
self.buffer = [[0] * (self.width // 8) for x in range(self.height)]
|
self.buffer = [[0] * (self.width // 8) for x in range(self.height)]
|
||||||
|
|
||||||
def draw_pixel(self, pos_x, pos_y):
|
def draw_pixel(self, pos_x, pos_y, color=None):
|
||||||
"""draw a pixel at x,y"""
|
"""draw a pixel at x,y"""
|
||||||
self.buffer[pos_x][pos_y//8] |= 1 << (pos_y % 8)
|
if color is None:
|
||||||
|
color = self.options['color']
|
||||||
|
self.buffer[pos_x][pos_y//8] |= self._convert_color(color) << (pos_y % 8)
|
||||||
self.flush()
|
self.flush()
|
||||||
|
|
||||||
def draw_line(self, pos_x1, pos_y1, pos_x2, pos_y2):
|
def draw_line(self, pos_x1, pos_y1, pos_x2, pos_y2):
|
||||||
|
@ -36,7 +36,7 @@ class Pixel(object):
|
|||||||
"""set transparency color """
|
"""set transparency color """
|
||||||
self.options['transparency_color'] = transparency_color
|
self.options['transparency_color'] = transparency_color
|
||||||
|
|
||||||
def draw_pixel(self, pos_x, pos_y):
|
def draw_pixel(self, pos_x, pos_y, color=None):
|
||||||
"""dummy function"""
|
"""dummy function"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@ -137,21 +137,27 @@ class Pixel(object):
|
|||||||
|
|
||||||
return appendix
|
return appendix
|
||||||
|
|
||||||
def draw_text(self, pos_x, pos_y, text):
|
def draw_text(self, pos_x, pos_y, text, with_background=False):
|
||||||
"""draw a text"""
|
"""draw a text"""
|
||||||
font = self.options['font']
|
font = self.options['font']
|
||||||
idx = 0
|
idx = 0
|
||||||
for letter in text:
|
for letter in text:
|
||||||
self._draw_letter(pos_x + idx, pos_y, letter)
|
self._draw_letter(pos_x + idx, pos_y, letter, with_background)
|
||||||
idx += font.size[0]
|
idx += font.size[0]
|
||||||
|
|
||||||
def _draw_letter(self, pos_x, pos_y, letter):
|
def _draw_letter(self, pos_x, pos_y, letter, with_background=False):
|
||||||
"""draw a letter"""
|
"""draw a letter"""
|
||||||
font = self.options['font']
|
font = self.options['font']
|
||||||
bits = font.size[0]
|
bits = font.size[0]
|
||||||
for row, data in enumerate(font.get(letter)):
|
for row, data in enumerate(font.get(letter)):
|
||||||
for bit in range(bits):
|
for bit in range(bits):
|
||||||
if data & 0x01:
|
if data & 0x01:
|
||||||
self.draw_pixel(pos_x + bit, pos_y + row)
|
self.draw_pixel(
|
||||||
|
pos_x + bit, pos_y + row, self.color
|
||||||
|
)
|
||||||
|
elif with_background:
|
||||||
|
self.draw_pixel(
|
||||||
|
pos_x + bit, pos_y + row, self.background_color
|
||||||
|
)
|
||||||
data >>= 1
|
data >>= 1
|
||||||
|
|
||||||
|
@ -2,15 +2,16 @@
|
|||||||
allows graphical LCD to work as character LCD
|
allows graphical LCD to work as character LCD
|
||||||
"""
|
"""
|
||||||
from charlcd.drivers.base import BaseDriver
|
from charlcd.drivers.base import BaseDriver
|
||||||
from charlcd.abstract import lcd as char_lcd
|
from charlcd.abstract.flush_event_interface import FlushEvent
|
||||||
|
|
||||||
|
|
||||||
class HD44780(BaseDriver):
|
class HD44780(BaseDriver, FlushEvent):
|
||||||
def __init__(self, gfxlcd):
|
def __init__(self, gfxlcd, lcd_flush=False):
|
||||||
"""Class init"""
|
"""Class init"""
|
||||||
self.gfxlcd = gfxlcd
|
self.gfxlcd = gfxlcd
|
||||||
self.mode = 0
|
self.mode = 0
|
||||||
self.initialized = False
|
self.initialized = False
|
||||||
|
self.lcd_flush = lcd_flush
|
||||||
self.font = self.gfxlcd.options['font']
|
self.font = self.gfxlcd.options['font']
|
||||||
self.width = self.gfxlcd.width // self.font.size[0]
|
self.width = self.gfxlcd.width // self.font.size[0]
|
||||||
self.height = self.gfxlcd.height // self.font.size[1]
|
self.height = self.gfxlcd.height // self.font.size[1]
|
||||||
@ -21,14 +22,14 @@ class HD44780(BaseDriver):
|
|||||||
'x': 0,
|
'x': 0,
|
||||||
'y': 0
|
'y': 0
|
||||||
}
|
}
|
||||||
|
self.address = []
|
||||||
|
|
||||||
def init(self):
|
def init(self):
|
||||||
"""init function"""
|
"""init function"""
|
||||||
if self.initialized:
|
if self.initialized:
|
||||||
return
|
return
|
||||||
char_lcd.LCD_LINES = []
|
|
||||||
for address in range(self.height):
|
for address in range(self.height):
|
||||||
char_lcd.LCD_LINES.append(100 + (address * self.width))
|
self.address.append(100 + (address * self.width))
|
||||||
|
|
||||||
self.gfxlcd.init()
|
self.gfxlcd.init()
|
||||||
self.initialized = True
|
self.initialized = True
|
||||||
@ -60,7 +61,7 @@ class HD44780(BaseDriver):
|
|||||||
def char(self, char, enable=0):
|
def char(self, char, enable=0):
|
||||||
"""write char to lcd"""
|
"""write char to lcd"""
|
||||||
self.gfxlcd.draw_text(
|
self.gfxlcd.draw_text(
|
||||||
self.position['x'], self.position['y'], char
|
self.position['x'], self.position['y'], char, True
|
||||||
)
|
)
|
||||||
self._increase_x()
|
self._increase_x()
|
||||||
|
|
||||||
@ -71,3 +72,13 @@ class HD44780(BaseDriver):
|
|||||||
def _increase_x(self):
|
def _increase_x(self):
|
||||||
self.position['x'] += self.font.size[0]
|
self.position['x'] += self.font.size[0]
|
||||||
|
|
||||||
|
def get_line_address(self, idx):
|
||||||
|
return self.address[idx]
|
||||||
|
|
||||||
|
def pre_flush(self, buffer):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def post_flush(self, buffer):
|
||||||
|
"""called after flush()"""
|
||||||
|
if self.lcd_flush:
|
||||||
|
self.gfxlcd.flush(True)
|
||||||
|
@ -33,19 +33,11 @@ class ILI9325(Area, Chip):
|
|||||||
Chip.__init__(self, width, height, driver, True)
|
Chip.__init__(self, width, height, driver, True)
|
||||||
Area.__init__(self, driver)
|
Area.__init__(self, driver)
|
||||||
|
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""color from 8-8-8 to 5-6-5"""
|
"""color from 8-8-8 to 5-6-5"""
|
||||||
rgb = self.options['background_color']['R'] << 16 | \
|
rgb = color['R'] << 16 | \
|
||||||
self.options['background_color']['G'] << 8 | \
|
color['G'] << 8 | \
|
||||||
self.options['background_color']['B']
|
color['B']
|
||||||
return ((rgb & 0x00f80000) >> 8) |\
|
|
||||||
((rgb & 0x0000fc00) >> 5) | ((rgb & 0x000000f8) >> 3)
|
|
||||||
|
|
||||||
def _converted_color(self):
|
|
||||||
"""color from 8-8-8 to 5-6-5"""
|
|
||||||
rgb = self.options['color']['R'] << 16 | \
|
|
||||||
self.options['color']['G'] << 8 | \
|
|
||||||
self.options['color']['B']
|
|
||||||
return ((rgb & 0x00f80000) >> 8) |\
|
return ((rgb & 0x00f80000) >> 8) |\
|
||||||
((rgb & 0x0000fc00) >> 5) | ((rgb & 0x000000f8) >> 3)
|
((rgb & 0x0000fc00) >> 5) | ((rgb & 0x000000f8) >> 3)
|
||||||
|
|
||||||
|
@ -12,19 +12,11 @@ class ILI9486(Area, Chip):
|
|||||||
Chip.__init__(self, width, height, driver, True)
|
Chip.__init__(self, width, height, driver, True)
|
||||||
Area.__init__(self, driver)
|
Area.__init__(self, driver)
|
||||||
|
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""color from 8-8-8 to 5-6-5"""
|
"""color from 8-8-8 to 5-6-5"""
|
||||||
rgb = self.options['background_color']['R'] << 16 | \
|
rgb = color['R'] << 16 | \
|
||||||
self.options['background_color']['G'] << 8 | \
|
color['G'] << 8 | \
|
||||||
self.options['background_color']['B']
|
color['B']
|
||||||
return ((rgb & 0x00f80000) >> 8) |\
|
|
||||||
((rgb & 0x0000fc00) >> 5) | ((rgb & 0x000000f8) >> 3)
|
|
||||||
|
|
||||||
def _converted_color(self):
|
|
||||||
"""color from 8-8-8 to 5-6-5"""
|
|
||||||
rgb = self.options['color']['R'] << 16 | \
|
|
||||||
self.options['color']['G'] << 8 | \
|
|
||||||
self.options['color']['B']
|
|
||||||
return ((rgb & 0x00f80000) >> 8) |\
|
return ((rgb & 0x00f80000) >> 8) |\
|
||||||
((rgb & 0x0000fc00) >> 5) | ((rgb & 0x000000f8) >> 3)
|
((rgb & 0x0000fc00) >> 5) | ((rgb & 0x000000f8) >> 3)
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ from gfxlcd.abstract.chip import Chip
|
|||||||
|
|
||||||
class NJU6450(Page, Chip):
|
class NJU6450(Page, Chip):
|
||||||
"""Class for an LCD with NJU6450 chip"""
|
"""Class for an LCD with NJU6450 chip"""
|
||||||
def __init__(self, width, height, driver, auto_flush=True):
|
def __init__(self, width, height, driver, auto_flush=False):
|
||||||
Chip.__init__(self, width, height, driver, auto_flush)
|
Chip.__init__(self, width, height, driver, auto_flush)
|
||||||
Page.__init__(self, driver)
|
Page.__init__(self, driver)
|
||||||
self.rotation = 0
|
self.rotation = 0
|
||||||
@ -36,12 +36,11 @@ class NJU6450(Page, Chip):
|
|||||||
self.driver.cmd(0xB8 | pos_y, 1)
|
self.driver.cmd(0xB8 | pos_y, 1)
|
||||||
self.driver.cmd(0x00 | (pos_x - width//2), 1)
|
self.driver.cmd(0x00 | (pos_x - width//2), 1)
|
||||||
|
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""convert RGB background to available color"""
|
"""convert color to avaiable one"""
|
||||||
return 1
|
if color['R'] == 0 and color['G'] == 0 and color['B'] == 0:
|
||||||
|
return 0
|
||||||
|
|
||||||
def _converted_color(self):
|
|
||||||
"""convert RGB color to available color"""
|
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
def flush(self, force=None):
|
def flush(self, force=None):
|
||||||
@ -63,7 +62,7 @@ class NJU6450(Page, Chip):
|
|||||||
else:
|
else:
|
||||||
self.driver.data(self.get_page_value(i, j), 1)
|
self.driver.data(self.get_page_value(i, j), 1)
|
||||||
|
|
||||||
def draw_pixel(self, pos_x, pos_y):
|
def draw_pixel(self, pos_x, pos_y, color=None):
|
||||||
"""draw a pixel at x,y"""
|
"""draw a pixel at x,y"""
|
||||||
if self.rotation == 90:
|
if self.rotation == 90:
|
||||||
pos_x, pos_y = self.height - pos_y - 1, pos_x
|
pos_x, pos_y = self.height - pos_y - 1, pos_x
|
||||||
@ -71,7 +70,7 @@ class NJU6450(Page, Chip):
|
|||||||
pos_x, pos_y = self.width - pos_x - 1, self.height - pos_y - 1
|
pos_x, pos_y = self.width - pos_x - 1, self.height - pos_y - 1
|
||||||
if self.rotation == 270:
|
if self.rotation == 270:
|
||||||
pos_x, pos_y = pos_y, self.width - pos_x - 1
|
pos_x, pos_y = pos_y, self.width - pos_x - 1
|
||||||
Page.draw_pixel(self, pos_x, pos_y)
|
Page.draw_pixel(self, pos_x, pos_y, color)
|
||||||
|
|
||||||
def fill_rect(self, pos_x1, pos_y1, pos_x2, pos_y2):
|
def fill_rect(self, pos_x1, pos_y1, pos_x2, pos_y2):
|
||||||
"""draw a filled rectangle"""
|
"""draw a filled rectangle"""
|
||||||
|
@ -10,13 +10,9 @@ class NullArea(Area, Chip):
|
|||||||
Area.__init__(self, driver)
|
Area.__init__(self, driver)
|
||||||
self.rotation = 0
|
self.rotation = 0
|
||||||
|
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""dummy background color"""
|
"""color color"""
|
||||||
return 2
|
return color
|
||||||
|
|
||||||
def _converted_color(self):
|
|
||||||
"""dummy color"""
|
|
||||||
return 1
|
|
||||||
|
|
||||||
def init(self):
|
def init(self):
|
||||||
"""init display"""
|
"""init display"""
|
||||||
|
@ -22,12 +22,11 @@ class NullPage(Page, Chip):
|
|||||||
Page.init(self)
|
Page.init(self)
|
||||||
Chip.init(self)
|
Chip.init(self)
|
||||||
|
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""convert RGB background to available color"""
|
"""convert color to avaiable one"""
|
||||||
return 1
|
if color['R'] == 0 and color['G'] == 0 and color['B'] == 0:
|
||||||
|
return 0
|
||||||
|
|
||||||
def _converted_color(self):
|
|
||||||
"""convert RGB color to available color"""
|
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
def flush(self, force=None):
|
def flush(self, force=None):
|
||||||
|
@ -24,7 +24,7 @@ class SSD1306(Page, Chip):
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self, width, height, driver, auto_flush=True):
|
def __init__(self, width, height, driver, auto_flush=False):
|
||||||
Chip.__init__(self, width, height, driver, auto_flush)
|
Chip.__init__(self, width, height, driver, auto_flush)
|
||||||
Page.__init__(self, driver)
|
Page.__init__(self, driver)
|
||||||
self.rotation = 0
|
self.rotation = 0
|
||||||
@ -76,12 +76,11 @@ class SSD1306(Page, Chip):
|
|||||||
self.driver.cmd(0x14) # enable charge pump
|
self.driver.cmd(0x14) # enable charge pump
|
||||||
self.driver.cmd(0xaf) # turn on panel
|
self.driver.cmd(0xaf) # turn on panel
|
||||||
|
|
||||||
def _converted_background_color(self):
|
def _convert_color(self, color):
|
||||||
"""convert RGB background to available color"""
|
"""convert color to avaiable one"""
|
||||||
return 1
|
if color['R'] == 0 and color['G'] == 0 and color['B'] == 0:
|
||||||
|
return 0
|
||||||
|
|
||||||
def _converted_color(self):
|
|
||||||
"""convert RGB color to available color"""
|
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
def flush(self, force=None):
|
def flush(self, force=None):
|
||||||
@ -108,8 +107,8 @@ class SSD1306(Page, Chip):
|
|||||||
self.driver.cmd(pos_x1)
|
self.driver.cmd(pos_x1)
|
||||||
self.driver.cmd(pos_x2)
|
self.driver.cmd(pos_x2)
|
||||||
|
|
||||||
def draw_pixel(self, pos_x, pos_y):
|
def draw_pixel(self, pos_x, pos_y, color=None):
|
||||||
"""draw a pixel at x,y"""
|
"""draw a pixel at x,y"""
|
||||||
if self.rotation == 90 or self.rotation == 270:
|
if self.rotation == 90 or self.rotation == 270:
|
||||||
pos_x, pos_y = pos_y, pos_x
|
pos_x, pos_y = pos_y, pos_x
|
||||||
Page.draw_pixel(self, pos_x, pos_y)
|
Page.draw_pixel(self, pos_x, pos_y, color)
|
||||||
|
@ -5,7 +5,10 @@ from gfxlcd.driver.null.null_area import NullArea
|
|||||||
from gfxlcd.driver.null.area_driver import AreaDriver
|
from gfxlcd.driver.null.area_driver import AreaDriver
|
||||||
|
|
||||||
|
|
||||||
class TestPageDrawing(object):
|
class TestAreaDrawing(object):
|
||||||
|
color_black = {'R': 0, 'G': 0, 'B': 0}
|
||||||
|
color_white = {'R': 255, 'G': 255, 'B':255}
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.drv = AreaDriver(10, 16)
|
self.drv = AreaDriver(10, 16)
|
||||||
self.lcd = NullArea(10, 16, self.drv, False)
|
self.lcd = NullArea(10, 16, self.drv, False)
|
||||||
@ -24,189 +27,189 @@ class TestPageDrawing(object):
|
|||||||
def test_draw_pixel(self):
|
def test_draw_pixel(self):
|
||||||
self.lcd.draw_pixel(1, 1)
|
self.lcd.draw_pixel(1, 1)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_two_pixel(self):
|
def test_draw_two_pixel(self):
|
||||||
self.lcd.draw_pixel(1, 1)
|
self.lcd.draw_pixel(1, 1)
|
||||||
self.lcd.draw_pixel(2, 2)
|
self.lcd.draw_pixel(2, 2)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][2] = 1
|
buffer[2][2] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_horizontal_line(self):
|
def test_draw_horizontal_line(self):
|
||||||
self.lcd.draw_line(1, 1, 8, 1)
|
self.lcd.draw_line(1, 1, 8, 1)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][1] = 1
|
buffer[2][1] = self.color_white
|
||||||
buffer[3][1] = 1
|
buffer[3][1] = self.color_white
|
||||||
buffer[4][1] = 1
|
buffer[4][1] = self.color_white
|
||||||
buffer[5][1] = 1
|
buffer[5][1] = self.color_white
|
||||||
buffer[6][1] = 1
|
buffer[6][1] = self.color_white
|
||||||
buffer[7][1] = 1
|
buffer[7][1] = self.color_white
|
||||||
buffer[8][1] = 1
|
buffer[8][1] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_vertical_line(self):
|
def test_draw_vertical_line(self):
|
||||||
self.lcd.draw_line(1, 1, 1, 14)
|
self.lcd.draw_line(1, 1, 1, 14)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[1][2] = 1
|
buffer[1][2] = self.color_white
|
||||||
buffer[1][3] = 1
|
buffer[1][3] = self.color_white
|
||||||
buffer[1][4] = 1
|
buffer[1][4] = self.color_white
|
||||||
buffer[1][5] = 1
|
buffer[1][5] = self.color_white
|
||||||
buffer[1][6] = 1
|
buffer[1][6] = self.color_white
|
||||||
buffer[1][7] = 1
|
buffer[1][7] = self.color_white
|
||||||
buffer[1][8] = 1
|
buffer[1][8] = self.color_white
|
||||||
buffer[1][9] = 1
|
buffer[1][9] = self.color_white
|
||||||
buffer[1][10] = 1
|
buffer[1][10] = self.color_white
|
||||||
buffer[1][11] = 1
|
buffer[1][11] = self.color_white
|
||||||
buffer[1][12] = 1
|
buffer[1][12] = self.color_white
|
||||||
buffer[1][13] = 1
|
buffer[1][13] = self.color_white
|
||||||
buffer[1][14] = 1
|
buffer[1][14] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_overlapping_lines(self):
|
def test_draw_overlapping_lines(self):
|
||||||
self.lcd.draw_line(1, 1, 8, 1)
|
self.lcd.draw_line(1, 1, 8, 1)
|
||||||
self.lcd.draw_line(1, 1, 1, 14)
|
self.lcd.draw_line(1, 1, 1, 14)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][1] = 1
|
buffer[2][1] = self.color_white
|
||||||
buffer[3][1] = 1
|
buffer[3][1] = self.color_white
|
||||||
buffer[4][1] = 1
|
buffer[4][1] = self.color_white
|
||||||
buffer[5][1] = 1
|
buffer[5][1] = self.color_white
|
||||||
buffer[6][1] = 1
|
buffer[6][1] = self.color_white
|
||||||
buffer[7][1] = 1
|
buffer[7][1] = self.color_white
|
||||||
buffer[8][1] = 1
|
buffer[8][1] = self.color_white
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[1][2] = 1
|
buffer[1][2] = self.color_white
|
||||||
buffer[1][3] = 1
|
buffer[1][3] = self.color_white
|
||||||
buffer[1][4] = 1
|
buffer[1][4] = self.color_white
|
||||||
buffer[1][5] = 1
|
buffer[1][5] = self.color_white
|
||||||
buffer[1][6] = 1
|
buffer[1][6] = self.color_white
|
||||||
buffer[1][7] = 1
|
buffer[1][7] = self.color_white
|
||||||
buffer[1][8] = 1
|
buffer[1][8] = self.color_white
|
||||||
buffer[1][9] = 1
|
buffer[1][9] = self.color_white
|
||||||
buffer[1][10] = 1
|
buffer[1][10] = self.color_white
|
||||||
buffer[1][11] = 1
|
buffer[1][11] = self.color_white
|
||||||
buffer[1][12] = 1
|
buffer[1][12] = self.color_white
|
||||||
buffer[1][13] = 1
|
buffer[1][13] = self.color_white
|
||||||
buffer[1][14] = 1
|
buffer[1][14] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_diagonal_line(self):
|
def test_draw_diagonal_line(self):
|
||||||
self.lcd.draw_line(0, 0, 9, 1)
|
self.lcd.draw_line(0, 0, 9, 1)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[0][0] = 1
|
buffer[0][0] = self.color_white
|
||||||
buffer[1][0] = 1
|
buffer[1][0] = self.color_white
|
||||||
buffer[2][0] = 1
|
buffer[2][0] = self.color_white
|
||||||
buffer[3][0] = 1
|
buffer[3][0] = self.color_white
|
||||||
buffer[4][0] = 1
|
buffer[4][0] = self.color_white
|
||||||
buffer[5][1] = 1
|
buffer[5][1] = self.color_white
|
||||||
buffer[6][1] = 1
|
buffer[6][1] = self.color_white
|
||||||
buffer[7][1] = 1
|
buffer[7][1] = self.color_white
|
||||||
buffer[8][1] = 1
|
buffer[8][1] = self.color_white
|
||||||
buffer[9][1] = 1
|
buffer[9][1] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_diagonal_line_even_steps(self):
|
def test_draw_diagonal_line_even_steps(self):
|
||||||
self.lcd.draw_line(0, 0, 9, 15)
|
self.lcd.draw_line(0, 0, 9, 15)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[0][0] = 1
|
buffer[0][0] = self.color_white
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][2] = 1
|
buffer[2][2] = self.color_white
|
||||||
buffer[2][3] = 1
|
buffer[2][3] = self.color_white
|
||||||
buffer[3][4] = 1
|
buffer[3][4] = self.color_white
|
||||||
buffer[3][5] = 1
|
buffer[3][5] = self.color_white
|
||||||
buffer[4][6] = 1
|
buffer[4][6] = self.color_white
|
||||||
buffer[4][7] = 1
|
buffer[4][7] = self.color_white
|
||||||
buffer[5][8] = 1
|
buffer[5][8] = self.color_white
|
||||||
buffer[5][9] = 1
|
buffer[5][9] = self.color_white
|
||||||
buffer[6][10] = 1
|
buffer[6][10] = self.color_white
|
||||||
buffer[6][11] = 1
|
buffer[6][11] = self.color_white
|
||||||
buffer[7][12] = 1
|
buffer[7][12] = self.color_white
|
||||||
buffer[7][13] = 1
|
buffer[7][13] = self.color_white
|
||||||
buffer[8][14] = 1
|
buffer[8][14] = self.color_white
|
||||||
buffer[9][15] = 1
|
buffer[9][15] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_diagonal_line_even_steps_even_rest(self):
|
def test_draw_diagonal_line_even_steps_even_rest(self):
|
||||||
self.lcd.draw_line(0, 0, 9, 5)
|
self.lcd.draw_line(0, 0, 9, 5)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[0][0] = 1
|
buffer[0][0] = self.color_white
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][1] = 1
|
buffer[2][1] = self.color_white
|
||||||
buffer[3][2] = 1
|
buffer[3][2] = self.color_white
|
||||||
buffer[4][2] = 1
|
buffer[4][2] = self.color_white
|
||||||
buffer[5][3] = 1
|
buffer[5][3] = self.color_white
|
||||||
buffer[6][3] = 1
|
buffer[6][3] = self.color_white
|
||||||
buffer[7][4] = 1
|
buffer[7][4] = self.color_white
|
||||||
buffer[8][4] = 1
|
buffer[8][4] = self.color_white
|
||||||
buffer[9][5] = 1
|
buffer[9][5] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_diagonal_line_odd_steps_even_rest(self):
|
def test_draw_diagonal_line_odd_steps_even_rest(self):
|
||||||
self.lcd.draw_line(0, 0, 9, 6)
|
self.lcd.draw_line(0, 0, 9, 6)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[0][0] = 1
|
buffer[0][0] = self.color_white
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][2] = 1
|
buffer[2][2] = self.color_white
|
||||||
buffer[3][2] = 1
|
buffer[3][2] = self.color_white
|
||||||
buffer[4][3] = 1
|
buffer[4][3] = self.color_white
|
||||||
buffer[5][3] = 1
|
buffer[5][3] = self.color_white
|
||||||
buffer[6][4] = 1
|
buffer[6][4] = self.color_white
|
||||||
buffer[7][4] = 1
|
buffer[7][4] = self.color_white
|
||||||
buffer[8][5] = 1
|
buffer[8][5] = self.color_white
|
||||||
buffer[9][6] = 1
|
buffer[9][6] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_diagonal_line_even_steps_odd_rest(self):
|
def test_draw_diagonal_line_even_steps_odd_rest(self):
|
||||||
self.lcd.draw_line(0, 0, 8, 6)
|
self.lcd.draw_line(0, 0, 8, 6)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[0][0] = 1
|
buffer[0][0] = self.color_white
|
||||||
buffer[1][1] = 1
|
buffer[1][1] = self.color_white
|
||||||
buffer[2][2] = 1
|
buffer[2][2] = self.color_white
|
||||||
buffer[3][3] = 1
|
buffer[3][3] = self.color_white
|
||||||
buffer[4][3] = 1
|
buffer[4][3] = self.color_white
|
||||||
buffer[5][3] = 1
|
buffer[5][3] = self.color_white
|
||||||
buffer[6][4] = 1
|
buffer[6][4] = self.color_white
|
||||||
buffer[7][5] = 1
|
buffer[7][5] = self.color_white
|
||||||
buffer[8][6] = 1
|
buffer[8][6] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_rect(self):
|
def test_draw_rect(self):
|
||||||
self.lcd.draw_rect(2, 2, 7, 11)
|
self.lcd.draw_rect(2, 2, 7, 11)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[2][2] = 1
|
buffer[2][2] = self.color_white
|
||||||
buffer[2][3] = 1
|
buffer[2][3] = self.color_white
|
||||||
buffer[2][4] = 1
|
buffer[2][4] = self.color_white
|
||||||
buffer[2][5] = 1
|
buffer[2][5] = self.color_white
|
||||||
buffer[2][6] = 1
|
buffer[2][6] = self.color_white
|
||||||
buffer[2][7] = 1
|
buffer[2][7] = self.color_white
|
||||||
buffer[2][8] = 1
|
buffer[2][8] = self.color_white
|
||||||
buffer[2][9] = 1
|
buffer[2][9] = self.color_white
|
||||||
buffer[2][10] = 1
|
buffer[2][10] = self.color_white
|
||||||
buffer[2][11] = 1
|
buffer[2][11] = self.color_white
|
||||||
buffer[7][2] = 1
|
buffer[7][2] = self.color_white
|
||||||
buffer[7][3] = 1
|
buffer[7][3] = self.color_white
|
||||||
buffer[7][4] = 1
|
buffer[7][4] = self.color_white
|
||||||
buffer[7][5] = 1
|
buffer[7][5] = self.color_white
|
||||||
buffer[7][6] = 1
|
buffer[7][6] = self.color_white
|
||||||
buffer[7][7] = 1
|
buffer[7][7] = self.color_white
|
||||||
buffer[7][8] = 1
|
buffer[7][8] = self.color_white
|
||||||
buffer[7][9] = 1
|
buffer[7][9] = self.color_white
|
||||||
buffer[7][10] = 1
|
buffer[7][10] = self.color_white
|
||||||
buffer[7][11] = 1
|
buffer[7][11] = self.color_white
|
||||||
|
|
||||||
buffer[3][2] = 1
|
buffer[3][2] = self.color_white
|
||||||
buffer[4][2] = 1
|
buffer[4][2] = self.color_white
|
||||||
buffer[5][2] = 1
|
buffer[5][2] = self.color_white
|
||||||
buffer[6][2] = 1
|
buffer[6][2] = self.color_white
|
||||||
buffer[3][11] = 1
|
buffer[3][11] = self.color_white
|
||||||
buffer[4][11] = 1
|
buffer[4][11] = self.color_white
|
||||||
buffer[5][11] = 1
|
buffer[5][11] = self.color_white
|
||||||
buffer[6][11] = 1
|
buffer[6][11] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_fill_rect(self):
|
def test_fill_rect(self):
|
||||||
@ -214,54 +217,54 @@ class TestPageDrawing(object):
|
|||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
for x in range(6):
|
for x in range(6):
|
||||||
for y in range(10):
|
for y in range(10):
|
||||||
buffer[2+x][2+y] = 2
|
buffer[2+x][2+y] = self.color_black
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_circle(self):
|
def test_draw_circle(self):
|
||||||
self.lcd.draw_circle(5, 8, 3)
|
self.lcd.draw_circle(5, 8, 3)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[2][7] = 1
|
buffer[2][7] = self.color_white
|
||||||
buffer[2][8] = 1
|
buffer[2][8] = self.color_white
|
||||||
buffer[2][9] = 1
|
buffer[2][9] = self.color_white
|
||||||
buffer[3][6] = 1
|
buffer[3][6] = self.color_white
|
||||||
buffer[3][7] = 1
|
buffer[3][7] = self.color_white
|
||||||
buffer[3][9] = 1
|
buffer[3][9] = self.color_white
|
||||||
buffer[3][10] = 1
|
buffer[3][10] = self.color_white
|
||||||
buffer[4][5] = 1
|
buffer[4][5] = self.color_white
|
||||||
buffer[4][6] = 1
|
buffer[4][6] = self.color_white
|
||||||
buffer[4][10] = 1
|
buffer[4][10] = self.color_white
|
||||||
buffer[4][11] = 1
|
buffer[4][11] = self.color_white
|
||||||
buffer[5][5] = 1
|
buffer[5][5] = self.color_white
|
||||||
buffer[5][11] = 1
|
buffer[5][11] = self.color_white
|
||||||
buffer[6][5] = 1
|
buffer[6][5] = self.color_white
|
||||||
buffer[6][6] = 1
|
buffer[6][6] = self.color_white
|
||||||
buffer[7][6] = 1
|
buffer[7][6] = self.color_white
|
||||||
buffer[7][7] = 1
|
buffer[7][7] = self.color_white
|
||||||
buffer[8][7] = 1
|
buffer[8][7] = self.color_white
|
||||||
buffer[8][8] = 1
|
buffer[8][8] = self.color_white
|
||||||
buffer[8][9] = 1
|
buffer[8][9] = self.color_white
|
||||||
buffer[7][9] = 1
|
buffer[7][9] = self.color_white
|
||||||
buffer[7][10] = 1
|
buffer[7][10] = self.color_white
|
||||||
buffer[6][10] = 1
|
buffer[6][10] = self.color_white
|
||||||
buffer[6][11] = 1
|
buffer[6][11] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def test_draw_arc(self):
|
def test_draw_arc(self):
|
||||||
self.lcd.draw_arc(5, 8, 3, 90, 270)
|
self.lcd.draw_arc(5, 8, 3, 90, 270)
|
||||||
buffer = self.get_buffer()
|
buffer = self.get_buffer()
|
||||||
buffer[2][7] = 1
|
buffer[2][7] = self.color_white
|
||||||
buffer[2][8] = 1
|
buffer[2][8] = self.color_white
|
||||||
buffer[2][9] = 1
|
buffer[2][9] = self.color_white
|
||||||
buffer[3][6] = 1
|
buffer[3][6] = self.color_white
|
||||||
buffer[3][7] = 1
|
buffer[3][7] = self.color_white
|
||||||
buffer[3][9] = 1
|
buffer[3][9] = self.color_white
|
||||||
buffer[3][10] = 1
|
buffer[3][10] = self.color_white
|
||||||
buffer[4][5] = 1
|
buffer[4][5] = self.color_white
|
||||||
buffer[4][6] = 1
|
buffer[4][6] = self.color_white
|
||||||
buffer[4][10] = 1
|
buffer[4][10] = self.color_white
|
||||||
buffer[4][11] = 1
|
buffer[4][11] = self.color_white
|
||||||
buffer[5][5] = 1
|
buffer[5][5] = self.color_white
|
||||||
buffer[5][11] = 1
|
buffer[5][11] = self.color_white
|
||||||
assert_equal(self.drv.buffer, buffer)
|
assert_equal(self.drv.buffer, buffer)
|
||||||
|
|
||||||
def draw_buffer(self, buffer):
|
def draw_buffer(self, buffer):
|
||||||
|
13
gfxlcd/tests/test_ili9325.py
Normal file
13
gfxlcd/tests/test_ili9325.py
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
import sys
|
||||||
|
from nose.tools import assert_equal
|
||||||
|
sys.path.append("../../")
|
||||||
|
from gfxlcd.driver.ili9325.gpio import GPIO
|
||||||
|
from gfxlcd.driver.ili9325.ili9325 import ILI9325
|
||||||
|
|
||||||
|
|
||||||
|
class TestILI9325Drawing(object):
|
||||||
|
def test_initialize(self):
|
||||||
|
drv = GPIO()
|
||||||
|
drv.pins['LED'] = 6
|
||||||
|
drv.pins['CS'] = 18
|
||||||
|
ILI9325(240, 320, drv)
|
10
gfxlcd/tests/test_ili9486.py
Normal file
10
gfxlcd/tests/test_ili9486.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
import sys
|
||||||
|
from nose.tools import assert_equal
|
||||||
|
sys.path.append("../../")
|
||||||
|
from gfxlcd.driver.ili9486.spi import SPI
|
||||||
|
from gfxlcd.driver.ili9486.ili9486 import ILI9486
|
||||||
|
|
||||||
|
|
||||||
|
class TestILI9486(object):
|
||||||
|
def test_initialize(self):
|
||||||
|
ILI9486(320, 480, SPI())
|
11
gfxlcd/tests/test_nju6450.py
Normal file
11
gfxlcd/tests/test_nju6450.py
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
import sys
|
||||||
|
from nose.tools import assert_equal
|
||||||
|
sys.path.append("../../")
|
||||||
|
from gfxlcd.driver.nju6450.gpio import GPIO
|
||||||
|
from gfxlcd.driver.nju6450.nju6450 import NJU6450
|
||||||
|
|
||||||
|
|
||||||
|
class TestNJU6450(object):
|
||||||
|
def test_initialize(self):
|
||||||
|
drv = GPIO()
|
||||||
|
NJU6450(122, 32, drv)
|
10
gfxlcd/tests/test_ssd1306.py
Normal file
10
gfxlcd/tests/test_ssd1306.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
import sys
|
||||||
|
from nose.tools import assert_equal
|
||||||
|
sys.path.append("../../")
|
||||||
|
from gfxlcd.driver.ssd1306.spi import SPI
|
||||||
|
from gfxlcd.driver.ssd1306.ssd1306 import SSD1306
|
||||||
|
|
||||||
|
|
||||||
|
class TestNJU6450(object):
|
||||||
|
def test_initialize(self):
|
||||||
|
SSD1306(128, 64, SPI())
|
Loading…
Reference in New Issue
Block a user