Raspberry Pi LCD program
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
download
download the program source from http://www.bitwizard.nl/software/bw_lcd.c
You will need a kernel with spidev enabled and the raspberry pi SPI driver included. See Raspberry pi spi kernel
Currently you also need the http://www.bitwizard.nl/software/gpio_spi_i2c_20120419.tgz programs: You need to set gpio 7 through 11 to "ALT0":
gpio_setfunc 7 ALT0 gpio_setfunc 8 ALT0 gpio_setfunc 9 ALT0 gpio_setfunc 10 ALT0 gpio_setfunc 11 ALT0
This won't be neccesary when this code is included in the SPI driver.
Command line arguments
SPI options: -D <device> SPI device to use. default: /dev/spidev0.0 -s <speed> speed to use on the SPI bus default 0.5MHz. -d <delay> delay between bytes. default: 15 us.
LCD options: -a <addr> address of display, defaults to 0x82 -p <c>,<l> Jump to line <l> and character <c> -t <text> print text -T <c>,<l> <text> Print tekst starting at line <l> character <c>. -b < b > Adjust backlight level -c <c> Adjust contrast -C clearscreen -f <file> display text from file (not implemented yet).
general bw SPI options: -r <reg> -v <val> set register to value. Requires -r.
Example commands
Print current date on line 0:
bw_lcd -p 0,0 -t `date +%m/%d/%Y`
Print the text "Hello World" on line 1, character 2:
bw_lcd -T 2,1 "Hello World"
Print the contents of "textfile":
bw_lcd -f textfile
Write two different strings to two daisy-chained displays:
bw_lcd -a 82 -T 0,0 display0 bw_lcd -a 84 -T 0,0 display1