Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

rpilcd

Freepascal Raspberry Pi LCD interface library

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

Freepascal Raspberry Pi LCD interface library

This library aims to provide access to various LCD modules without needing kernel support, by directly talking to them over the I2C/SPI bus or via direct GPIO pin access. Root not required.

No dependencies on external libraries are required. All required libraries are available on my Github account, and will compile into your program statically.

Library dependencies

All of these are available on my Github account.

Supported displays and the driver to use for them

  • HD44780 character LCD with 8 user defineable characters
    • Driver: rpilcdhd44780
    • Demo video: https://youtu.be/XQv7JDUyKzE
    • Supported connection methods:
      • I2C bus (with the PCF8574(A) IO expander IC)
      • Raw (directly connected) displays coming soon, 4 and 8 bit mode
    • Display sub-types supported / tested:
      • 20x4 5x8 dot: Full support (tested)
      • 16x2 5x8 dot: Full support (tested)
      • 40x2 5x8 dot: Full support (untested)
      • The other 3 common sizes I know of (8x1, 16x1 and 40x2) I cannot get hold of so I cannot test or add support. Please contact me if you wish to donate a module, or add support and send me a pull request.
  • SSD1306 OLED display (monochrome)
    • Driver: rpilcdi2cssd1306
    • Supported connection modes:
      • I2C bus
    • Display sub-types supported / tested:
      • 128x64: Under test
    • Strictly alpha/testing only, please do not use this yet!

Upcoming displays

Directory layout example

Please always use this standardised directory layout when using any of my freepascal or Delphi programs. The compilation scripts assume that the libraries will always be found by looking one directory back, and under libs/<name>

  • /home/youruser/projects/my_awesome_program
  • /home/youruser/projects/libs/rpiio