Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
ctboard:peripherals:lcd [2016/02/25 10:43] – [Programming Example] feur | ctboard:peripherals:lcd [2017/08/29 09:25] (current) – [LCD] ruan | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== LCD ====== | ====== LCD ====== | ||
- | The LCD character display can be used in three different ways: | + | The LCD character display can be used in two different ways: |
- | * Output ASCII characters over a simple LCD controller | + | * Output |
- | * Output binary values in HEX representation (max. 128 bit) | + | * Output |
- | * Access the display directly over the I²C interface | + | Each RGB colour of the [[lcd_bg|background light]] is controlled by a 16 bit PWM controller. \\ \\ |
- | Each colour of the background light is controlled by a 16 bit PWM controller. \\ \\ | + | |
- | + | ||
- | > {{ctboard: | + | |
- | > Supported | + | |
- | + | ||
- | ===== ASCII Interface ===== | + | |
- | + | ||
- | The integrated LCD controller must allways be accessed with 16 bit half words! \\ \\ | + | |
- | + | ||
- | ==== Programming Example ==== | + | |
- | + | ||
- | The code snippet bellow shows how to use the ASCII interface of the LCD. | + | |
- | + | ||
- | <code c> | + | |
- | #include " | + | |
- | + | ||
- | CT_LCD-> | + | |
- | </ | + | |
- | + | ||
- | ==== Registers ==== | + | |
- | + | ||
- | The Registers are read / write. | + | |
- | + | ||
- | \\ {{ctboard_lcd_ascii_reg.svg}} \\ \\ | + | |
- | + | ||
- | ==== Display Positions ==== | + | |
- | + | ||
- | \\ {{ctboard_lcd_ascii.svg? | + | |
- | + | ||
- | ===== Binary Interface ===== | + | |
- | + | ||
- | The binary interface can be used to display binary values in HEX representation. | + | |
- | A maximum of 128 bits can be displayed. \\ \\ | + | |
- | + | ||
- | ==== Programming Example ==== | + | |
- | + | ||
- | The code snippet bellow shows how to use the ASCII interface of the LCD. | + | |
- | + | ||
- | <code c> | + | |
- | #include " | + | |
- | + | ||
- | CT_LCD-> | + | |
- | CT_LCD-> | + | |
- | CT_LCD-> | + | |
- | CT_LCD-> | + | |
- | </ | + | |
- | + | ||
- | ==== Registers ==== | + | |
- | + | ||
- | The Registers are read / write. | + | |
- | + | ||
- | \\ {{ctboard_lcd_bin_reg.svg}} \\ \\ | + | |
- | + | ||
- | ==== Display Positions ==== | + | |
- | + | ||
- | \\ {{ctboard_lcd_bin.svg? | + | |
- | + | ||
- | ===== I²C Interface ===== | + | |
- | + | ||
- | FIXME | + | |
- | + | ||
- | ===== Background Light ===== | + | |
- | + | ||
- | Each colour of the background light is controlled by a 16 bit PWM generator. \\ | + | |
- | The brightness can be regulated from 0x0000 (0% / off) to 0xffff (100%). To adapt the brightness curve to the human eye a adadption to a logarithmic scale has to be done manually. \\ \\ | + | |
- | + | ||
- | ==== Programming Example ==== | + | |
- | + | ||
- | The code snippet bellow shows how to set the background light on the LCD. | + | |
- | + | ||
- | <code c> | + | |
- | #include " | + | |
- | + | ||
- | CT_LCD-> | + | |
- | CT_LCD-> | + | |
- | CT_LCD-> | + | |
- | </ | + | |
- | \\ | + | |
- | + | ||
- | ==== Registers ==== | + | |
- | + | ||
- | The Registers are read / write. | + | |
- | + | ||
- | \\ {{ctboard_lcd_pwm_reg.svg}} \\ \\ | + | |
===== Diagram ===== | ===== Diagram ===== | ||
\\ {{ctboard_lcd.svg? | \\ {{ctboard_lcd.svg? |