Difference between revisions of "LCD"

From ArmadeusWiki
Jump to: navigation, search
 
(LCDs without controller: TM035: "no more sold by Armadeus Systems" -> Not true !)
 
(30 intermediate revisions by 5 users not shown)
Line 1: Line 1:
On this page, you will find all the informations needed to use LCD on Armadeus.
+
On this page, you will find all the information needed to use Liquid Crystal Display (LCD) with your Armadeus board.
  
 
== Hardware interface ==
 
== Hardware interface ==
 +
LCDs can be divided into 2 main categories:
 +
* "intelligent" LCD with a built-in controller
 +
* LCD without controller
  
Two possibilities:
+
===LCDs with integrated controller===
* LCD can be used with i.MX LCD controller -> direct connection to i.MX LCD pins (ex: [[MotLCD]] )
+
* your LCD has a built-in controller with a parallel interface:
* 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
+
** -> usage of i.MX LCD pins as GPIOs and emulation of a PC parallel port to reuse existing software
* ?? Should we support serial interface ?.
+
* your LCD has a built-in controller with a serial interface:
 +
** -> not supported yet
  
== Supported LCD / Software API ==
+
===LCDs without controller===
=== Which LCD controller are we going to support (for parallel port/GPIO interface) ===
+
These LCDs can be used with i.MX internal LCD controller, ie direct connection between LCD & i.MX pins. Tested LCDs are:
 +
* [[LQ043_Adapt | Sharp LQ043 (480x270) TFT ]] (old default APF9328Dev LCD, no more sold by Armadeus Systems)
 +
* [[Chimey LW700 |LW700AT (800x480) TFT ]] (old default APF27Dev/APF51Dev LCD, no more sold by Armadeus Systems)
 +
* [[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:
 +
* 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.
 +
 
 +
{| border="1" cellpadding="5" cellspacing="0" summary="LCD software APIs"
 +
|- style="background:#efefef;"
 +
! ''' Built-in Controller ''' || ''' Interface ''' || '''Driver''' || '''Library''' || '''Working?'''
 +
|----------------
 +
|  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
 +
|----------------
 +
|  ||  || || ||
 +
|----------------
 +
|}
 +
 
 +
===LCDs with controller===
 +
====Parallel interface====
 +
Driver:
 +
Use Linux Armadeus [[GPIO_Driver|GPIO driver with it's PPDEV emulation]]
 +
User space:
 +
Use either [[LCD4linux]] or Lcdproc depending on your application
  
 
Text:
 
Text:
 
- HD 44780 (tested with GpioDriver driver (+ppdev emulation) and LCD4Linux
 
- HD 44780 (tested with GpioDriver driver (+ppdev emulation) and LCD4Linux
- ?
 
  
 
Graphic:
 
Graphic:
Line 22: 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 ??
+
 
+
  
[[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