Look at how it is done on a Arduino. You create some User-defined characters with suitable shapes. And make a digit with these 8 user defined chars, and any "blocky" characters from the built in Font. Probably a choice of 10 suitable shapes.

You end up with some pretty ugly digits on a 20x4. And no hope of creating any usable letters.

With a 16x2 there is even less opportunity to get attractive digits.

Buy a ST7920 display. It will replace a 20x4 and give you attractive graphics.

That's actually 128x32. If you define 8x8 "normal" size character you would get 4 lines of 16 characters (8x8 is actually higher resolution than the 5x7 that a normal text 16x2 display uses). As the picture shows - because each dot can be set separately you can also do large font and graphics.

As of January 15, 2018, Site fix-up work has begun! Now do your part and report any bugs or deficiencies here.

No guarantees, but if we don't report problems they won't get much of a chance to be fixed! Details/discussions at link given just above.

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington] "Words represent concepts. Use the wrong words, communicate the wrong concept." [J Morin] "Persistence only goes so far if you set yourself up for failure." [Kartman]

Well, to be techincally correct there actually is a 16x2 text display in the DOG series that does offer double-height characters. The controller on it is a ST7036 which is "Instruction compatible to ST7066U and KS0066U and HD44780" but offers a superset o the 44780 functionality (e.g. the double-height is not supported by 44780/KS0066U). Data sheet: http://www.lcd-module.com/eng/pd... .

But yes, it is safest (and likely right) to assume that what the OP has is a 44780/KS0066U-based display and if so then Gregs "trick" won't work.

As of January 15, 2018, Site fix-up work has begun! Now do your part and report any bugs or deficiencies here.

No guarantees, but if we don't report problems they won't get much of a chance to be fixed! Details/discussions at link given just above.

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington] "Words represent concepts. Use the wrong words, communicate the wrong concept." [J Morin] "Persistence only goes so far if you set yourself up for failure." [Kartman]

If you have a regular 16x2 you can only do the blocky letters like in #6.
.
You can do it Codevision, GCC, Arduino, ... or any other language / platform.
Create the 8 building blocks. CV has an example that shows how to create a custom character.
Then put each "blocky recipe" into an array. And a printbigletter() function to display on your 16x2.
.
I suggest that you try it for yourself. If you have a problem, ask. We could do it all for you but you don't learn as well as when you try for yourself.
.
I always recommend designing your project on pencil and paper. e.g. draw each big letter with the special building blocks.
.
Good Luck.
.
David.

The "Arduino Cookbook" has a section on making large digits on an 16x2 LCD screen. It is section 11.7 Displaying Symbols Larger Than a Single Character that starts on page 349 of the book's downloadable PDF file. These big digits are quite impressive.

However to get the chars with the rounded corners like those shown in your image, it would be best to make custom characters.