KSM edits to RA8875

Dependents:   Liz_Test_Code

Committer:
WiredHome
Date:
Fri Dec 26 21:34:28 2014 +0000
Revision:
77:9206c13aa527
Parent:
42:7cbdfd2bbfc5
Child:
79:544eb4964795
Functioning touch panel updates - added method for calibration and a new API to get the touch in the "display" coordinate system.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
WiredHome 31:c72e12cd5c67 1 #ifndef DISPLAYDEFS_H
WiredHome 31:c72e12cd5c67 2 #define DISPLAYDEFS_H
WiredHome 31:c72e12cd5c67 3
WiredHome 32:0e4f2ae512e2 4 #define RGB(r,g,b) ( ((r<<8)&0xF800) | ((g<<3)&0x07E0) | (b>>3) )
WiredHome 32:0e4f2ae512e2 5
WiredHome 31:c72e12cd5c67 6 typedef uint16_t color_t;
WiredHome 31:c72e12cd5c67 7
WiredHome 31:c72e12cd5c67 8 /// return values from functions
WiredHome 31:c72e12cd5c67 9 typedef enum
WiredHome 31:c72e12cd5c67 10 {
WiredHome 31:c72e12cd5c67 11 noerror, ///< no errors, command completed successfully
WiredHome 77:9206c13aa527 12 no_touch = noerror,
WiredHome 31:c72e12cd5c67 13 bad_parameter, ///< one or more parameters are invalid
WiredHome 31:c72e12cd5c67 14 file_not_found, ///< specified file could not be found
WiredHome 42:7cbdfd2bbfc5 15 not_bmp_format, ///< file is not a .bmp file
WiredHome 42:7cbdfd2bbfc5 16 not_ico_format, ///< file is not a .ico file
WiredHome 31:c72e12cd5c67 17 not_supported_format, ///< file format is not yet supported
WiredHome 31:c72e12cd5c67 18 image_too_big, ///< image is too large for the screen
WiredHome 31:c72e12cd5c67 19 not_enough_ram, ///< could not allocate ram for scanline
WiredHome 77:9206c13aa527 20 touch,
WiredHome 31:c72e12cd5c67 21 } RetCode_t;
WiredHome 31:c72e12cd5c67 22
WiredHome 37:f19b7e7449dc 23 /// type that manages locations, which is typically an x or y pixel location,
WiredHome 37:f19b7e7449dc 24 /// which can range from -N to +N (even if the screen is 0 to +n). @see textloc_t.
WiredHome 37:f19b7e7449dc 25 typedef int16_t loc_t;
WiredHome 37:f19b7e7449dc 26
WiredHome 37:f19b7e7449dc 27 /// type that manages text locations, which are row or column values in
WiredHome 37:f19b7e7449dc 28 /// units of character, not pixel. @see loc_t.
WiredHome 37:f19b7e7449dc 29 typedef uint16_t textloc_t;
WiredHome 37:f19b7e7449dc 30
WiredHome 37:f19b7e7449dc 31 /// type that manages dimensions of width or height, which range from 0 to N.
WiredHome 37:f19b7e7449dc 32 typedef uint16_t dim_t;
WiredHome 37:f19b7e7449dc 33
WiredHome 32:0e4f2ae512e2 34 /// type that manages x,y pairs
WiredHome 32:0e4f2ae512e2 35 typedef struct
WiredHome 32:0e4f2ae512e2 36 {
WiredHome 37:f19b7e7449dc 37 loc_t x; ///< x value in the point
WiredHome 37:f19b7e7449dc 38 loc_t y; ///< y value in the point
WiredHome 32:0e4f2ae512e2 39 } point_t;
WiredHome 32:0e4f2ae512e2 40
WiredHome 77:9206c13aa527 41 typedef struct
WiredHome 77:9206c13aa527 42 {
WiredHome 77:9206c13aa527 43 int32_t An, Bn, Cn, Dn, En, Fn, Divider;
WiredHome 77:9206c13aa527 44 } tpMatrix_t;
WiredHome 77:9206c13aa527 45
WiredHome 32:0e4f2ae512e2 46 /// color type definition to let the compiler help keep us honest.
WiredHome 32:0e4f2ae512e2 47 ///
WiredHome 32:0e4f2ae512e2 48 /// colors can be defined with the RGB(r,g,b) macro, and there
WiredHome 32:0e4f2ae512e2 49 /// are a number of predefined colors:
WiredHome 32:0e4f2ae512e2 50 /// - Black, Blue, Green, Cyan,
WiredHome 32:0e4f2ae512e2 51 /// - Red, Magenta, Brown, Gray,
WiredHome 32:0e4f2ae512e2 52 /// - Charcoal, BrightBlue, BrightGreen, BrightCyan,
WiredHome 32:0e4f2ae512e2 53 /// - Orange, Pink, Yellow, White
WiredHome 32:0e4f2ae512e2 54 ///
WiredHome 32:0e4f2ae512e2 55 typedef uint16_t color_t;
WiredHome 32:0e4f2ae512e2 56
WiredHome 32:0e4f2ae512e2 57 /// background fill info for drawing Text, Rectangles, RoundedRectanges, Circles, Ellipses and Triangles.
WiredHome 32:0e4f2ae512e2 58 typedef enum
WiredHome 32:0e4f2ae512e2 59 {
WiredHome 32:0e4f2ae512e2 60 NOFILL, ///< do not fill the object with the background color
WiredHome 32:0e4f2ae512e2 61 FILL ///< fill the object space with the background color
WiredHome 32:0e4f2ae512e2 62 } fill_t;
WiredHome 32:0e4f2ae512e2 63
WiredHome 31:c72e12cd5c67 64 #endif // DISPLAYDEFS_H