Unicorn GLCD demo.

Status
Not open for further replies.
thanks of bryan and Pommie for reply
thanks Pommie, but i don't need to convert one or two logo.
i need urgent a software for convert logo.
can you give me your software.
 
What you can also do is use Microsoft's paintbrush program. Create a image with the attributes 128x64 pixels from Image-->Attributes.

Create/import design your logo. Save as Monochrome bitmap. Once saved open up the image in a program called BMP to ASM. this program will convert the bmp to usable code. The listing at the bottom of the program should be self explanatory.

The program can be found at
 
I sometimes use GLCD Generator from Mikro.

mikroC - Advanced C compiler for PIC microcontrollers

If you install the demo it comes with a nice GLCD image converter. You can use it for free. Its a nice tool. Converts BMP to C, BASIC, or PASCAL

When you install the above find this folder:
"C:\Program Files\Mikroelektronika\mikroC\tools\Graphic LCD editor"

and run "glcd_editor.exe" and your set.

You can always create a shortcut to it on your desktop so you can use it when ever you want.

It even has a invert button!

Ill post a screen shot.
 

Attachments

  • glc.jpg
    82.9 KB · Views: 575
Last edited:
I think these converters will work as long as the width is a multiple of 8.

Mike.
 
lol it should work on anything. As long as your Micro-Controller knows the width and height you shouldnt have a issue.
 
Glcd

