def init(CLK=11, DIN=10, DC=23, RST=24, LIGHT=18, CE=8, contrast=default_contrast): """ init screen, clearscreen """ wiringPy.debug(0) if wiringPy.setup_gpio() != 0: raise IOError("Failed to initialize wiringPy properly") fd = wiringPy.setup_bitbang(CE, DIN, CLK, 0) if fd == -1: raise IOError("Failed to initialize bitbang properly") pins = [CLK, DIN, DC, RST, LIGHT, CE] pin_CLK, pin_DIN, pin_DC, pin_RST, pin_LIGHT, pin_CE = pins map(lambda p: wiringPy.pin_mode(p, ON), pins) # Reset the device wiringPy.digital_write(pin_RST, OFF) time.sleep(0.1) wiringPy.digital_write(pin_RST, ON) set_contrast(contrast) cls()
def init(CLK = 11, DIN = 10, DC = 23, RST = 24, LIGHT = 18, CE = 8, contrast = default_contrast): """ init screen, clearscreen """ wiringPy.debug(0) if wiringPy.setup_gpio() != 0: raise IOError("Failed to initialize wiringPy properly") fd = wiringPy.setup_bitbang(CE, DIN, CLK, 0) if fd == -1: raise IOError("Failed to initialize bitbang properly") pins = [CLK, DIN, DC, RST, LIGHT, CE] pin_CLK, pin_DIN, pin_DC, pin_RST, pin_LIGHT, pin_CE = pins list(map(lambda p: wiringPy.pin_mode(p, ON), pins)) # Reset the device wiringPy.digital_write(pin_RST, OFF) time.sleep(0.1) wiringPy.digital_write(pin_RST, ON) set_contrast(contrast) cls()
def bitmap(arr, dc): """ write a sequence of bytes, either as data or command""" wiringPy.digital_write(pin_DC, dc) wiringPy.digital_write_serial_array(0, struct.pack('B'*len(arr), *arr))
def backlight(status): """ control backlight """ wiringPy.digital_write(pin_LIGHT, 1 - status)
def bitmap(arr, dc): """ write a sequence of bytes, either as data or command""" wiringPy.digital_write(pin_DC, dc) wiringPy.digital_write_serial_array(0, struct.pack('B' * len(arr), *arr))
def sData(self, data): """Send hex data through the serial port (SDATA 1 first)""" wiringPy.digital_write(self._CS, 0) # disable CS wiringPy.digital_write( self._SDATA, 1) # Enable Serial Data line, This means we are sending data wiringPy.digital_write(self._SCLK, 0) # Disable Serial Clock wiringPy.digital_write(self._SCLK, 1) # Enable Serial Clock for j in range(8): if ((data & 0x80) == 0x80): wiringPy.digital_write(self._SDATA, 1) # Enable Serial Data else: wiringPy.digital_write(self._SDATA, 0) # Disable Serial Data line wiringPy.digital_write(self._SCLK, 0) # Disable Clock wiringPy.digital_write(self._SCLK, 1) # Enable Clock data <<= 1 wiringPy.digital_write(self._SCLK, 0) # Disable Clock wiringPy.digital_write(self._SDATA, 0) # Disable Serial Data wiringPy.digital_write(self._CS, 1) # Enable CS
def reset(self): """Resets the device""" wiringPy.digital_write(self._RST, OFF) time.sleep(0.5) wiringPy.digital_write(self._RST, ON)
def command(self, data): """Send a hex self.__spiInterface.command through the serial port (SDATA 0 first)""" wiringPy.digital_write(self._CS, 0) # disable CS wiringPy.digital_write( self._SDATA, 0 ) # Disable Serial Data line, This means we are sending a self.__spiInterface.command wiringPy.digital_write(self._SCLK, 0) # Disable Serial Clock wiringPy.digital_write(self._SCLK, 1) # Enable Serial Clock for j in range(8): if ((data & 0x80) == 0x80): wiringPy.digital_write(self._SDATA, 1) else: wiringPy.digital_write(self._SDATA, 0) wiringPy.digital_write(self._SCLK, 0) # Disable Clock wiringPy.digital_write(self._SCLK, 1) # Enable Clock data <<= 1 wiringPy.digital_write(self._SCLK, 0) # Disable Clock wiringPy.digital_write(self._SDATA, 0) # Disable Serial Data wiringPy.digital_write(self._CS, 1) # Enable CS
def sData(self, data): """Send hex data through the serial port (SDATA 1 first)""" wiringPy.digital_write(self._CS,0) # disable CS wiringPy.digital_write(self._SDATA,1) # Enable Serial Data line, This means we are sending data wiringPy.digital_write(self._SCLK,0) # Disable Serial Clock wiringPy.digital_write(self._SCLK,1) # Enable Serial Clock for j in range(8): if ((data & 0x80) == 0x80): wiringPy.digital_write(self._SDATA,1) # Enable Serial Data else: wiringPy.digital_write(self._SDATA,0) # Disable Serial Data line wiringPy.digital_write(self._SCLK,0) # Disable Clock wiringPy.digital_write(self._SCLK,1) # Enable Clock data <<= 1 wiringPy.digital_write(self._SCLK,0) # Disable Clock wiringPy.digital_write(self._SDATA,0) # Disable Serial Data wiringPy.digital_write(self._CS,1) # Enable CS
def command(self, data): """Send a hex self.__spiInterface.command through the serial port (SDATA 0 first)""" wiringPy.digital_write(self._CS,0) # disable CS wiringPy.digital_write(self._SDATA,0) # Disable Serial Data line, This means we are sending a self.__spiInterface.command wiringPy.digital_write(self._SCLK,0) # Disable Serial Clock wiringPy.digital_write(self._SCLK,1) # Enable Serial Clock for j in range(8): if ((data & 0x80) == 0x80): wiringPy.digital_write(self._SDATA,1) else: wiringPy.digital_write(self._SDATA,0) wiringPy.digital_write(self._SCLK,0) # Disable Clock wiringPy.digital_write(self._SCLK,1) # Enable Clock data <<= 1 wiringPy.digital_write(self._SCLK,0) # Disable Clock wiringPy.digital_write(self._SDATA,0) # Disable Serial Data wiringPy.digital_write(self._CS,1) # Enable CS
#!/usr/bin/env python import time import wiringPy if wiringPy.setup_sys() < 0: print "Failed to initialize wiringPi" exit(-1) print "Rasberry Pi - Board revision:" , wiringPy.board_revision() for i in range(0, 32): wiringPy.digital_write(i, 1) time.sleep(0.2) for i in range(0,32): wiringPy.digital_write(i, 0) time.sleep(0.2)
#!/usr/bin/env python import time import wiringPy if wiringPy.setup_sys() < 0: print "Failed to initialize wiringPi" exit(-1) print "Rasberry Pi - Board revision:", wiringPy.board_revision() for i in range(0, 32): wiringPy.digital_write(i, 1) time.sleep(0.2) for i in range(0, 32): wiringPy.digital_write(i, 0) time.sleep(0.2)