Line No. | Rev | Author | Line |
---|---|---|---|
1 | 6 | kaklik | /*! \file glcd.h \brief Graphic LCD API functions. */ |
2 | //***************************************************************************** |
||
3 | // |
||
4 | // File Name : 'glcd.h' |
||
5 | // Title : Graphic LCD API functions |
||
6 | // Author : Pascal Stang - Copyright (C) 2002 |
||
7 | // Date : 5/30/2002 |
||
8 | // Revised : 5/30/2002 |
||
9 | // Version : 0.5 |
||
10 | // Target MCU : Atmel AVR |
||
11 | // Editor Tabs : 4 |
||
12 | // |
||
13 | // NOTE: This code is currently below version 1.0, and therefore is considered |
||
14 | // to be lacking in some functionality or documentation, or may not be fully |
||
15 | // tested. Nonetheless, you can expect most functions to work. |
||
16 | // |
||
17 | /// \ingroup driver_hw |
||
18 | /// \defgroup glcd Graphic LCD API (application programmer's interface) (glcd.c) |
||
19 | /// \code #include "glcd.h" \endcode |
||
20 | /// \par Overview |
||
21 | /// This library (or API) allows you to draw dots, lines, boxes, circles, |
||
22 | /// and text on most monochrome graphic LCDs. An easily expandable font file |
||
23 | /// (5x7-pixel characters) is provided for all basic ASCII characters |
||
24 | /// (0x20-0x7F hex, 32-127 decimal). An expandable graphic font file is |
||
25 | /// provided for defining specialty characters or custom icons. Because this |
||
26 | /// library is designed to work with many different kinds of LCDs, it needs a |
||
27 | /// graphic LCD driver such as ks0108.c to enable it to talk to the LCD. |
||
28 | /// |
||
29 | /// \note For full text-output functionality, you may wish to use the rprintf |
||
30 | /// functions along with this driver. |
||
31 | // |
||
32 | // This code is distributed under the GNU Public License |
||
33 | // which can be found at http://www.gnu.org/licenses/gpl.txt |
||
34 | // |
||
35 | //***************************************************************************** |
||
36 | |||
37 | #ifndef GLCD_H |
||
38 | #define GLCD_H |
||
39 | |||
40 | #ifndef WIN32 |
||
41 | // AVR specific includes |
||
42 | #include <avr/io.h> |
||
43 | #endif |
||
44 | |||
45 | #include "global.h" |
||
46 | |||
47 | #define LINE1 0 |
||
48 | #define LINE2 1 |
||
49 | #define LINE3 2 |
||
50 | #define LINE4 3 |
||
51 | #define LINE5 4 |
||
52 | #define LINE6 5 |
||
53 | #define LINE7 6 |
||
54 | #define LINE8 7 |
||
55 | |||
56 | #define ON 1 |
||
57 | #define OFF 0 |
||
58 | |||
59 | // API-level interface commands |
||
60 | // ***** Public Functions ***** |
||
61 | |||
62 | //! set a dot on the display (x is horiz 0:127, y is vert 0:63) |
||
63 | void glcdSetDot(u08 x, u08 y); |
||
64 | |||
65 | //! clear a dot on the display (x is horiz 0:127, y is vert 0:63) |
||
66 | void glcdClearDot(u08 x, u08 y); |
||
67 | |||
68 | //! draw line |
||
69 | void glcdLine(u08 x1, u08 y1, u08 x2, u08 y2); |
||
70 | |||
71 | //! draw rectangle (coords????) |
||
72 | void glcdRectangle(u08 x, u08 y, u08 a, u08 b); |
||
73 | |||
74 | //! draw circle of <radius> at <xcenter,ycenter> |
||
75 | void glcdCircle(u08 xcenter, u08 ycenter, u08 radius); |
||
76 | |||
77 | //! write a standard ascii charater (values 20-127) |
||
78 | // to the display at current position |
||
79 | void glcdWriteChar(unsigned char c); |
||
80 | |||
81 | //! write a special graphic character/icon |
||
82 | // to the display at current position |
||
83 | void glcdWriteCharGr(u08 grCharIndex); |
||
84 | |||
85 | // ***** Private Functions ***** (or depricated) |
||
86 | void glcdPutStr(u08 *data); |
||
87 | |||
88 | #endif |
Powered by WebSVN v2.8.3