please i need information of libraries of glcd.I`m using mplab C18. I don´t find information please help me
 

hi bryan
and thanks for link and help
i download "BMP to ASM converter" that was in your link but the width and height is very long how i change it to compatible with GLCD functions in first post.

for example i change my pic to this code can you show me this pic :
PHP:
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xC0,0xC0,0xC2,0xC2,0xE2,0xE0,0xE0,0xE0,0xE0,0xE4,0xF0,0xF0,0xF8,0x78,0x30,0xC0,0xE0,0x30,0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xE0,0xE0,0xE0,0xF0,0xF0,0xF8,0xF8,0xFC,0xFC,0xFC,0xFE,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x3F,0xCF,0x71,0x1C,0x0F,0x03,0x00,0x00,0xC0,0xE0,0x78,0x1E,0xCF,0xE3,0xF8,0xFF,0xFF,0xFF,0xFE,0xFE,0xFE,0xFE,0xFC,0xFC,0xFC,0xFC,0xFC,0x7C,0x78,0x78,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x38,0x58,0x58,0x18,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1E,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x60,0x70,0x60,0x28,0x28,0x2C,0x2E,0x3E,0x3F,0x3F,0x3F,0x3F,0x37,0x17,0x17,0x17,0x17,0x17,0x17,0x17,0x17,0x17,0x1F,0x1F,0x3F,0x3F,0x2F,0x2F,0x2F,0x2F,0x3F,0x7F,0x5F,0x5F,0x5F,0xFF,0xFF,0xBF,0xBF,0xDF,0xE7,0x79,0x1C,0x0F,0x03,0x00,0x00,0x80,0xE0,0xF8,0xBC,0xF7,0xF9,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x07,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x88,0xE0,0xE0,0xF0,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFC,0xFC,0xFC,0xFC,0xFC,0xF8,0xF8,0x78,0x90,0xC0,0xF0,0x70,0x00,0x01,0x01,0x01,0x00,0x00,0x80,0x80,0x04,0x0E,0x0F,0x09,0x1E,0x1F,0x1F,0x3F,0x3F,0x3F,0x3F,0x3F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0xFC,0xF8,0x18,0xF0,0xF0,0xF0,0xF0,0xE0,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFE,0xFE,0xFE,0xFE,0xEE,0xEE,0xEE,0xEE,0xEE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFC,0xFC,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x80,0x40,0xB0,0xE8,0xF6,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xCF,0xF3,0x3E,0x0F,0x03,0x00,0x00,0x00,0xC0,0xE0,0x78,0x1E,0x0F,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x1F,0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x3F,0x0F,0x07,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x60,0x60,0x22,0x2D,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x1F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x7F,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0x0F,0x07,0x01,0x00,0x00,0x80,0xE0,0x70,0x3C,0x07,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x03,0x07,0x07,0x0F,0x0F,0x0F,0x1F,0x1F,0x1F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x1F,0x1F,0x1F,0x1F,0x1F,0x0F,0x0F,0x0F,0x07,0x03,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x03,0x09,0x08,0x08,0x18,0x10,0x10,0x10,0x30,0x30,0x30,0x20,0x20,0x20,0x20,0x20,0x70,0x60,0x60,0x68,0x78,0x7C,0x60,0x60,0x60,0x60,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x30,0x30,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
 

hi Jason
thanks for your help
have you any example program that it use of Mikroc GLCD code generator for
using with GLCD.c and logo function in this Thread.
how you use of this code in logo function the mikroc generate this code for me
PHP:
// ------------------------------------------------------  
// GLCD Picture name: SYMS3.BMP            
// GLCD Model: KS0108 128x64            
// ------------------------------------------------------  

unsigned char const SYMS3_BMP[1024] = {
   0,  0,  0,192,  0,  0,  0,  0,192,  0,  0,128, 64, 64, 64, 64, 
   0,  0,128, 64, 64,128,128,  0,  0,  0,  0, 64,248, 68, 68,  4, 
  64, 64, 64,128,  0,  0,  0,192, 64, 64, 64, 64,128, 64, 64, 64, 
  64,128,  0,196,  0,  0,252,  0,  0,196,  0,  0,  0,  0, 64, 64, 
  64,128,  0,  0,128,128, 64,  0,  0,  0,  0,  0,128, 64, 64, 64, 
  64,192,  0,  0,  0,128, 64,  0,192, 64, 64, 64, 64,128, 64, 64, 
  64, 64,128,  0,252, 64, 64, 64,128,  0,  0,  0,128, 64, 64, 64, 
 128,  0,  0,  0,252,  0,  0,128, 64, 64, 64, 64,  0,  0,  0,  0, 
   0,  0,  0, 15, 16, 16, 16, 16, 31,  0,  0,  9, 18, 18, 12,  0, 
   0, 15, 18, 18, 18, 18, 11,  2,  0,  0,  0,  0, 31,  0,  0, 12, 
  18, 17, 17, 31,  0,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0,  0, 
   0, 31,  0, 31,  0,  0, 31,  0,  0, 31,  0,  0,  0, 12, 18, 17, 
  17, 31,  0,  0, 31,  0,  0,  0,  0,  0,  0,  0,  9, 18, 18, 12, 
   0,129,198, 56,  6,  1,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0, 
   0,  0, 31,  0, 31, 16, 16, 16,  8,  7,  0,  0, 15, 16, 16, 16, 
   8,  7,  0,  0, 31,  0,  0,  9, 18, 18, 12,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 64,224, 
 240,240, 96,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,240,248,248,240, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,224,160, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
  32, 32, 32, 32, 32,160,224,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,192,224,112, 48, 56,248,252,252,254,254,252, 
 249,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,255,255,255,255, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 48,248,252, 
 252,252,248, 56,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,255,  0,  1,  2,  4,136,208, 96, 64, 64, 64, 64, 64, 64, 96, 
 208,136,  4,  2,  1,  0,255,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0, 31, 31,  0,  0,252,255,255,255,255,199,  1, 
   3,  7,  6, 14, 12, 28, 24, 24,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,128,192,192,224,240,240,248,248,252,255,255,255,255, 
 254,252,248,248,240,240,224,192,192,128,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,128,  0,255,255, 
 255,192,192,192,192,192,192,192,192,  0,  0,  0,  0,  0,  0,  0, 
   0, 31, 24, 28, 22, 19, 17, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
  16, 17, 19, 22, 28, 24, 31,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,192,248,255,127, 31,  7,  3,  7, 31,255, 
 254,248,192,  0,  0,  0,  0,  0,  0,  0,  0,  0,112,120,124, 62, 
  62, 63, 31, 31, 31, 15, 15, 15,  7,  7,  7,  3,255,255,255,255, 
   3,  3,  7,  7,  7, 15, 15, 15, 31, 31, 31, 63, 62, 62,124,120, 
 112,  0,  0,  0,  0,  0,128,240,252, 28,  6,  7,  3,  0, 31, 31, 
  31, 25, 25, 25, 25, 25, 25, 25, 25, 24, 24,248,248,240,128,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0, 16, 30, 31,  7,  1,  0,  0,  0,  0,  0,  0,  0, 
   7, 31, 31, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,128,128,192,224,255,255,127,255, 
 240,224,192,128,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  3, 31, 62,248,240,192,128,128,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,128,192,224,240,112,  7, 63,255,252, 
 224, 96, 96,112, 48,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  3,  3,  1,  1,  0,  0,  0,  0, 
   0,  1,  1,  3,  3,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  1,  1,  3,  3,  3, 
   6,  6,  6,  6,  7,  7,  3,  3,  3,  1,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0 
};
thanks.
 
i assume you are using Pommies code if so just add the width and height and use:

PutLogo command

this is his PutLogo
Code:
void PutLogo(static char rom *logo){
unsigned char w,h,bitcount,Byte;
	w=*logo++;
	h=*logo++;
	bitcount=0;
	do{
		for(i=0;i<w;i++){
			if(bitcount==0){
				bitcount=8;
				Byte=*logo++;
			}
			if(Byte&1) plot(XPos,YPos);
			XPos++;
			Byte/=2;
			bitcount--;
		}
		YPos++;
		XPos-=w;
	}while(--h);
}

as you can see it takes the first 2 bytes in the array as the Width and Height:

Code:
	w=*logo++;
	h=*logo++;

Width first Height second. Then you call it like:
Code:
	SetPos(0,0);
	PutLogo((rom char*)SYMS3_BMP);

so the new array should look like:
Code:
unsigned char const SYMS3_BMP[1026] = { 
   128,64,
   0,  0,  0,192,  0,  0,  0,  0,192,  0,  0,128, 64, 64, 64, 64, 
   0,  0,128, 64, 64,128,128,  0,  0,  0,  0, 64,248, 68, 68,  4, 
  64, 64, 64,128,  0,  0,  0,192, 64, 64, 64, 64,128, 64, 64, 64, 
  64,128,  0,196,  0,  0,252,  0,  0,196,  0,  0,  0,  0, 64, 64, 
  64,128,  0,  0,128,128, 64,  0,  0,  0,  0,  0,128, 64, 64, 64, 
  64,192,  0,  0,  0,128, 64,  0,192, 64, 64, 64, 64,128, 64, 64, 
  64, 64,128,  0,252, 64, 64, 64,128,  0,  0,  0,128, 64, 64, 64, 
 128,  0,  0,  0,252,  0,  0,128, 64, 64, 64, 64,  0,  0,  0,  0, 
   0,  0,  0, 15, 16, 16, 16, 16, 31,  0,  0,  9, 18, 18, 12,  0, 
   0, 15, 18, 18, 18, 18, 11,  2,  0,  0,  0,  0, 31,  0,  0, 12, 
  18, 17, 17, 31,  0,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0,  0, 
   0, 31,  0, 31,  0,  0, 31,  0,  0, 31,  0,  0,  0, 12, 18, 17, 
  17, 31,  0,  0, 31,  0,  0,  0,  0,  0,  0,  0,  9, 18, 18, 12, 
   0,129,198, 56,  6,  1,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0, 
   0,  0, 31,  0, 31, 16, 16, 16,  8,  7,  0,  0, 15, 16, 16, 16, 
   8,  7,  0,  0, 31,  0,  0,  9, 18, 18, 12,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 64,224, 
 240,240, 96,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,240,248,248,240, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,224,160, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
  32, 32, 32, 32, 32,160,224,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,192,224,112, 48, 56,248,252,252,254,254,252, 
 249,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,255,255,255,255, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 48,248,252, 
 252,252,248, 56,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,255,  0,  1,  2,  4,136,208, 96, 64, 64, 64, 64, 64, 64, 96, 
 208,136,  4,  2,  1,  0,255,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0, 31, 31,  0,  0,252,255,255,255,255,199,  1, 
   3,  7,  6, 14, 12, 28, 24, 24,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,128,192,192,224,240,240,248,248,252,255,255,255,255, 
 254,252,248,248,240,240,224,192,192,128,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,128,  0,255,255, 
 255,192,192,192,192,192,192,192,192,  0,  0,  0,  0,  0,  0,  0, 
   0, 31, 24, 28, 22, 19, 17, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
  16, 17, 19, 22, 28, 24, 31,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,192,248,255,127, 31,  7,  3,  7, 31,255, 
 254,248,192,  0,  0,  0,  0,  0,  0,  0,  0,  0,112,120,124, 62, 
  62, 63, 31, 31, 31, 15, 15, 15,  7,  7,  7,  3,255,255,255,255, 
   3,  3,  7,  7,  7, 15, 15, 15, 31, 31, 31, 63, 62, 62,124,120, 
 112,  0,  0,  0,  0,  0,128,240,252, 28,  6,  7,  3,  0, 31, 31, 
  31, 25, 25, 25, 25, 25, 25, 25, 25, 24, 24,248,248,240,128,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0, 16, 30, 31,  7,  1,  0,  0,  0,  0,  0,  0,  0, 
   7, 31, 31, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,128,128,192,224,255,255,127,255, 
 240,224,192,128,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  3, 31, 62,248,240,192,128,128,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,128,192,224,240,112,  7, 63,255,252, 
 224, 96, 96,112, 48,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  3,  3,  1,  1,  0,  0,  0,  0, 
   0,  1,  1,  3,  3,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  1,  1,  3,  3,  3, 
   6,  6,  6,  6,  7,  7,  3,  3,  3,  1,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0 
};
 
Last edited:
dear jason, i use of mikroc glcd code generator and i use of your suggestions but the MPLAB c18 have error with this change.
my code is thus:
Code:
#include <p18f452.h>
#include <GLCD.h>

#pragma config WDT = OFF, LVP = OFF, OSC = HS

unsigned char const SYMS[1024];

void main ()
{
    Init_GLCD(); 
    ClearScreen();

    SetPos(0,0);
    PutLogo((rom char*)SYMS);
}

unsigned char const SYMS[1024] = { 
   127,64,
   0,  0,  0,192,  0,  0,  0,  0,192,  0,  0,128, 64, 64, 64, 64, 
   0,  0,128, 64, 64,128,128,  0,  0,  0,  0, 64,248, 68, 68,  4, 
  64, 64, 64,128,  0,  0,  0,192, 64, 64, 64, 64,128, 64, 64, 64, 
  64,128,  0,196,  0,  0,252,  0,  0,196,  0,  0,  0,  0, 64, 64, 
  64,128,  0,  0,128,128, 64,  0,  0,  0,  0,  0,128, 64, 64, 64, 
  64,192,  0,  0,  0,128, 64,  0,192, 64, 64, 64, 64,128, 64, 64, 
  64, 64,128,  0,252, 64, 64, 64,128,  0,  0,  0,128, 64, 64, 64, 
 128,  0,  0,  0,252,  0,  0,128, 64, 64, 64, 64,  0,  0,  0,  0, 
   0,  0,  0, 15, 16, 16, 16, 16, 31,  0,  0,  9, 18, 18, 12,  0, 
   0, 15, 18, 18, 18, 18, 11,  2,  0,  0,  0,  0, 31,  0,  0, 12, 
  18, 17, 17, 31,  0,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0,  0, 
   0, 31,  0, 31,  0,  0, 31,  0,  0, 31,  0,  0,  0, 12, 18, 17, 
  17, 31,  0,  0, 31,  0,  0,  0,  0,  0,  0,  0,  9, 18, 18, 12, 
   0,129,198, 56,  6,  1,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0, 
   0,  0, 31,  0, 31, 16, 16, 16,  8,  7,  0,  0, 15, 16, 16, 16, 
   8,  7,  0,  0, 31,  0,  0,  9, 18, 18, 12,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 64,224, 
 240,240, 96,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,240,248,248,240, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,224,160, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
  32, 32, 32, 32, 32,160,224,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,192,224,112, 48, 56,248,252,252,254,254,252, 
 249,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,255,255,255,255, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 48,248,252, 
 252,252,248, 56,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,255,  0,  1,  2,  4,136,208, 96, 64, 64, 64, 64, 64, 64, 96, 
 208,136,  4,  2,  1,  0,255,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0, 31, 31,  0,  0,252,255,255,255,255,199,  1, 
   3,  7,  6, 14, 12, 28, 24, 24,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,128,192,192,224,240,240,248,248,252,255,255,255,255, 
 254,252,248,248,240,240,224,192,192,128,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,128,  0,255,255, 
 255,192,192,192,192,192,192,192,192,  0,  0,  0,  0,  0,  0,  0, 
   0, 31, 24, 28, 22, 19, 17, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
  16, 17, 19, 22, 28, 24, 31,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,192,248,255,127, 31,  7,  3,  7, 31,255, 
 254,248,192,  0,  0,  0,  0,  0,  0,  0,  0,  0,112,120,124, 62, 
  62, 63, 31, 31, 31, 15, 15, 15,  7,  7,  7,  3,255,255,255,255, 
   3,  3,  7,  7,  7, 15, 15, 15, 31, 31, 31, 63, 62, 62,124,120, 
 112,  0,  0,  0,  0,  0,128,240,252, 28,  6,  7,  3,  0, 31, 31, 
  31, 25, 25, 25, 25, 25, 25, 25, 25, 24, 24,248,248,240,128,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0, 16, 30, 31,  7,  1,  0,  0,  0,  0,  0,  0,  0, 
   7, 31, 31, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,128,128,192,224,255,255,127,255, 
 240,224,192,128,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  3, 31, 62,248,240,192,128,128,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,128,192,224,240,112,  7, 63,255,252, 
 224, 96, 96,112, 48,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  3,  3,  1,  1,  0,  0,  0,  0, 
   0,  1,  1,  3,  3,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  1,  1,  3,  3,  3, 
   6,  6,  6,  6,  7,  7,  3,  3,  3,  1,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
};

MPLAB c18 errors after compile:
Code:
----------------------------------------------------------------------
Debug build of project `G:\GLCD\GLCDtest.mcp' started.
Preprocessor symbol `__DEBUG' is defined.
Wed Feb 18 15:28:45 2009
----------------------------------------------------------------------
Clean: Deleting intermediary and output files.
Clean: Deleted file "G:\GLCD\GLCDtest.o".
Clean: Done.
Executing: "C:\MCC18\bin\mcc18.exe" -p=18F452 /i"C:\mcc18\h" "GLCDtest.c" -fo="GLCDtest.o" -D__DEBUG -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
Executing: "C:\MCC18\bin\mcc18.exe" -p=18F452 /i"C:\mcc18\h" "main.c" -fo="main.o" -D__DEBUG -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
G:\GLCD\main.c:102:Error [1218] extraneous initializer values
Halting build on first failure as requested.
----------------------------------------------------------------------
Debug build of project `G:\GLCD\GLCDtest.mcp' failed.
Preprocessor symbol `__DEBUG' is defined.
Wed Feb 18 15:28:45 2009
----------------------------------------------------------------------
BUILD FAILED

i change this lines according with your code :
Code:
unsigned char const SYMS[[COLOR="Red"]1024[/COLOR]] = {
to
Code:
unsigned char const SYMS[[COLOR="Red"]1026[/COLOR]] = {
but with this change my compiler have hang state and i most close the mcc18-traditional.exe from task manager to start again.
can you say me what is problem.
thanks
 
did you change the other one :

Code:
unsigned char const SYMS[1024];
 to 
unsigned char const SYMS[1026];

EDIT if you want to You can do :

Code:
//Define the variable 
const rom unsigned char SYMS[1026];

//Then when filling it with the data
const rom unsigned char SYMS[1026] = { 
   128,64,
   0,  0,  0,192,  0,  0,  0,  0,192,  0,  0,128, 64, 64, 64, 64, 
   0,  0,128, 64, 64,128,128,  0,  0,  0,  0, 64,248, 68, 68,  4, 
  64, 64, 64,128,  0,  0,  0,192, 64, 64, 64, 64,128, 64, 64, 64, 
  64,128,  0,196,  0,  0,252,  0,  0,196,  0,  0,  0,  0, 64, 64, 
  64,128,  0,  0,128,128, 64,  0,  0,  0,  0,  0,128, 64, 64, 64, 
  64,192,  0,  0,  0,128, 64,  0,192, 64, 64, 64, 64,128, 64, 64, 
  64, 64,128,  0,252, 64, 64, 64,128,  0,  0,  0,128, 64, 64, 64, 
 128,  0,  0,  0,252,  0,  0,128, 64, 64, 64, 64,  0,  0,  0,  0, 
   0,  0,  0, 15, 16, 16, 16, 16, 31,  0,  0,  9, 18, 18, 12,  0, 
   0, 15, 18, 18, 18, 18, 11,  2,  0,  0,  0,  0, 31,  0,  0, 12, 
  18, 17, 17, 31,  0,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0,  0, 
   0, 31,  0, 31,  0,  0, 31,  0,  0, 31,  0,  0,  0, 12, 18, 17, 
  17, 31,  0,  0, 31,  0,  0,  0,  0,  0,  0,  0,  9, 18, 18, 12, 
   0,129,198, 56,  6,  1,  0,  0, 31,  0,  0,  0,  0, 31,  0,  0, 
   0,  0, 31,  0, 31, 16, 16, 16,  8,  7,  0,  0, 15, 16, 16, 16, 
   8,  7,  0,  0, 31,  0,  0,  9, 18, 18, 12,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 64,224, 
 240,240, 96,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,240,248,248,240, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,224,160, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
  32, 32, 32, 32, 32,160,224,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,192,224,112, 48, 56,248,252,252,254,254,252, 
 249,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,255,255,255,255, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 48,248,252, 
 252,252,248, 56,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,255,  0,  1,  2,  4,136,208, 96, 64, 64, 64, 64, 64, 64, 96, 
 208,136,  4,  2,  1,  0,255,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0, 31, 31,  0,  0,252,255,255,255,255,199,  1, 
   3,  7,  6, 14, 12, 28, 24, 24,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,128,192,192,224,240,240,248,248,252,255,255,255,255, 
 254,252,248,248,240,240,224,192,192,128,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,128,  0,255,255, 
 255,192,192,192,192,192,192,192,192,  0,  0,  0,  0,  0,  0,  0, 
   0, 31, 24, 28, 22, 19, 17, 16, 16, 16, 16, 16, 16, 16, 16, 16, 
  16, 17, 19, 22, 28, 24, 31,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,192,248,255,127, 31,  7,  3,  7, 31,255, 
 254,248,192,  0,  0,  0,  0,  0,  0,  0,  0,  0,112,120,124, 62, 
  62, 63, 31, 31, 31, 15, 15, 15,  7,  7,  7,  3,255,255,255,255, 
   3,  3,  7,  7,  7, 15, 15, 15, 31, 31, 31, 63, 62, 62,124,120, 
 112,  0,  0,  0,  0,  0,128,240,252, 28,  6,  7,  3,  0, 31, 31, 
  31, 25, 25, 25, 25, 25, 25, 25, 25, 24, 24,248,248,240,128,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0, 16, 30, 31,  7,  1,  0,  0,  0,  0,  0,  0,  0, 
   7, 31, 31, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,128,128,192,224,255,255,127,255, 
 240,224,192,128,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  3, 31, 62,248,240,192,128,128,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,128,192,224,240,112,  7, 63,255,252, 
 224, 96, 96,112, 48,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  3,  3,  1,  1,  0,  0,  0,  0, 
   0,  1,  1,  3,  3,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  1,  1,  3,  3,  3, 
   6,  6,  6,  6,  7,  7,  3,  3,  3,  1,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
   0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 
};
 
Last edited:
i change that and haven't any error but it don't display my pic on
GLCD in proteus, also i change the "Inverse picture" in glcd code generator but
it show mixed picture
in attachment i put my files includes(C sourec and proteus)
can you revision it
thanks.
 

Attachments

  • Logo.zip
    199 KB · Views: 508
based on proteus i made this header for you :
Code:
#include <p18f452.h>

/**********************************************
        Graphical LCD Definitions
**********************************************/
#define GLCD_Data   PORTD

#define b_GLCD_GCS1 LATCbits.LATC3
#define b_GLCD_GCS2 LATCbits.LATC4

#define b_GLCD_RS   LATCbits.LATC0
#define b_GLCD_RW   LATCbits.LATC1
#define b_GLCD_E    LATCbits.LATC2

#define b_GLCD_On   LATCbits.LATC5
#define b_GLCD_BL   LATBbits.LATB5

#define TRIS_Data    TRISD
#define b_TRIS_GCS1  TRISCbits.TRISC3 
#define b_TRIS_GCS2  TRISCbits.TRISC4 

#define b_TRIS_RS    TRISCbits.TRISC0 //RS 
#define b_TRIS_RW    TRISCbits.TRISC1 //RW 
#define b_TRIS_E     TRISCbits.TRISC2 //E 

#define b_TRIS_On    TRISCbits.TRISC5 //RST
#define b_TRIS_BL    TRISBbits.TRISB5 //backlight	


/**********************************************
        Prototypes
**********************************************/
void Delay(void);
unsigned char GLCD_Read(void);
void Wait_Not_Busy(void);
void GLCD_Write_Cmd(unsigned char data);
void GLCD_Write_Data (unsigned char data);
void ClearScreen(void);
void Init_GLCD(void);
void PutChar(unsigned char data);
unsigned char GLCD_Read_Data(void);
void SetPos(unsigned char x,unsigned char y);
void WritePosition(void);
void plot(unsigned char x,unsigned char y);
void hline(unsigned char x,unsigned char y1,unsigned char y2);
void vline(unsigned char x1,unsigned char x2,unsigned char y);
void box(unsigned char x1,unsigned char y1,unsigned char x2,unsigned char y2);
void PutMessage(static char rom *Message);
void PutLogo(static char rom *logo);
 
Last edited:
add this to your code of GLCDtest.c
Code:
void loadimg(rom char *image)
{
    char i,x,y;
    
    int z = 0;
    int len = 1024;
    while(z != len)            
    {

    for(i=0;i<8;i++){

        b_GLCD_GCS1 = 1;
        b_GLCD_GCS2 = 0;
        y = 0xB8 + i;
        GLCD_Write_Cmd(y);  
        GLCD_Write_Cmd(0x40);

        for(x=0;x<64;x++){
            if(z == len)
                break;
            GLCD_Write_Data(*image);
            image++;
            z++;
        }

        b_GLCD_GCS1 = 0;
        b_GLCD_GCS2 = 1;
        y = 0xB8 + i;
        GLCD_Write_Cmd(y);  
        GLCD_Write_Cmd(0x40);

        for(x=0;x<64;x++){
            if(z == len)
                break;
            GLCD_Write_Data(*image);
            image++;
            z++;
        }

        if(z == len)
            break;
    }
    if(z == len)
        break;
    
    }
}

and call it like
Code:
	loadimg((rom char*)SYMS);
 
Here ya go i hope its what cha need

 

Attachments

  • GLCD_V2.zip
    64.2 KB · Views: 557
  • proofa.jpg
    70.8 KB · Views: 1,242
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…