Difference between revisions of "LCD"

From ArmadeusWiki
Jump to: navigation, search
(LCDs without controller: TM035: "no more sold by Armadeus Systems" -> Not true !)
 
(22 intermediate revisions by 4 users not shown)
Line 1: Line 1:
On this page, you will find all the informations needed to use Liquid Crystal Display (LCD) with your Armadeus board.
+
On this page, you will find all the information needed to use Liquid Crystal Display (LCD) with your Armadeus board.
  
 
== Hardware interface ==
 
== Hardware interface ==
Line 7: Line 7:
  
 
===LCDs with integrated 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 parallel interface:
* your LCD has a built-in controller with a serial interface (not tested yet):
+
** -> usage of i.MX LCD pins as GPIOs and emulation of a PC parallel port to reuse existing software
** RS232 -> connect this serial interface to the 2nd serial port of the i.MXL. Don't forget to check signal level compatibility before !
+
* your LCD has a built-in controller with a serial interface:
** SPI -> connect it to SPI port n°?
+
** -> not supported yet
  
 
===LCDs without controller===
 
===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:
+
These LCDs can be used with i.MX internal LCD controller, ie direct connection between LCD & i.MX pins. Tested LCDs are:
* [[MTF-T035|Microtips 320x240 TFT]] <strong> (Default 256k colors TFT for Armadeus Project)</strong>
+
* [[LQ043_Adapt | Sharp LQ043 (480x270) TFT ]] (old default APF9328Dev LCD, no more sold by Armadeus Systems)
* [[MotLCD|Motorola A910 240x320 TFT]]
+
* [[Chimey LW700 |LW700AT (800x480) TFT ]] (old default APF27Dev/APF51Dev LCD, no more sold by Armadeus Systems)
* [[LQ057|Sharp LQ057 320x240 TFT]]
+
* [[Santek ST070015 |ST070015 (800x480) TFT ]] <strong> (Default APF27Dev/APF51Dev/APF28Dev 256k colors TFT sold by Armadeus Systems)</strong>
 +
* [[MTF-T035|Microtips MTF-035 (320x240) TFT]]
 +
* [[MotLCD|Motorola A910 (240x320) TFT]]
 +
* [[LQ057|Sharp LQ057 (320x240) TFT]]
 +
* [[Tianma_TM035|TM035 (320x240) TFT ]] (old default APF28Dev LCD, sold by Armadeus Systems)
 
5v logic one:
 
5v logic one:
 
* Tianma STN Monochrome 320x240
 
* Tianma STN Monochrome 320x240
 
* Ampire/xxx STN Monochrome 240x128
 
* Ampire/xxx STN Monochrome 240x128
 
  
 
==Software API==
 
==Software API==
Line 27: Line 30:
 
{| 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.MX one) || RGB datas + control signals || [[FrameBuffer]] || SDL / Qt / ... || style="background:#00ff55;" | Yes
|----------------
+
|  ||  || || ||
+
 
|----------------
 
|----------------
 
|  ||  || || ||
 
|  ||  || || ||
Line 49: Line 50:
 
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:
Line 62: Line 61:
  
 
[[LCD4linux]]
 
[[LCD4linux]]
Cool but mainly to display system informations, not very customizable for user GUI
+
Mainly used to display system information, not very customizable for user GUI
 
+
Lcdproc ??
+
(Not tested)
+
 
+
Other idea ??
+
 
+
 
+
[[Image:FrenchFlag.png]] [[Fr:LCD | Cette page en français]]
+
  
[[Category:Hardware]]
+
[[Category:Displays]]
 +
[[Category:LCD]]

Latest revision as of 15:43, 13 July 2015

On this page, you will find all the information 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.MX 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 supported yet

LCDs without controller

These LCDs can be used with i.MX internal LCD controller, ie direct connection between LCD & i.MX 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.MX 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 Mainly used to display system information, not very customizable for user GUI