LCDBitmap Library for Arduino Author: Tim Eckel Contact: tim@leethost.com
Release | Date | Changes |
---|---|---|
1.6 | 7/05/2012 | BITMAP_RANGE_CHK bug fix. |
1.5 | 6/28/2012 | 4bit method now works without the New LiquidCrystal? library (was always supposed to work this way, oversight on my part). Update switch now optional on all functions, defaults to NO_UPDATE. |
1.4 | 5/25/2012 | Fixed a few problems with the barGraph function. Range checking optimization. |
1.3 | 5/10/2012 | Many preformance tweaks, line function so fast that lineHor and lineVert were deprecated. Added new barGraph function. |
1.2 | 5/5/2012 | Optimized line function to no longer use float. Other speed tweaks, optional range checking, removed "magic numbers", and should work with 7 pixel high displays. |
1.1 | 5/2/2012 | Cleaned up code, works more easily with New LiquidCrystal library. |
1.0 | 5/1/2012 | Initial Release. |
Arduino library that allows you to create a tiny 20x16 pixel bitmap (raster) display on a normally character-only Hitachi HD44780 based LCD display. Typical drawing functions like line, rectangle, invert, etc. Control is right down to the pixel level.
Works with both the standard Liquid Crystal library as well as Francisco's New Liquid Crystal library. Works with LCD connection methods including: 4bit, shift register (2 or 3 wire), and I2C. In-depth example sketches are included with library download.
It works by creating a memory array for the 20x16 pixel bitmap that the functions work with. Then converting this bitmap to the 8 custom characters available with the HD44780 and displaying them as 2 rows of 4 characters at the location specified. As each character is 5x8 pixels and arranged in a 4x2 character array, the total addressable resolution is 20x16. As there's an 8 custom character limit with the HD44780, 20x16 is the maximum resolution that can be achieved (5*4=20, 8*2=16).
Connection via standard 4bit | Connection to Teensy 2.0 |
Download here: https://bitbucket.org/teckel12/arduino-lcd-bitmap/wiki/Home
LCDBitmap bitmap(*lcd, bitmap_x, bitmap_y);
Example:
LCDBitmap bitmap(&lcd, 12, 0);
This initializes LCDBitmap to cursor position 12,0 (X,Y) on LCD display (&lcd is class from LiquidCrystal).
Last Modified: | April 23, 2015, at 12:15 PM |
By: |