| 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