Quote Originally Posted by phoenix_1 View Post
Maybe is bad ....maybe it help you.
Regards
Hi, Phoenix

Really a nice screen ...

I should learn Serbian language ...

Code:
'****************************************************************
'*  Name    : GLCD Test.BAS                                     *
'*  Author  : Phoenix_1                   *
'*  Notice  : Copyright (c) 2010 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 12/04/2010                                        *
'*  Version : 1.1                                              *
'*  Notes   : Easy Pic5 Modified  !!!                              *
'*          :                                                   *
'****************************************************************

@ Device pic16F877a, HS_OSC, BOD_ON, PWRT_OFF, WDT_ON, PROTECT_OFF

Define osc 8

ADCON1 = 7
CMCON  = 7

trisB = $00 
trisD = $00
 
en      var portB.4 
rw      var portB.3 
rs      var portB.2 
cs1     var portB.0 
cs2     var portB.1 
reset   var portB.5

rs  = 1 
rw  = 0 
en  = 0 
cs1 = 1 
cs2 = 1

temp    var byte 
x       var byte
y       var byte
z       var byte
h       var byte

x   = 0
y   = 0
z   = 0
h   = 0

gosub rst
pause 500
gosub brisanje

gosub levo 
gosub nulti
temp = 184
gosub komanda
for z = 0 to 63
lookup z,[$ff,$01,$01,$01,$01,$01,$01,$01,$01,$01,$09,$09,$09,$09,$09,$09,$89,_
$69,$19,$09,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff,$01,$01,$01,$01,$01,_
$01,$01,$01,$01,$01,$f9,$89,$89,$89,$89,$89,$89,$89,$89,$f9,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff],temp
gosub podatak
next z 

temp = 0
gosub desno 
gosub komanda
temp = 184
gosub komanda
for z = 0 to 63
lookup z,[$ff,$01,$01,$01,$01,$01,$01,$01,$01,$01,$f9,$09,$09,$09,$09,$09,$09,_
$f9,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff,$01,$01,$01,$01,$81,$81,$c1,_
$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$81,$e1,$f1,$e1,$81,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff],temp
gosub podatak
next z

temp = 0
gosub levo
gosub komanda
gosub nulti
temp = 185
gosub komanda
for z = 0 to 63
lookup z,[$ff,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$90,$88,$86,$81,$80,_
$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff,$80,$80,$80,$80,$80,_
$80,$80,$80,$80,$80,$9f,$90,$90,$90,$90,$90,$90,$90,$90,$9f,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff],temp
gosub podatak
next z 

temp = 0
gosub desno 
gosub komanda
temp = 185
gosub komanda
for z = 0 to 63
lookup z,[$ff,$80,$80,$80,$80,$80,$80,$80,$80,$80,$91,$91,$91,$91,$91,$91,$91,_
$9f,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff,$80,$80,$80,$81,$83,$83,$87,_
$81,$81,$81,$81,$81,$81,$80,$80,$80,$80,$80,$80,$80,$80,$9f,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff],temp
gosub podatak
next z

temp = 0
gosub levo 
gosub komanda
temp = 186
gosub komanda
for z = 0 to 63
lookup z,[$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$c0,$a0,$90,$88,$84,$fc,_
$80,$00,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$7c,$44,$44,$44,$44,$44,$44,$44,$c4,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff],temp
gosub podatak
next z

temp = 0
gosub desno 
gosub komanda
temp = 186
gosub komanda
for z = 0 to 63
lookup z,[$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$fc,$84,$84,$84,$84,$84,$84,_
$84,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00,$80,$00,$c0,_
$00,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$f0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff],temp
gosub podatak
next z

temp = 0
gosub levo 
gosub komanda
temp = 187
gosub komanda
for z = 0 to 63
lookup z,[$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1f,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$20,$20,$20,$20,$20,$20,$20,$20,$3f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff],temp
gosub podatak
next z

temp = 0
gosub desno 
gosub komanda
temp = 187
gosub komanda
for z = 0 to 63
lookup z,[$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1f,$10,$10,$10,$10,$10,$10,_
$1f,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00,$0a,$07,$1f,_
$07,$0a,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$04,$1c,$3f,$1c,$04,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff],temp
gosub podatak
next z

gosub levo 
gosub nulti
temp = 188
gosub komanda
for z = 0 to 63
lookup z,[$ff,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$21,$31,$f9,$01,_
$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff,$01,$01,$01,$01,$01,_
$01,$01,$01,$01,$01,$01,$01,$79,$09,$09,$09,$09,$89,$79,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff],temp
gosub podatak
next z 

