I am using a 16*2 lcd display as a dashboard computer. I want it to display a logo at the very beginning of the code, but some letters occupy the space of 4 characters, and are using both lines of the display, and creating those letters character by character (some actually require 6 characters) is very difficult. Is there anyway i can address the lcd as a big matrix ? there would be 16 lines ( the oringinal 2 lines * 8 lines of each character) and 80 columns (the original 16 columns * 5 columns each character has). This would make it A LOT easier.
-
Model of the display and links to technical documentation?– AltAirApr 19, 2017 at 11:11
-
The display:ebay.com/itm/… Data: sparkfun.com/datasheets/LCD/HD44780.pdf– Andrei GrigoreApr 19, 2017 at 11:13
-
In the character generator RAM, the user can rewrite character patterns by a program. Page 13 of the datasheet.– AltAirApr 19, 2017 at 11:29
-
If I remember correctly, you can create up to 8 custom characters (custom bitmap). You can then use those characters anywhere on the display. There is no way to directly set pixels.– GerbenApr 19, 2017 at 12:43
2 Answers
The chip you are using (HD44780) only works with characters; you can't address single pixels. If you read the datasheet, the word "pixel" is absent.
Of course, you can add a wrapper that implement a drawPixel(row,col)
function by defining custom characters and then sending it to the display.
The result will be unpleasent to the eye, because there is a gap between chars on screen, and another gap between rows.
A better alternative is an OLED display like this:
You can find the same display with I2C or SPI interfaces. Basic model is B&W, but you also have color and touch sensitive variants.
some letters occupy the space of 4 character
use CGRAM to define 4 characters and display them over two lines.