Initial version for Modtronix LCD2S I2C and SPI serial LCD displays. For details, see http://modtronix.com/products-serial-lcd-board/
lcd2s.h@2:fe0c1e27f362, 2015-08-07 (annotated)
- Committer:
- modtronix
- Date:
- Fri Aug 07 18:27:11 2015 +1000
- Revision:
- 2:fe0c1e27f362
- Parent:
- 1:429b7d3f7b95
Improvements
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
modtronix | 1:429b7d3f7b95 | 1 | /** |
modtronix | 1:429b7d3f7b95 | 2 | * File: lcd2s.h |
modtronix | 1:429b7d3f7b95 | 3 | * |
modtronix | 1:429b7d3f7b95 | 4 | * Author: Modtronix Engineering - www.modtronix.com |
modtronix | 1:429b7d3f7b95 | 5 | * |
modtronix | 1:429b7d3f7b95 | 6 | * Description: |
modtronix | 1:429b7d3f7b95 | 7 | * |
modtronix | 1:429b7d3f7b95 | 8 | * Software License Agreement: |
modtronix | 1:429b7d3f7b95 | 9 | * This software has been written or modified by Modtronix Engineering. The code |
modtronix | 1:429b7d3f7b95 | 10 | * may be modified and can be used free of charge for commercial and non commercial |
modtronix | 1:429b7d3f7b95 | 11 | * applications. If this is modified software, any license conditions from original |
modtronix | 1:429b7d3f7b95 | 12 | * software also apply. Any redistribution must include reference to 'Modtronix |
modtronix | 1:429b7d3f7b95 | 13 | * Engineering' and web link(www.modtronix.com) in the file header. |
modtronix | 1:429b7d3f7b95 | 14 | * |
modtronix | 1:429b7d3f7b95 | 15 | * THIS SOFTWARE IS PROVIDED IN AN 'AS IS' CONDITION. NO WARRANTIES, WHETHER EXPRESS, |
modtronix | 1:429b7d3f7b95 | 16 | * IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF |
modtronix | 1:429b7d3f7b95 | 17 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. THE |
modtronix | 1:429b7d3f7b95 | 18 | * COMPANY SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL OR |
modtronix | 1:429b7d3f7b95 | 19 | * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. |
modtronix | 1:429b7d3f7b95 | 20 | */ |
modtronix | 1:429b7d3f7b95 | 21 | |
modtronix | 1:429b7d3f7b95 | 22 | #ifndef MODTRONIX_LCD2S_LCD2S_H_ |
modtronix | 1:429b7d3f7b95 | 23 | #define MODTRONIX_LCD2S_LCD2S_H_ |
modtronix | 1:429b7d3f7b95 | 24 | |
modtronix | 1:429b7d3f7b95 | 25 | #include "mbed.h" |
modtronix | 1:429b7d3f7b95 | 26 | |
modtronix | 2:fe0c1e27f362 | 27 | #ifndef WEAK |
modtronix | 2:fe0c1e27f362 | 28 | #if defined (__ICCARM__) |
modtronix | 2:fe0c1e27f362 | 29 | #define WEAK __weak |
modtronix | 2:fe0c1e27f362 | 30 | #else |
modtronix | 2:fe0c1e27f362 | 31 | #define WEAK __attribute__((weak)) |
modtronix | 2:fe0c1e27f362 | 32 | #endif |
modtronix | 2:fe0c1e27f362 | 33 | #endif |
modtronix | 2:fe0c1e27f362 | 34 | |
modtronix | 2:fe0c1e27f362 | 35 | |
modtronix | 1:429b7d3f7b95 | 36 | //LCD2S Commands |
modtronix | 1:429b7d3f7b95 | 37 | /** Cursor moves backwards, no parameters */ |
modtronix | 1:429b7d3f7b95 | 38 | #define LCD2S_CMD_CURSOR_MOVES_BACKWARDS 0x01 |
modtronix | 1:429b7d3f7b95 | 39 | |
modtronix | 1:429b7d3f7b95 | 40 | /** Cursor moves forward, no parameters */ |
modtronix | 1:429b7d3f7b95 | 41 | #define LCD2S_CMD_CURSOR_MOVES_FORWARD 0x09 |
modtronix | 1:429b7d3f7b95 | 42 | |
modtronix | 1:429b7d3f7b95 | 43 | /** Blink Block cursor off, No parameters */ |
modtronix | 1:429b7d3f7b95 | 44 | #define LCD2S_CMD_BLINK_BLOCK_CURSOR_OFF 0x10 |
modtronix | 1:429b7d3f7b95 | 45 | |
modtronix | 1:429b7d3f7b95 | 46 | /** Underline cursor on, No parameters */ |
modtronix | 1:429b7d3f7b95 | 47 | #define LCD2S_CMD_UNDERLINE_CURSOR_ON 0x19 |
modtronix | 1:429b7d3f7b95 | 48 | |
modtronix | 1:429b7d3f7b95 | 49 | /** Display on, No parameters */ |
modtronix | 1:429b7d3f7b95 | 50 | #define LCD2S_CMD_DISPLAY_ON 0x1A |
modtronix | 1:429b7d3f7b95 | 51 | |
modtronix | 1:429b7d3f7b95 | 52 | /** Display off, No parameters */ |
modtronix | 1:429b7d3f7b95 | 53 | #define LCD2S_CMD_DISPLAY_OFF 0x12 |
modtronix | 1:429b7d3f7b95 | 54 | |
modtronix | 1:429b7d3f7b95 | 55 | /** Configure interrupt pin as a push-pull output (not open collector), No parameters */ |
modtronix | 1:429b7d3f7b95 | 56 | #define LCD2S_CMD_INTERRUPT_PIN_PUSH_PULL 0x22 |
modtronix | 1:429b7d3f7b95 | 57 | |
modtronix | 1:429b7d3f7b95 | 58 | /** Backlight on, No parameters */ |
modtronix | 1:429b7d3f7b95 | 59 | #define LCD2S_CMD_BACKLIGHT_ON 0x28 |
modtronix | 1:429b7d3f7b95 | 60 | |
modtronix | 1:429b7d3f7b95 | 61 | /** Backlight off, No parameter */ |
modtronix | 1:429b7d3f7b95 | 62 | #define LCD2S_CMD_BACKLIGHT_OFF 0x20 |
modtronix | 1:429b7d3f7b95 | 63 | |
modtronix | 1:429b7d3f7b95 | 64 | /** OUT1 off, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 65 | #define LCD2S_CMD_OUT1_OFF 0x30 |
modtronix | 1:429b7d3f7b95 | 66 | |
modtronix | 1:429b7d3f7b95 | 67 | /** OUT2 off, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 68 | #define LCD2S_CMD_OUT2_OFF 0x31 |
modtronix | 1:429b7d3f7b95 | 69 | |
modtronix | 1:429b7d3f7b95 | 70 | /** OUT1 on, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 71 | #define LCD2S_CMD_OUT1_ON 0x38 |
modtronix | 1:429b7d3f7b95 | 72 | |
modtronix | 1:429b7d3f7b95 | 73 | /** OU21 on, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 74 | #define LCD2S_CMD_OUT2_ON 0x39 |
modtronix | 1:429b7d3f7b95 | 75 | |
modtronix | 1:429b7d3f7b95 | 76 | /** GPIO1 off, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 77 | #define LCD2S_CMD_GPIO1_OFF 0x40 |
modtronix | 1:429b7d3f7b95 | 78 | |
modtronix | 1:429b7d3f7b95 | 79 | /** GPIO2 off, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 80 | #define LCD2S_CMD_GPIO2_OFF 0x41 |
modtronix | 1:429b7d3f7b95 | 81 | |
modtronix | 1:429b7d3f7b95 | 82 | /** GPIO1 on, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 83 | #define LCD2S_CMD_GPIO1_ON 0x48 |
modtronix | 1:429b7d3f7b95 | 84 | |
modtronix | 1:429b7d3f7b95 | 85 | /** GPIO2 on, No parameterss */ |
modtronix | 1:429b7d3f7b95 | 86 | #define LCD2S_CMD_GPIO2_ON 0x49 |
modtronix | 1:429b7d3f7b95 | 87 | |
modtronix | 1:429b7d3f7b95 | 88 | /** Write string, string to follow */ |
modtronix | 1:429b7d3f7b95 | 89 | #define LCD2S_CMD_WRITE_STRING 0x80 |
modtronix | 1:429b7d3f7b95 | 90 | |
modtronix | 1:429b7d3f7b95 | 91 | /** Set Backlight, byte to follow (0-255) */ |
modtronix | 1:429b7d3f7b95 | 92 | #define LCD2S_CMD_SET_BACKLIGHT 0x81 |
modtronix | 1:429b7d3f7b95 | 93 | |
modtronix | 1:429b7d3f7b95 | 94 | /** Set contrast, byte to follow (0-254) */ |
modtronix | 1:429b7d3f7b95 | 95 | #define LCD2S_CMD_SET_CONTRAST 0x82 |
modtronix | 1:429b7d3f7b95 | 96 | |
modtronix | 1:429b7d3f7b95 | 97 | /** Move cursor right, no parameters */ |
modtronix | 1:429b7d3f7b95 | 98 | #define LCD2S_CMD_MOVE_CURSOR_RIGHT 0x83 |
modtronix | 1:429b7d3f7b95 | 99 | |
modtronix | 1:429b7d3f7b95 | 100 | /** Move cursor left, no parameters */ |
modtronix | 1:429b7d3f7b95 | 101 | #define LCD2S_CMD_MOVE_CURSOR_LEFT 0x84 |
modtronix | 1:429b7d3f7b95 | 102 | |
modtronix | 1:429b7d3f7b95 | 103 | /** Shift display right, No parameters */ |
modtronix | 1:429b7d3f7b95 | 104 | #define LCD2S_CMD_SHIFT_DISPLAY_RIGHT 0x85 |
modtronix | 1:429b7d3f7b95 | 105 | |
modtronix | 1:429b7d3f7b95 | 106 | /** Shift display left, No parameters */ |
modtronix | 1:429b7d3f7b95 | 107 | #define LCD2S_CMD_SHIFT_DISPLAY_LEFT 0x86 |
modtronix | 1:429b7d3f7b95 | 108 | |
modtronix | 1:429b7d3f7b95 | 109 | /** Shift display up, No parameters */ |
modtronix | 1:429b7d3f7b95 | 110 | #define LCD2S_CMD_SHIFT_DISPLAY_UP 0x85 |
modtronix | 1:429b7d3f7b95 | 111 | |
modtronix | 1:429b7d3f7b95 | 112 | /** Shift display down, No parameters */ |
modtronix | 1:429b7d3f7b95 | 113 | #define LCD2S_CMD_SHIFT_DISPLAY_DOWN 0x86 |
modtronix | 1:429b7d3f7b95 | 114 | |
modtronix | 1:429b7d3f7b95 | 115 | /** Set cursor address, byte to follow (0-254) */ |
modtronix | 1:429b7d3f7b95 | 116 | #define LCD2S_CMD_SET_CURSOR_ADDRESS 0x89 |
modtronix | 1:429b7d3f7b95 | 117 | |
modtronix | 1:429b7d3f7b95 | 118 | /** Set cursor address, next byte is row (1-n), next byte is column (1-n) */ |
modtronix | 1:429b7d3f7b95 | 119 | #define LCD2S_CMD_SET_CURSOR_POSITION 0x8A |
modtronix | 1:429b7d3f7b95 | 120 | |
modtronix | 1:429b7d3f7b95 | 121 | /** Clear Display, No parameters */ |
modtronix | 1:429b7d3f7b95 | 122 | #define LCD2S_CMD_CLEAR_DISPLAY 0x8C |
modtronix | 1:429b7d3f7b95 | 123 | |
modtronix | 1:429b7d3f7b95 | 124 | /** Remember next command, No parameters */ |
modtronix | 1:429b7d3f7b95 | 125 | #define LCD2S_CMD_REMEMBER 0x8D |
modtronix | 1:429b7d3f7b95 | 126 | |
modtronix | 1:429b7d3f7b95 | 127 | /** Set I2C base address, next byte is character set code (0=vert bar graph, 1=nrw v.bar graph, 2=larg num) */ |
modtronix | 1:429b7d3f7b95 | 128 | #define LCD2S_CMD_LOAD_CUSTOM_CHAR_SET 0x8E |
modtronix | 1:429b7d3f7b95 | 129 | |
modtronix | 1:429b7d3f7b95 | 130 | /** Write large number string, string to follow with numbers (0 1 2 3 4 5 6 7 8 9 . : space) */ |
modtronix | 1:429b7d3f7b95 | 131 | #define LCD2S_CMD_WRITE_LARGE_NUM_STING 0x8F |
modtronix | 1:429b7d3f7b95 | 132 | |
modtronix | 1:429b7d3f7b95 | 133 | /** Set startup screen for a single line. Next byte is line number (1-4), followed by string (message for that line */ |
modtronix | 1:429b7d3f7b95 | 134 | #define LCD2S_CMD_SET_STARTUP_SCREEN 0x90 |
modtronix | 1:429b7d3f7b95 | 135 | |
modtronix | 1:429b7d3f7b95 | 136 | /** Set I2C base address, next byte is address */ |
modtronix | 1:429b7d3f7b95 | 137 | #define LCD2S_CMD_SET_I2C_BASE_ADR 0x91 |
modtronix | 1:429b7d3f7b95 | 138 | |
modtronix | 1:429b7d3f7b95 | 139 | /** Set I2C base address, next byte is adr (0-7), next 8 bytes are pixels */ |
modtronix | 1:429b7d3f7b95 | 140 | #define LCD2S_CMD_DEFINE_CUSTOM_CHAR 0x92 |
modtronix | 1:429b7d3f7b95 | 141 | |
modtronix | 1:429b7d3f7b95 | 142 | /** Draw vert. bar graph, next byte is row (1-n), next byte is column (1-n), next byte is height (0-8) */ |
modtronix | 1:429b7d3f7b95 | 143 | #define LCD2S_CMD_DRAW_VERT_BAR_GRAPH 0x93 |
modtronix | 1:429b7d3f7b95 | 144 | |
modtronix | 1:429b7d3f7b95 | 145 | /** Draw tall vert. bar graph (span 2 rows), next byte is row (1-n), next byte is column (1-n), next byte is height (0-8) */ |
modtronix | 1:429b7d3f7b95 | 146 | #define LCD2S_CMD_DRAW_TALL_VERT_BAR_GRAPH 0x94 |
modtronix | 1:429b7d3f7b95 | 147 | |
modtronix | 1:429b7d3f7b95 | 148 | /** Configure device, followed by 4 bytes */ |
modtronix | 1:429b7d3f7b95 | 149 | #define LCD2S_CMD_CONFIG_DEVICE 0x95 |
modtronix | 1:429b7d3f7b95 | 150 | |
modtronix | 1:429b7d3f7b95 | 151 | /** Set keypad repeat delay, byte to follow is 16ms multiples time (1-100 = 16-1600ms) */ |
modtronix | 1:429b7d3f7b95 | 152 | #define LCD2S_CMD_SET_KEYPAD_REPEAT_DELAY 0xA0 |
modtronix | 1:429b7d3f7b95 | 153 | |
modtronix | 1:429b7d3f7b95 | 154 | /** Set keypad repeat rate, byte to follow is 16ms multiples time (1-100 = 16-1600ms) */ |
modtronix | 1:429b7d3f7b95 | 155 | #define LCD2S_CMD_SET_KEYPAD_REPEAT_RATE 0xA1 |
modtronix | 1:429b7d3f7b95 | 156 | |
modtronix | 1:429b7d3f7b95 | 157 | /** Set keypad buzzer period, byte to follow is 16ms multiples time (1-100 = 16-1600ms) */ |
modtronix | 1:429b7d3f7b95 | 158 | #define LCD2S_CMD_SET_KEYPAD_BUZZER_PERIOD 0xA2 |
modtronix | 1:429b7d3f7b95 | 159 | |
modtronix | 1:429b7d3f7b95 | 160 | /** Set maximum brightness, byte to follow (1-255) */ |
modtronix | 1:429b7d3f7b95 | 161 | #define LCD2S_CMD_MAX_BACKLIGHT 0xA3 |
modtronix | 1:429b7d3f7b95 | 162 | |
modtronix | 1:429b7d3f7b95 | 163 | /** Get status. Next byte read is status. Bit 7 indicates if keypad buffer contains data (keys). Bits 0-6 = receive buffer space available. */ |
modtronix | 1:429b7d3f7b95 | 164 | #define LCD2S_CMD_GET_STATUS 0xD0 |
modtronix | 1:429b7d3f7b95 | 165 | |
modtronix | 1:429b7d3f7b95 | 166 | /** Read next key from buffer. Next byte read is key */ |
modtronix | 1:429b7d3f7b95 | 167 | #define LCD2S_CMD_GET_KEY 0xD1 |
modtronix | 1:429b7d3f7b95 | 168 | |
modtronix | 1:429b7d3f7b95 | 169 | /** Read GPIO1, GPIO2 and GPIO3. Next byte read is values in bits 0 - 2 */ |
modtronix | 1:429b7d3f7b95 | 170 | #define LCD2S_CMD_GET_GPIO1_TO_GPIO3 0xD3 |
modtronix | 1:429b7d3f7b95 | 171 | |
modtronix | 1:429b7d3f7b95 | 172 | /** Configure keypad and IO, byte to follow */ |
modtronix | 1:429b7d3f7b95 | 173 | #define LCD2S_CMD_CONFIG_KEYPAD_AND_IO 0xE0 |
modtronix | 1:429b7d3f7b95 | 174 | |
modtronix | 1:429b7d3f7b95 | 175 | /** Set keypad debounce time, byte to follow is 8ms multiples time (1-15 = 8-120ms) */ |
modtronix | 1:429b7d3f7b95 | 176 | #define LCD2S_CMD_SET_KEYPAD_DEBOUNCE_TIME 0xE1 |
modtronix | 1:429b7d3f7b95 | 177 | |
modtronix | 1:429b7d3f7b95 | 178 | /** Set OUT1 and OUT2, byte to follow is value (bit 0=OUT1, bit 1=OUT2) */ |
modtronix | 1:429b7d3f7b95 | 179 | #define LCD2S_CMD_SET_OUT1_AND_OUT2 0xE2 |
modtronix | 1:429b7d3f7b95 | 180 | |
modtronix | 1:429b7d3f7b95 | 181 | /** Configure GPIO1, byte to follow */ |
modtronix | 1:429b7d3f7b95 | 182 | #define LCD2S_CMD_CONFIG_GPIO1 0xE3 |
modtronix | 1:429b7d3f7b95 | 183 | |
modtronix | 1:429b7d3f7b95 | 184 | /** Configure GPIO1, byte to follow */ |
modtronix | 1:429b7d3f7b95 | 185 | #define LCD2S_CMD_CONFIG_GPIO2 0xE4 |
modtronix | 1:429b7d3f7b95 | 186 | |
modtronix | 1:429b7d3f7b95 | 187 | |
modtronix | 1:429b7d3f7b95 | 188 | class LCD2S : public Stream { |
modtronix | 1:429b7d3f7b95 | 189 | public: |
modtronix | 1:429b7d3f7b95 | 190 | LCD2S(uint8_t rows = 4, uint8_t columns = 20); |
modtronix | 1:429b7d3f7b95 | 191 | |
modtronix | 1:429b7d3f7b95 | 192 | // Stream implementation - provides printf() interface |
modtronix | 1:429b7d3f7b95 | 193 | // You would otherwise be forced to use writeChar() |
modtronix | 1:429b7d3f7b95 | 194 | virtual int _putc(int value) { return writeChar(value); }; |
modtronix | 1:429b7d3f7b95 | 195 | virtual int _getc() { return -1; }; |
modtronix | 1:429b7d3f7b95 | 196 | |
modtronix | 1:429b7d3f7b95 | 197 | /** Initializes the LCD2S device with default values |
modtronix | 1:429b7d3f7b95 | 198 | * - Interrupt pin is Open Collector output type |
modtronix | 1:429b7d3f7b95 | 199 | * - Backlight On |
modtronix | 1:429b7d3f7b95 | 200 | * - Display On |
modtronix | 1:429b7d3f7b95 | 201 | * - Backlight 200 (value from 0 to 255) |
modtronix | 1:429b7d3f7b95 | 202 | * - Cursor off, block cursor off |
modtronix | 1:429b7d3f7b95 | 203 | * - Cursor moves forward |
modtronix | 1:429b7d3f7b95 | 204 | * - Keypad is 4x4 button type (if present) |
modtronix | 1:429b7d3f7b95 | 205 | * - OUT1 disabled |
modtronix | 1:429b7d3f7b95 | 206 | * - GPIO1 to 3 disabled |
modtronix | 1:429b7d3f7b95 | 207 | * - Keypad Buzzer off |
modtronix | 1:429b7d3f7b95 | 208 | * - Keypad repeat rate = 320ms |
modtronix | 1:429b7d3f7b95 | 209 | * - Keypad Repeat Delay = 1 second |
modtronix | 1:429b7d3f7b95 | 210 | * - Keypad Debounce Time = 64ms |
modtronix | 1:429b7d3f7b95 | 211 | * |
modtronix | 1:429b7d3f7b95 | 212 | * @param contrast The display contrast, a value from 0 to 255 |
modtronix | 1:429b7d3f7b95 | 213 | */ |
modtronix | 1:429b7d3f7b95 | 214 | virtual void initDefault(uint8_t contrast) = 0; |
modtronix | 1:429b7d3f7b95 | 215 | |
modtronix | 1:429b7d3f7b95 | 216 | /** Causes the display to be updated with buffer content |
modtronix | 2:fe0c1e27f362 | 217 | * |
modtronix | 2:fe0c1e27f362 | 218 | * @return 0 if success, else error code |
modtronix | 1:429b7d3f7b95 | 219 | */ |
modtronix | 2:fe0c1e27f362 | 220 | virtual uint8_t display() = 0; |
modtronix | 1:429b7d3f7b95 | 221 | |
modtronix | 1:429b7d3f7b95 | 222 | void clearDisplay(); |
modtronix | 1:429b7d3f7b95 | 223 | |
modtronix | 1:429b7d3f7b95 | 224 | /** Set the text cursor location, based on the size of the text |
modtronix | 1:429b7d3f7b95 | 225 | * |
modtronix | 1:429b7d3f7b95 | 226 | * @param row A value from 1-n |
modtronix | 1:429b7d3f7b95 | 227 | * @param col A value from 1-n |
modtronix | 1:429b7d3f7b95 | 228 | */ |
modtronix | 1:429b7d3f7b95 | 229 | void setCursor(int8_t row, int8_t col); |
modtronix | 1:429b7d3f7b95 | 230 | |
modtronix | 1:429b7d3f7b95 | 231 | virtual int writeChar(uint8_t c) = 0; |
modtronix | 1:429b7d3f7b95 | 232 | |
modtronix | 1:429b7d3f7b95 | 233 | // virtual void write(const char* str) = 0; |
modtronix | 1:429b7d3f7b95 | 234 | |
modtronix | 1:429b7d3f7b95 | 235 | protected: |
modtronix | 1:429b7d3f7b95 | 236 | uint8_t* pBuf; //Display buffer |
modtronix | 1:429b7d3f7b95 | 237 | uint16_t bufSize; //Sixe of display buffer, is rows * columns by default |
modtronix | 1:429b7d3f7b95 | 238 | uint8_t rows; //Number of rows that this display has |
modtronix | 1:429b7d3f7b95 | 239 | uint8_t columns; //Number of columns that this display has |
modtronix | 1:429b7d3f7b95 | 240 | uint8_t cursor_row; //Current row, a value from 0 to (rows-1) |
modtronix | 1:429b7d3f7b95 | 241 | uint8_t cursor_col; //Current column, a value from 0 to (columns-1) |
modtronix | 1:429b7d3f7b95 | 242 | uint8_t brightness; |
modtronix | 1:429b7d3f7b95 | 243 | uint8_t contrast; |
modtronix | 1:429b7d3f7b95 | 244 | |
modtronix | 1:429b7d3f7b95 | 245 | uint32_t* pDirtyRows; //Each bit indicates if any characters are dirty in row |
modtronix | 1:429b7d3f7b95 | 246 | }; |
modtronix | 1:429b7d3f7b95 | 247 | |
modtronix | 1:429b7d3f7b95 | 248 | |
modtronix | 1:429b7d3f7b95 | 249 | |
modtronix | 1:429b7d3f7b95 | 250 | #endif /* MODTRONIX_LCD2S_LCD2S_H_ */ |