temp = 0
gosub desno 
gosub komanda
temp = 188
gosub komanda
for z = 0 to 63
lookup z,[$ff,$01,$01,$01,$01,$01,$01,$01,$01,$01,$09,$09,$09,$09,$89,$89,$89,_
$89,$f9,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff,$01,$01,$01,$01,$01,$01,$01,_
$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$ff],temp
gosub podatak
next z

temp = 0
gosub levo
gosub komanda
gosub nulti
temp = 189
gosub komanda
for z = 0 to 63
lookup z,[$ff,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$90,$90,$9f,$90,_
$90,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff,$80,$80,$80,$80,$80,_
$80,$80,$80,$80,$80,$80,$80,$90,$98,$94,$92,$91,$90,$90,$90,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff],temp
gosub podatak
next z 

temp = 0
gosub desno 
gosub komanda
temp = 189
gosub komanda
for z = 0 to 63
lookup z,[$ff,$80,$80,$80,$80,$80,$80,$80,$80,$80,$90,$90,$90,$90,$90,$90,$90,_
$90,$9f,$80,$80,$80,$80,$80,$80, $80,$80,$80,$80,$ff,$80,$80,$80,$80,$80,$80,$80,_
$80,$80,$80,$81,$81,$81,$81,$81,$81,$81,$81,$81,$81, $81,$81,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff],temp
gosub podatak
next z

temp = 0
gosub levo 
gosub komanda
temp = 190
gosub komanda
for z = 0 to 63
lookup z,[$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$fc,$04,$04,$04,$04,_
$04,$fc,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$c0,$40,$c0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff],temp
gosub podatak
next z

temp = 0
gosub desno 
gosub komanda
temp = 190
gosub komanda
for z = 0 to 63
lookup z,[$ff,$00,$00,$00,$f8,$88,$88,$88,$88,$00,$00,$f8,$88,$88,$88,$88,$98,_
$00,$00,$f8,$08,$08,$08,$08,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$f8,$88,$88,$08,_
$00,$f8,$00,$00,$f8,$00,$08,$08,$f8,$08,$08,$00,$f8,$88,$88,$08,$00,$f8,$88,$88,$88,$f8,$00,$00,$00,$00,$ff],temp
gosub podatak
next z

temp = 0
gosub levo 
gosub komanda
temp = 191
gosub komanda
for z = 0 to 63
lookup z,[$ff,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$9f,$90,$90,$90,$90,_
$90,$9f,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff,$80,$80,$80,$80,$80,_
$80,$80,$80,$80,$80,$80,$80,$80,$80,$81,$81,$81,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$80,$ff],temp
gosub podatak
next z

temp = 0
gosub desno 
gosub komanda
temp = 191
gosub komanda
for z = 0 to 63
lookup z,[$ff,$80,$80,$80,$8f,$88,$88,$88,$88,$80,$80,$8c,$88,$88,$88,$88,$8f,_
$80,$80,$8f,$88,$88,$88,$88,$80, $80,$80,$80,$80,$ff,$80,$80,$80,$8f,$88,$88,$88,_
$80,$8f,$82,$84,$8f,$80,$80,$80,$8f,$80,$80,$80,$8f,$88,$88,$88,$80,$8f,$80,$81,$86,$88,$80,$80,$80,$80,$ff],temp
gosub podatak
next z

goto kraj



'************************************************* ************
'komande za GLCD *
'************************************************* ************ 

rst:
reset = 0 
pause 1000 
reset = 1
temp = $3e 
gosub komanda
pause 100 
temp = $3f 
gosub komanda
pause 100

nulti:
temp = $40'+55
gosub komanda 
return

brisanje:
for x = 0 to 7 
    temp = $b8 + x 
    gosub komanda
    
    for y = 0 to 63 
        temp = $00 
        gosub podatak
    next y
     
next x
pause 1000
return 

komanda:
rw = 0 
rs = 0 
portD = temp 
en = 1 
pause 1 '5 
en = 0
return 

podatak:
rw = 0 
rs = 1 
portD = temp 
en = 1 
pause 1 '5 
en = 0 
return 

razmak:
temp = $00 
return

levo:
cs1 = 0
cs2 = 1
return

desno:
cs1 = 1
cs2 = 0
return
 
kraj:
pause 1000
goto kraj
 
end
Congratulations, Robert

I just sped it a bit, as datasheet enable cycle time is specified @ 1 ms ...

Alain