]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_A5_SAMA5D4x_EK_IAR/AtmelFiles/libboard_sama5d4x-ek/include/lcd_font.h
Core kernel files:
[freertos] / FreeRTOS / Demo / CORTEX_A5_SAMA5D4x_EK_IAR / AtmelFiles / libboard_sama5d4x-ek / include / lcd_font.h
1 /* ----------------------------------------------------------------------------\r
2  *         SAM Software Package License \r
3  * ----------------------------------------------------------------------------\r
4  * Copyright (c) 2011, Atmel Corporation\r
5  *\r
6  * All rights reserved.\r
7  *\r
8  * Redistribution and use in source and binary forms, with or without\r
9  * modification, are permitted provided that the following conditions are met:\r
10  *\r
11  * - Redistributions of source code must retain the above copyright notice,\r
12  * this list of conditions and the disclaimer below.\r
13  *\r
14  * Atmel's name may not be used to endorse or promote products derived from\r
15  * this software without specific prior written permission.\r
16  *\r
17  * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR\r
18  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r
19  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE\r
20  * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,\r
21  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\r
22  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,\r
23  * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\r
24  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\r
25  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\r
26  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
27  * ----------------------------------------------------------------------------\r
28  */\r
29 \r
30 /**\r
31  * \file\r
32  *\r
33  * Interface for draw font on LCD.\r
34  *\r
35  */\r
36 \r
37 /**\r
38  * \addtogroup lcdd_font LCD Font Drawing\r
39  *\r
40  * \section Purpose\r
41  *\r
42  * The lcd_font.h files declares a font structure and a LCDD_DrawChar() function\r
43  * that must be implemented by a font definition file to be used with the\r
44  * LCDD_DrawString() method of draw.h.\r
45  *\r
46  * The font10x14.c implements the necessary variable and function for a 10x14\r
47  * font.\r
48  *\r
49  * \note Before drawing fonts, <b>canvas</b> should be selected via\r
50  *       LCDD_SelectCanvas(), or created by LCDD_CreateCanvas().\r
51  *\r
52  * \section Usage\r
53  *\r
54  * -# Declare a gFont global variable with the necessary Font information.\r
55  * -# Implement an LCDD_DrawChar() function which displays the specified\r
56  *    character on the LCD.\r
57  * -# Select or create canvas via LCDD_SelectCanvas() or LCDD_CreateCanvas().\r
58  * -# Use the LCDD_DrawString() method defined in draw.h to display a complete\r
59  *    string.\r
60  *\r
61  * \sa \ref lcdd_module, \ref lcdd_draw.\r
62  */\r
63 \r
64 #ifndef _LCD_FONT_\r
65 #define _LCD_FONT_\r
66 /** \addtogroup lcdd_font\r
67  *@{\r
68  */\r
69 \r
70 /*----------------------------------------------------------------------------\r
71  *        Headers\r
72  *----------------------------------------------------------------------------*/\r
73 \r
74 #include <stdint.h>\r
75 \r
76 /*----------------------------------------------------------------------------\r
77  *        Types\r
78  *----------------------------------------------------------------------------*/\r
79 \r
80 /** \brief Describes the font (width, height, supported characters, etc.) used by\r
81  * the LCD driver draw API.\r
82  */\r
83 typedef struct _Font {\r
84     /* Font width in pixels. */\r
85     uint8_t width;\r
86     /* Font height in pixels. */\r
87     uint8_t height;\r
88 } Font;\r
89 \r
90 /*----------------------------------------------------------------------------\r
91  *        Variables\r
92  *----------------------------------------------------------------------------*/\r
93 \r
94 extern const Font gFont;\r
95 \r
96 /*----------------------------------------------------------------------------\r
97  *        Exported functions\r
98  *----------------------------------------------------------------------------*/\r
99 /** \addtogroup lcdd_font_func Font Functions */\r
100 /** @{*/\r
101 \r
102 extern void LCDD_DrawChar( uint32_t x, uint32_t y, uint8_t c, uint32_t color ) ;\r
103 \r
104 extern void LCDD_DrawCharWithBGColor( uint32_t x, uint32_t y, uint8_t c, uint32_t fontColor, uint32_t bgColor );\r
105 /** @}*/\r
106 /**@}*/\r
107 #endif /* #ifndef LCD_FONT_ */\r
108 \r