
VII LCD CONTROLLER BLOCK: LCD CONTROLLER
Inverting and Blanking the Display
The display can be blanked (the entire screen turned black) without rewriting the contents of the display memory. Setting DBLANK (D3)/LCDC mode register 1 (0x39FFE2) to "1" causes the FPDAT signal to go low, blanking the display. Setting it to "0" turns the display back on.
Furthermore, the display can be inverted simply by manipulating bits. Setting INVDISP (D0)/LCDC mode register 1 (0x39FFE2) to "1" inverts the display, and setting it to "0" returns the display to normal. This is accomplished by inverting the display data output from the
The screen can be made to blink using these operations. Make sure switching takes place within the vertical non- display period (VNDPF = "1").
Portrait Mode
Depending on the applications used, the LCD panel may normally be used while positioned horizontally, and may sometimes need to be used after being turned 90 degrees into a vertical position. Generally, image data should be rotated by software, which, however, adversely affects not only the display performance but also the performance of the entire system. The LCD controller supports this function in the hardware, enabling images to be rotated 90 degrees without increasing the load on the CPU. This function can be accomplished by setting the LCD controller to portrait mode. Depending on differences in memory usage and performance, two types of portrait modes (default and alternate portrait modes) are available.
Default portrait mode
Although inferior to alternate portrait mode in terms of display performance, default portrait mode is superior in terms of current consumption, as it enables the use of a slower clock. In this mode, the horizontal size of images must be increased by the power of 2. To display a horizontal
256pixels
240 pixels
Physical memory |
|
|
| A |
|
| B |
| E |
|
|
|
|
|
|
|
| ||||
|
|
|
|
|
|
| E | 320 pixels |
|
|
| ||||||||||
start address |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Line 1 |
|
| B |
|
|
| D |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||
|
|
|
|
|
|
|
|
|
|
| Screen 1 |
|
|
|
|
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||
|
|
|
|
|
|
|
|
|
|
| start address |
|
|
|
|
|
|
| |||
320 lines |
|
| Image |
|
|
|
|
|
|
|
|
|
| Image |
|
|
| ||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 240 lines | |
|
|
|
|
|
|
|
|
|
|
|
| Unused |
|
|
|
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
| area |
|
|
|
|
|
|
| ||
|
|
|
| C |
|
| D |
|
|
|
| Line 240 |
|
| A |
|
|
| C |
|
|
|
|
|
|
|
|
|
|
| |||||||||||||
|
|
|
|
| Display memory |
|
|
|
|
|
|
|
|
| LCD panel |
|
|
|
Figure 2.20 Image Rotation in Default Portrait Mode
Figure 2.20 shows the relationship between the display memory and the LCD panel in cases in which a 320 ⋅
The control procedure described below is based on the assumption that the LCD panel is used in
1.Make settings necessary to use an LCD panel consisting of 320 pixels horizontally and 240 lines vertically. If necessary, set it for display in normal (landscape) mode.
2.To switch from landscape mode to portrait mode, temporarily clear the display memory in advance. If switched over without clearing the display memory, the display may be distorted for a certain period.
3.If the LCD panel was split into two screens in landscape mode, reset the S1VSIZE[9:0] (D[9:0])/screen 1 vertical size register (0x39FFF3, 0x39FFF2) by setting a new value above the vertical resolution of the LCD panel. In portrait mode, the LCD panel cannot be split for display on screen 2.
LCDC
S1C33L03 FUNCTION PART | EPSON |