HOW CREAT Custom Large Font for 16x2 LCDs

Go To Last Post
19 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

HI

How can I display large words on a character's LCD 2*16

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You can't. You would find like a lot easier with a small graphic LCD (ie pixel addressable)

 

All the LCD controller in a 2x16 allows for is the definition of eight 5x7 "custom" characters but that's not enough to define a whole large font.

 

(and no you can't define 8, draw those, define another 8, draw those and so on because as soon as you redefine the original displayed one will change too)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

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.

 

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:
a small graphic LCD (ie pixel addressable)
Something like this perhaps:

 

http://www.cwlinux.com/products/...

 

 

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.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I WANT SIMILLARY PICTURE:

Last Edited: Wed. Sep 13, 2017 - 05:10 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Don't attach the image: embed it - so that we can see it:

 

 

That, surely, is just what David described in #3 ?

 

EDIT 

 

Instructions for embedding an image: http://www.avrfreaks.net/comment...

Last Edited: Wed. Sep 13, 2017 - 04:49 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

sky_man847 wrote:

I WANT SIMILLARY PICTURE:...

 

So, as Cliff said, you have the ability to make 8 custom characters. You will need to work out how they should look to make your chosen large characters.

'This forum helps those who help themselves.'

 

pragmatic  adjective dealing with things sensibly and realistically in a way that is based on practical rather than theoretical consideration.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

sky_man847 wrote:
I WANT SIMILLARY PICTURE

So go to wherever you found that picture - and look at the code which goes with it!!

 

Or (as I just did), do a google image search on that picture - it gives plenty of examples ...

 

But, as david.prentice wrote:
You end up with some pretty ugly digits 

So why would you actually want that - when proper graphic LCDs are widely available ... ?!?!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

We had a lengthy thread here just a few months ago, discussing this very "problem". Search it out.

 

Also: The image you've shown seems to come from here; http://www.instructables.com/id/... , and that looks like a tutorial with code and schematics. What more do you need?

"He used to carry his guitar in a gunny sack, or sit beneath the tree by the railroad track. Oh the engineers would see him sitting in the shade, Strumming with the rhythm that the drivers made. People passing by, they would stop and say, "Oh, my, what that little country boy could play!" [Chuck Berry]

 

"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]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

If your goal is double-height characters, then look at the datasheet for the LCD.  It's as simple as sending an instruction to the LCD to display double-height characters.

 

If your goal is custom fonts, see above posts.

 

EDIT: added this:

Greg Muth

Portland, OR, US

Xplained Boards mostly

Atmel Studio 7.0 on Windows 10

 

Last Edited: Wed. Sep 13, 2017 - 06:42 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Greg_Muth wrote:
If your goal is double-height characters, then look at the datasheet for the LCD. It's as simple as sending an instruction to the LCD to display double-height characters.

Which controller is that?  I see nothing like that in a representative HD44780 datasheet e.g. https://cdn-shop.adafruit.com/da...

 

Perhaps a good option for OP if the controller for his LCD supports it.

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The Electronic Assembly DOG series.  Webpage.

Greg Muth

Portland, OR, US

Xplained Boards mostly

Atmel Studio 7.0 on Windows 10

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Greg_Muth wrote:
The Electronic Assembly DOG series.

??? But that ain't no 16x2 character LCD, is it?

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

theusch wrote:
??? But that ain't no 16x2 character LCD, is it?

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.

"He used to carry his guitar in a gunny sack, or sit beneath the tree by the railroad track. Oh the engineers would see him sitting in the shade, Strumming with the rhythm that the drivers made. People passing by, they would stop and say, "Oh, my, what that little country boy could play!" [Chuck Berry]

 

"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]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

theusch wrote:

??? But that ain't no 16x2 character LCD, is it?

 

8x1, 16x2, 16x3, 10x4, 20x4, etc...  128x64 pixel-addressable.

Greg Muth

Portland, OR, US

Xplained Boards mostly

Atmel Studio 7.0 on Windows 10

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

JohanEkdahl wrote:

We had a lengthy thread here just a few months ago, discussing this very "problem". Search it out.

 

Also: The image you've shown seems to come from here; http://www.instructables.com/id/... , and that looks like a tutorial with code and schematics. What more do you need?

very thank but i want for codevision avr...I want  starting to go up on lcd numbers{ 3 }[delay_ms(100);]then number{2} [delay_ms(100);] .then number{1} [delay_ms(100);] 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

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.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

sky_man847 wrote:
 i want for codevision avr 

 

Did you not read #8 and #9 ?

 

 

in #8, awneil wrote:
 do a google image search on that picture - it gives plenty of examples ...

That includes tutorials and YouTube videos showing how to do it.

 

in #9, JohanEkdahl wrote:
The image you've shown seems to come from here; http://www.instructables.com/id/... , and that looks like a tutorial with code and schematics. What more do you need?

 

Or do you expect us to do it all for you, and just hand you a working project on a plate ?

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

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.