1.44 tft lcd display
Dependencies: TFT_fonts mbed-os
Fork of newTFTLCD by
Diff: lcd_base.h
- Revision:
- 2:81ed304b7e9b
- Parent:
- 0:881ff0b71102
- Child:
- 3:64a5b67d5b51
diff -r 14bef43daf6f -r 81ed304b7e9b lcd_base.h --- a/lcd_base.h Sat Dec 01 23:49:10 2012 +0000 +++ b/lcd_base.h Sun Dec 02 00:12:43 2012 +0000 @@ -33,9 +33,18 @@ #include "mbed.h" #include "fonts.h" +/** \def HIGH + * \brief User-friendly high pin level designation. + */ #define HIGH 1 +/** \def LOW + * \brief User-friendly low pin level designation. + */ #define LOW 0 +/** \def swap( type, a, b ) + * \brief Convenience macro to swap two values. + */ #define swap( type, a, b ) { type tmp = ( a ); ( a ) = ( b ); ( b ) = tmp; } /** \def RGB(r,g,b) @@ -326,7 +335,7 @@ * \remarks Commands are controller-specific and this function needs to * be implemented separately for each available controller. */ - virtual void writeCmd( unsigned short cmd ) = 0; + virtual void WriteCmd( unsigned short cmd ) = 0; /** Sends pixel data to the display. * @@ -334,7 +343,7 @@ * \remarks Sendin data is controller-specific and this function needs to * be implemented separately for each available controller. */ - virtual void writeData( unsigned short data ) = 0; + virtual void WriteData( unsigned short data ) = 0; /** Sends both command and data to the display controller. * @@ -344,7 +353,7 @@ * \param cmd The display command. * \param data The display pixel data. */ - virtual void writeCmdData( unsigned short cmd, unsigned short data ); + virtual void WriteCmdData( unsigned short cmd, unsigned short data ); /** Assigns a chunk of the display memory to receive data. * @@ -362,16 +371,63 @@ * \remarks Addressing commands are controller-specific and this function needs to be * implemented separately for each available controller. */ - virtual void setXY( uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2 ) = 0; + virtual void SetXY( uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2 ) = 0; /** Resets the memory address for the next display write operation to the screen origins (0,0). */ - virtual void clearXY( void ); + virtual void ClearXY( void ); + + /** Draws a horizontal line. + * + * This is a utility function to draw horizontal-only lines + * for reduced code complexity and faster execution. + * + * \param x X coordinate of the starting point of the line. + * \param y Y coordinate of the starting point of the line. + * \param len Length of the line. + * \param color The color to use to draw the line. By default the global foreground color is used ( -2 ), + * -1 switches to the default background color, or any other RGB-565 color can be used. + */ + virtual void DrawHLine( unsigned short x, unsigned short y, unsigned short len, int color = -2 ); - virtual void drawHLine( unsigned short x, unsigned short y, unsigned short len, int color = -2 ); - virtual void drawVLine( unsigned short x, unsigned short y, unsigned short len, int color = -2 ); - virtual void printChar( char c, unsigned short x, unsigned short y, int fgColor = -2, int bgColor = -1 ); - virtual void rotateChar( char c, unsigned short x, unsigned short y, int pos, int fgColor = -2, int bgColor = -1, unsigned short deg = 0 ); + /** Draws a vertical line. + * + * This is a utility function to draw vertical-only lines + * for reduced code complexity and faster execution. + * + * \param x X coordinate of the starting point of the line. + * \param y Y coordinate of the starting point of the line. + * \param len Height of the line. + * \param color The color to use to draw the line. By default the global foreground color is used ( -2 ), + * -1 switches to the default background color, or any other RGB-565 color can be used. + */ + virtual void DrawVLine( unsigned short x, unsigned short y, unsigned short len, int color = -2 ); + + /** Prints a character at the given position and using the given color. + * + * \param c The character. + * \param x X coordinate of the character position. + * \param y Y coordinate of the character position. + * \param fgColor Foreground color for drawing. By default the global foreground color is used ( -2 ), + * -1 switches to the default background color, or any other RGB-565 color can be used. + * \param bgColor Background color for drawing. By default the global background color is used ( -1 ), + * -2 switches to the default foreground color, or any other RGB-565 color can be used. + */ + virtual void PrintChar( char c, unsigned short x, unsigned short y, int fgColor = -2, int bgColor = -1 ); + + /** Prints a character at the given position and using the given color and with the given rotation. + * + * \param c The character. + * \param x X coordinate of the character position. + * \param y Y coordinate of the character position. + * \param pos Position of the character in the string from which it originates (used to rotate a whole string). + * \param fgColor Foreground color for drawing. By default the global foreground color is used ( -2 ), + * -1 switches to the default background color, or any other RGB-565 color can be used. + * \param bgColor Background color for drawing. By default the global background color is used ( -1 ), + * -2 switches to the default foreground color, or any other RGB-565 color can be used. + * \param deg The angle at which to rotate. + */ + 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;