Difference between revisions of "LCD"

From ArmadeusWiki
Jump to: navigation, search
(Software API)
Line 27: Line 27:
 
{| border="1" cellpadding="5" cellspacing="0" summary="LCD software APIs"
 
{| border="1" cellpadding="5" cellspacing="0" summary="LCD software APIs"
 
|- style="background:#efefef;"
 
|- style="background:#efefef;"
! ''' Controller ''' || ''' Interface ''' || '''Driver''' || '''Library''' || '''Working?'''
+
! ''' Built-in Controller ''' || ''' Interface ''' || '''Driver''' || '''Library''' || '''Working?'''
 
|----------------
 
|----------------
|  HD44780|| // || [[GPIO_Driver]] || Yes ||
+
|  HD44780 || // 4 bits data || [[GPIO_Driver]] + PPDEV || LCD4Linux || style="background:#00ff55;" | Yes
 
|----------------
 
|----------------
|  || || || ||
+
KS0108 || // 8 bits data || [[GPIO_Driver]] + PPDEV || ?? || style="background:#ddff00;" | Not tested
 
|----------------
 
|----------------
 
|  ||  || || ||
 
|  ||  || || ||
 
|----------------
 
|----------------
|  || || || ||
+
None (use i.MXL one) || RGB datas + control signals || [[FrameBuffer]] || SDL / Qt / ... || style="background:#00ff55;" | Yes
|----------------
+
|  ||  || || ||
+
 
|----------------
 
|----------------
 
|  ||  || || ||
 
|  ||  || || ||
Line 49: Line 47:
 
User space:
 
User space:
 
Use either [[LCD4linux]] or Lcdproc depending on your application
 
Use either [[LCD4linux]] or Lcdproc depending on your application
====Serial interface====
 
=====RS232====
 
  
 
Text:
 
Text:

Revision as of 19:02, 7 September 2007

On this page, you will find all the informations needed to use Liquid Crystal Display (LCD) with your Armadeus board.

Hardware interface

LCDs can be divided into 2 main categories:

  • "intelligent" LCD with a built-in controller
  • LCD without controller

LCDs with integrated controller

  • your LCD has a built-in controller with a parallel interface -> usage of i.MXL LCD pins as GPIOs and emulation of a PC parallel port to reuse existing software
  • your LCD has a built-in controller with a serial interface (not tested yet):
    • RS232 -> connect this serial interface to the 2nd serial port of the i.MXL. Don't forget to check signal level compatibility before !
    • SPI -> connect it to SPI port n°?

LCDs without controller

These LCDs can be used with i.MXL internal LCD controller, ie direct connection between LCD & i.MXL pins. Tested LCDs are:

5v logic one:

  • Tianma STN Monochrome 320x240
  • Ampire/xxx STN Monochrome 240x128


Software API

Generally on Linux you would need a kernel part (=driver) and a user space part (=library) to control and use your LCD in a reusable way.

Built-in Controller Interface Driver Library Working?
HD44780 // 4 bits data GPIO_Driver + PPDEV LCD4Linux Yes
KS0108 // 8 bits data GPIO_Driver + PPDEV  ?? Not tested
None (use i.MXL one) RGB datas + control signals FrameBuffer SDL / Qt / ... Yes

LCDs with controller

Parallel interface

Driver: Use Linux Armadeus GPIO driver with it's PPDEV emulation User space: Use either LCD4linux or Lcdproc depending on your application

Text: - HD 44780 (tested with GpioDriver driver (+ppdev emulation) and LCD4Linux

Graphic: - KS0108 (Nico and Juju have one sample, not tested yet because LC4Linux don't support it) - ?

User space tools / library found to control // LCD

LCD4linux Cool but mainly to display system informations, not very customizable for user GUI

Lcdproc ?? (Not tested)

Other idea ??


FrenchFlag.png Cette page en français