TFTLCD with FastIO
Fork of TFTLCD by
Diff: lcd_base.h
- Revision:
- 4:3ac4239f6c9c
- Parent:
- 3:64a5b67d5b51
- Child:
- 5:09b6d228ceea
--- a/lcd_base.h Sun Dec 02 01:44:23 2012 +0000 +++ b/lcd_base.h Sun Dec 02 05:44:52 2012 +0000 @@ -120,11 +120,40 @@ * or produce garbage. * * This function is controller-specific and needs to be implemented - * separately for each available implementation. + * separately for each available display. * \param oritentation The display orientation, landscape is default. */ virtual void Initialize( orientation_t orientation ) = 0; + /** Puts the display to sleep. + * + * When the display is in sleep mode, its power consumption is + * minimized. Before new pixel data can be written to the display + * memory, the controller needs to be brought out of sleep mode. + * \sa #WakeUp( void ); + * \remarks The result of this operation might not be exactly as + * expected. Putting the display to sleep will cause the + * controller to switch to the standard color of the LCD, + * so depending on whether the display is normally white, + * or normally dark, the screen might or might not go + * dark. Additional power saving can be achieved, if + * the backlight of the used display is not hardwired on + * the PCB and can be controlled via the BL pin. + * \remarks This function is controller-specific and needs to be + * implemented separately for each available display. + */ + virtual void Sleep( void ) = 0; + + /** Wakes up the display from sleep mode. + * + * This function needs to be called before any other, when the + * display has been put into sleep mode by a previois call to + * #Sleep( void ). + * \remarks This function is controller-specific and needs to be + * implemented separately for each available display. + */ + virtual void WakeUp( void ) = 0; + /** Set the foreground color for painting. * * This is the default foreground color to be used in painting operations. @@ -312,8 +341,21 @@ * \param height Height of the display in pixels. * \param CS Pin connected to the CS input of the display. * \param RS Pin connected to the RS input of the display. + * \param RESET Pin connected to the RESET input of the display. */ - LCD( unsigned short width, unsigned short height ,PinName CS, PinName RS ); + LCD( unsigned short width, unsigned short height ,PinName CS, PinName RS, PinName RESET ); + + /** Activates the display for command/data transfer. + * + * Usually achieved by pulling the CS pin of the display low. + */ + virtual void Activate( void ); + + /** Deactivates the display after data has been transmitted. + * + * Usually achieved by pulling the CS pin of the display high. + */ + virtual void Deactivate( void ); /** Sends a command to the display. * @@ -416,11 +458,11 @@ virtual void RotateChar( char c, unsigned short x, unsigned short y, int pos, int fgColor = -2, int bgColor = -1, unsigned short deg = 0 ); protected: - unsigned short _disp_width, _disp_height; - DigitalOut _lcd_pin_cs, _lcd_pin_rs; - orientation_t _orientation; - unsigned short _foreground, _background; - font_metrics_t _font; + unsigned short _disp_width, _disp_height; + DigitalOut _lcd_pin_cs, _lcd_pin_rs, _lcd_pin_reset; + orientation_t _orientation; + unsigned short _foreground, _background; + font_metrics_t _font; }; #endif /* TFTLCD_BASE_H */