where to buy font library for graphics LCD (kS0713) and PIC18F ?

Jul 08, 2004 4 Replies

Hi all,



I've been looking for a rather simple library font for a graphics LCD with a KS0713 controller. We're using the PIC18F452 with the Microchip C18 compiler. I found a couple that are rather big (Ramtex and Segger). All I need is the standard font size (5x7) and a couple of larger fonts. We are pressed for time so we rather pay for something already done ( < $1000). But, it must be simple (rom and ram are limited) and work with the C18 compiler.



Any suggestions ?



Thanks in advance


There are plenty of public domain VGA/X11 fonts available for free. You'll probably spend more time negotiating and purchasing something than using them.

formatting link

Rodo,

If all you need is a font, Here is one I used until we started using the ramtex which is an excellent product for the price BTW. For variable size fonts yer on your own. This maps out very well into the KS0713's memory.

You can find fonts and code all over the net as well. Just google KS0713 or one of the many compatible chips. LCD manufacturers often post sample code as well google "KS0713 LCD module"

I won't post the code( Its a bit to large ) but I can send it to you if you would like.

unsigned char charset[96 * 5 ] = { 0x00, 0x00, 0x00, 0x00, 0x00, // space 0x00, 0x00, 0x6f, 0x00, 0x00, // ! 0x00, 0x00, 0x07, 0x00, 0x07, // " 0x14, 0x7f, 0x14, 0x7f, 0x14, // # 0x24, 0x2a, 0x7f, 0x2a, 0x12, // $ 0x43, 0x33, 0x08, 0x66, 0x61, // % 0x32, 0x4d, 0x59, 0x21, 0x72, // & 0x00, 0x00, 0x03, 0x00, 0x00, // ' 0x00, 0x00, 0x3e, 0x41, 0x00, // ( 0x00, 0x41, 0x3e, 0x00, 0x00, // ) 0x0a, 0x0c, 0x07, 0x0c, 0x0a, // * 0x08, 0x08, 0x3e, 0x08, 0x08, // + 0x00, 0x00, 0xe0, 0x60, 0x00, // , 0x08, 0x08, 0x08, 0x08, 0x08, // - 0x00, 0x00, 0x60, 0x60, 0x00, // . 0x40, 0x30, 0x08, 0x06, 0x01, // / 0x3e, 0x45, 0x49, 0x51, 0x3e, // 0 0x00, 0x42, 0x7f, 0x40, 0x00, // 1 0x62, 0x51, 0x49, 0x45, 0x42, // 2 0x22, 0x41, 0x49, 0x49, 0x36, // 3 0x08, 0x0c, 0x0a, 0x7f, 0x08, // 4 0x2f, 0x49, 0x49, 0x49, 0x31, // 5 0x3e, 0x49, 0x49, 0x49, 0x32, // 6 0x01, 0x71, 0x09, 0x05, 0x03, // 7 0x36, 0x49, 0x49, 0x49, 0x36, // 8 0x26, 0x49, 0x49, 0x49, 0x3e, // 9 0x00, 0x36, 0x36, 0x00, 0x00, // : 0x00, 0x00, 0x36, 0x16, 0x00, // ; 0x00, 0x08, 0x14, 0x22, 0x00, // < 0x00, 0x14, 0x14, 0x14, 0x14, // = 0x00, 0x22, 0x14, 0x08, 0x00, // >

0x02, 0x01, 0x59, 0x05, 0x02, // ? 0x3e, 0x41, 0x5d, 0x55, 0x5e, // @ 0x7e, 0x09, 0x09, 0x09, 0x7e, // A 0x7f, 0x49, 0x49, 0x49, 0x36, // B 0x3e, 0x41, 0x41, 0x41, 0x22, // C 0x7f, 0x41, 0x41, 0x41, 0x3e, // D 0x7f, 0x49, 0x49, 0x49, 0x41, // E 0x7f, 0x09, 0x09, 0x09, 0x01, // F 0x3e, 0x41, 0x49, 0x49, 0x3a, // G 0x7f, 0x08, 0x08, 0x08, 0x7f, // H 0x41, 0x41, 0x7f, 0x41, 0x41, // I 0x20, 0x40, 0x40, 0x40, 0x3f, // J 0x7f, 0x08, 0x14, 0x22, 0x41, // K 0x7f, 0x40, 0x40, 0x40, 0x40, // L 0x7f, 0x02, 0x0c, 0x02, 0x7f, // M 0x7f, 0x04, 0x08, 0x10, 0x7f, // N 0x3e, 0x41, 0x41, 0x41, 0x3e, // O 0x7f, 0x09, 0x09, 0x09, 0x06, // P 0x3e, 0x41, 0x51, 0x21, 0x5e, // Q 0x7f, 0x09, 0x19, 0x29, 0x46, // R 0x26, 0x49, 0x49, 0x49, 0x32, // S 0x01, 0x01, 0x7f, 0x01, 0x01, // T 0x3f, 0x40, 0x40, 0x40, 0x3f, // U 0x07, 0x18, 0x60, 0x18, 0x07, // V 0x1f, 0x60, 0x18, 0x60, 0x1f, // W 0x63, 0x14, 0x08, 0x14, 0x63, // X 0x07, 0x08, 0x70, 0x08, 0x07, // Y 0x61, 0x51, 0x49, 0x45, 0x43, // Z 0x00, 0x7f, 0x41, 0x41, 0x00, // [ 0x01, 0x06, 0x08, 0x30, 0x40, // 0x00, 0x41, 0x41, 0x7f, 0x00, // ] 0x04, 0x02, 0x01, 0x02, 0x04, // ^ 0x40, 0x40, 0x40, 0x40, 0x40, // _ 0x01, 0x03, 0x00, 0x00, 0x00, // ` 0x38, 0x44, 0x44, 0x24, 0x78, // a 0x7f, 0x44, 0x44, 0x44, 0x38, // b 0x38, 0x44, 0x44, 0x44, 0x28, // c 0x38, 0x44, 0x44, 0x44, 0x7f, // d 0x38, 0x54, 0x54, 0x54, 0x48, // e 0x00, 0x08, 0x7e, 0x09, 0x02, // f 0x18, 0xa4, 0xa4, 0xa4, 0x78, // g 0x7f, 0x04, 0x04, 0x04, 0x78, // h 0x00, 0x00, 0x7d, 0x40, 0x00, // i 0x40, 0x80, 0x80, 0x7d, 0x00, // j 0x00, 0x7f, 0x10, 0x28, 0x44, // k 0x00, 0x00, 0x7f, 0x00, 0x00, // l 0x78, 0x04, 0x18, 0x04, 0x78, // m 0x7c, 0x08, 0x04, 0x04, 0x78, // n 0x38, 0x44, 0x44, 0x44, 0x38, // o 0xf8, 0x24, 0x24, 0x24, 0x18, // p 0x18, 0x24, 0x24, 0x24, 0xf8, // q 0x7c, 0x08, 0x04, 0x04, 0x04, // r 0x48, 0x54, 0x54, 0x54, 0x24, // s 0x04, 0x04, 0x7e, 0x44, 0x04, // t 0x3c, 0x40, 0x40, 0x20, 0x7c, // u 0x0c, 0x30, 0x40, 0x30, 0x0c, // v 0x3c, 0x40, 0x30, 0x40, 0x3c, // w 0x44, 0x28, 0x10, 0x28, 0x44, // x 0x1c, 0xa0, 0xa0, 0xa0, 0x7c, // y 0x44, 0x64, 0x54, 0x4c, 0x44, // z 0x08, 0x08, 0x36, 0x41, 0x41, // { 0x00, 0x00, 0x77, 0x00, 0x00, // | 0x41, 0x41, 0x36, 0x08, 0x08, // } 0x02, 0x01, 0x01, 0x02, 0x01, // ~ 0xaa, 0x55, 0xaa, 0x55, 0xaa // checker };

===========================================================

Back in the '80s I had the misfortune to own a PCB CAD package from AMS. About the only useful thing it offered was, for some reason, a font editor. I used it on several LCD projects, including one where the customer wanted black on white text so I had to build a negative character set. There probably are similar freeware editors out there somewhere...

Bob

"Just machines that make big decisions programmed by fellas with compassion and vision." -D. Fagen (remove yomama)

Have a look at the following link from my website, it has some useful info and links regarding the use of graphic LCDs in embedded systems.

formatting link

Dave.

Rodo wrote:

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required