Code: Select all
#!/usr/bin/python
import os, shutil, glob, time, sys, math, time, Image, ImageFont, ImageDraw
import RPi.GPIO as GPIO
import Adafruit_Nokia_LCD as LCD
import Adafruit_GPIO.SPI as SPI
def main():
#--LDC setup--
# Raspberry Pi hardware SPI config:
DC = 25
RST = 24
SPI_PORT = 0
SPI_DEVICE = 0
# Hardware SPI usage:
disp = LCD.PCD8544(DC, RST, spi=SPI.SpiDev(SPI_PORT, SPI_DEVICE, max_speed_hz=4000000))
# Initialize library.
disp.begin(contrast=60)
# Clear display.
disp.clear()
disp.display()
# Create image buffer.
# Make sure to create image with mode '1' for 1-bit color.
image = Image.new('1', (LCD.LCDWIDTH, LCD.LCDHEIGHT))
# Load default font.
font = ImageFont.load_default()
# Create drawing object.
draw = ImageDraw.Draw(image)
text = 'Testing my lcd'
maxwidth, height = draw.textsize(text, font=font)
# Set starting position.
startpos = 83
pos = startpos
#setup gpio for lcd led
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.OUT)
#turn on lcd led
GPIO.output(11, True)
print 'Press Ctrl-C to quit.'
draw.text((8,30),'hello',font=font)
disp.image(image)
disp.display()
time.sleep(1.0)
#turn off lcd led and clean up
GPIO.output(11, False)
GPIO.cleanup()
if __name__ == '__main__':
main()
Here is the run time error
Code: Select all
Traceback (most recent call last):
File "./lcdtest1.py", line 62, in <module>
disp.display()
File "/usr/local/lib/python2.7/dist-packages/Adafruit_Nokia_LCD-0.1.0-py2.7.egg/Adafruit_Nokia_LCD/PCD8544.py", line 142, in display
self.command(PCD8544_SETYADDR)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_Nokia_LCD-0.1.0-py2.7.egg/Adafruit_Nokia_LCD/PCD8544.py", line 105, in command
self._gpio.set_low(self._dc)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-0.5.5-py2.7.egg/Adafruit_GPIO/GPIO.py", line 57, in set_low
self.output(pin, LOW)
File "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO-0.5.5-py2.7.egg/Adafruit_GPIO/GPIO.py", line 106, in output
self.rpi_gpio.output(pin, value)
ValueError: The channel sent is invalid on a Raspberry PiIf i run just the code to turn it off and on it works just fine.
Code: Select all
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.OUT)
GPIO.output(11, True)
time.sleep(2)
GPIO.output(11, False)
GPIO.cleanup()