PicBasic Pro in grafiko LCD

A

aghazi

Guest
Živjo,

Vem, kako uporabljati Hitachi 44780 temeljijo znakov LCD z uporabo PIC Picbasic pro.Lahko kdorkoli prosim vodič mi kako uporabljati grafiko namesto LCD?Hočem, da jo uporabite s PIC16F877A in picbasic pro.

Zelo cenim vašo pomoč.Hvala.

AG

 
jaz sem tudi zelo zelo pomena, ampak mislim GLCD deluje le z PIC18
to povezavo za mikrobasic
http://www.mikroe.com/en/books/picbasicbook/07.htm

 
Živjo, vsi,
GLCD lahko dela s katero koli PIC.vendar pa zahteva precej več I / O linij.ProTon BASIC podpira GLCD na PIC16 družino.

 
Torej to pomeni, da ne moremo uporabiti grafične LCD picbasic v pro?Težko verjamem.

 
Citat:

jaz sem tudi zelo zelo pomena, ampak mislim GLCD deluje le z PIC18

to povezavo za mikrobasic

http://www.mikroe.com/en/books/picbasicbook/07.htm
 
tudi
g. agazhi,

grafični LCD prav tako teče na 8-bitni podatki, zato je 100% interfaceable s pic16 serije.

kar zadeva šifriranje je zaskrbljen mailme nazaj.i so uspešno povezan s celotno besedilo in pravokotniki itd.

zelo preprosta, vse kar moraš storiti je napisati funkcije za:

ukaza napisati
Pisanje podatkov
pravokotnika koordinate
line izdelavo
itd ..

raje, da bi svoje funkcije, namesto da se uporabi Vlagati knjižnicah

Vzorec kode na osnovne grobo idejo,
se spomniš vseh oznaka morda ne bo prav glede na vas, vendar deluje v skladu z vlogo in imela sem kodo za branje znakov 5X7 do 5 lookups tj 5 stolpcev:

define osc 20
trisc = $ 00
trisd = $ 00en var portd.0
rw var portd.1
rs var portd.2
cs1 var portd.3
CS2 var portd.4
Ponastavljanje var portd.5

temp1 var byte
temp2 var byte
c1 var byte
temp var byte

xemp var byte

m var byte
x_pos1 var byte
x_pos2 var byte

up_page var byte
down_page var byte

upper_line var byte
lower_line var byte

B1 var byte
y_pos1 var byte
y_pos2 var byte

x var byte
y var byte

a var byte
b var byte
c var byte
d var byte
e var byte

i var byte
B0 var byters = 1
rw = 0
en = 0
x = 0
y = 0
cs1 = 1
CS2 = 1

xemp = $ 00

"x_pos1 = 8
"x_pos2 = 63

"y_pos1 = 2
"y_pos2 = 60

"temp1 = x_pos1
"temp2 = x_pos2

"up_page = x_pos1 / 8
"down_page = x_pos2 / 8

"upper_line = temp1 / / 8
"lower_line = temp2 / / 8
vrsto var bytereset = 0
pavza 1000
reset = 1temp = $ 3e
gosub command_write

pavza 100

temp = $ 3f
gosub command_write

pavza 100
'************************************************* ******************************
clear_display: 'clrscrza x = 0 do 7
temp = $ B8 x
gosub command_write

za y = 0 do 63 "stolpec povečanje avtomatsko na vsakih pisati
temp = $ 00
gosub data_write
Naslednja y
Naslednja x

pavza 1000
'************************************************* ******************************
CS2 = 0
gosub starting_address

Goto alpha_change

column_change: if (y <125), potem
temp = $ 40 y

endif
gosub command_writepage_change: if (x <= 7), nato
temp = $ B8 x
še
x = 0
temp = $ B8 x
endif
gosub command_write

alpha_change:

Lookup B0, [ "najlažji način, da zaslužite denar smugglingbut
to je nevarno! "], c1
type = c1
if (tip! = 33), nato
i = tip - 32
še
Goto l
endifgosub display_0
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pavza 10gosub display_1
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pavza 10
gosub display_2
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pavza 10gosub display_3
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pavza 10gosub display_4
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pavza 10

temp = $ 00
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pavza 10B0 = B0 1
pavza 2

Goto column_changeGoto l
'------------------------------------------------- ------------------------------
'------------------------------ sub-rutino ---------------- ---------------------
test_mid: if (y == 64) nato
cs1 = 0
CS2 = 1

temp = $ B8 x
gosub command_write
temp = $ 40
gosub command_write
pavza 5

endif
vrnitevtest_last: if (y == 126) potem
cs1 = 1
CS2 = 0
x = x 1
temp = $ B8 x
gosub command_write

temp = $ 40
gosub command_write
y = 0
endif
vrnitev

starting_address:
B0 = 0
y = 0
x = 0
temp = $ C0
gosub command_write
temp = $ B8 x
gosub command_write
temp = $ 40 y
gosub command_write
vrnitev

prostora: temp = $ 00
gosub data_write
vrnitev

data_write: rw = 0
rs = 1
portc = temp
en = 1
pavza 5
en = 0
vrnitev

command_write: rw = 0
rs = 0
portc = temp
en = 1
pavza 5
en = 0
vrnitev

display_0:
če (i <= 64) in nato '!"# $% & '
() * , -./ 0 1 2 3 4
5 6 7 8 9:; <=>?@
ABCDEFGHIJKLMNO
PQRSTUVWXYZ [\
] ^ _ `
LOOKUP2 i, [$ 00 $ 00 $ 00 $ 14 $ 24 $ 23 $ 36,
$ 00, $ 1c, $ 00 $ 14 $ 08 $ 00 $ 08 $ 00 $ 20 $ 3E, $ 00, $ 42, $ 21,
$ 18 $ 27, $ 3C, $ 01, $ 36, $ 06, $ 00, $ 00, $ 08, $ 14, $ 00, $ 02,
$ 32, $ 7e, $ 7f, $ 3e, $ 7f, $ 7f, $ 7f, $ 3e, $ 7f, $ 00, $ 20, $ 7f, $ 7f, $ 7f,
$ 7f, $ 3e, $ 7f, $ 3e, $ 7f, $ 46, $ 01, $ 3f, $ 1f $ 3f, $ 63, $ 07, $ 61,
$ 7f, $ 02, $ 00 $ 04 $ 40 $ 00], B1
portc = B1
temp = portc
DONOSNOST
še
i = i - 65 "abcdefgh
ijklmnopqrstuv
wxyz (|) ~
LOOKUP2 i, [$ 20, $ 7f, $ 38 $ 38 $ 38 $ 08, $ 08,
$ 7f, $ 00, $ 00, $ 7f, $ 00, $ 7c, 7c $, $ 38, $ 7c, 08 $, $ 7c, $ 48, $ 04, $ 3c,
$ 1c $ 3c, 44 $, $ 0C, $ 44 $ 08 $ 00 $ 00 $ 00], B1
portc = B1
temp = portc
i = i 65
DONOSNOST
endif
display_1:
če (i <= 64) in nato '!"# $% &
'() * , -./ 0 1 2 3
4 5 6 7 8 9:; <=>?@
ABCDEFGHIJKLMNO
PQRSTUVWXYZ [\
] ^ _ `
LOOKUP2 i, [$ 00, $ 00, $ 07, $ 7f, $ 2, $ 13, $ 49,
$ 05, $ 22 $ 00 $ 08 $ 08 $ 50 $ 08 $ 60 $ 10 $ 51 $ 42 $ 61,
$ 41 $ 14 $ 45 $ 4A, $ 71 $ 49 $ 49 $ 36 $ 56 $ 14 $ 14 $ 41 $ 01,
$ 49 $ 11 $ 49 $ 41 $ 41 $ 49 $ 09 $ 41 $ 08 $ 41 $ 40 $ 08, $ 40,
$ 02 $ 04 $ 41 $ 09 $ 41 $ 09 $ 49 $ 01 $ 40 $ 20 $ 40 $ 14 $ 08, $ 51,
$ 41 $ 04 $ 00 $ 02 $ 40 $ 14], B1
portc = B1
temp = portc
DONOSNOST
še
i = i - 65 "abcdefg
hijklmnopqrstu
vwxyz (|) ~
LOOKUP2 i, [$ 54 $ 48 $ 44 $ 44 $ 54, $ 7e, $ 54,
$ 08 $ 44 $ 20 $ 10 $ 41 $ 04 $ 08 $ 44 $ 14 $ 14 $ 08, $ 54, $ 3f, $ 40,
$ 20 $ 40 $ 28 $ 50 $ 64 $ 36 $ 00 $ 00 $ 08], B1
portc = B1
temp = portc
i = i 65
DONOSNOST
endifdisplay_2:
če (i <= 64) in nato '!"# $% &
'() * , -./ 0 1 2 3
4 5 6 7 8 9:; <=>?@
ABCDEFGHIJKLMNO
PQRSTUVWXYZ [\
] ^ _ `
LOOKUP2 i, [00 $, $ 4f, $ 00, $ 14, $ 7f, $ 08, $ 55,
$ 03 $ 41 $ 41 $ 3e, 3e $, $ 30, $ 08, $ 60, $ 08, $ 49, $ 7f, $ 51,
$ 45 $ 12 $ 45 $ 49 $ 09 $ 49 $ 49 $ 36 $ 36 $ 22 $ 14 $ 22 $ 51,
$ 79 $ 11 $ 49 $ 41 $ 41 $ 49 $ 09 $ 49 $ 08, $ 7f, $ 41, $ 14,
$ 40 $ 0C, $ 08, $ 41 $ 09 $ 51 $ 19 $ 49, $ 7f, $ 40 $ 40 $ 38 $ 08, $ 70,
$ 49 $ 41 $ 08 $ 41 $ 01 $ 40 $ 02], B1
portc = B1
temp = portc
DONOSNOST
še
i = i - 65 "abcdefg
hijklmnopqrstu
vwxyz (|) ~
LOOKUP2 i, [$ 54 $ 44 $ 44 $ 44 $ 54 $ 09 $ 54,
$ 04, $ 7d, $ 40, $ 28, $ 7f, $ 18 $ 04 $ 44 $ 14 $ 14 $ 04 $ 54 $ 44 $ 40,
$ 40 $ 30 $ 10 $ 50 $ 54 $ 41, $ 7f, $ 41 $ 04], B1
portc = B1
temp = portc
i = i 65
DONOSNOST
endif

display_3:
če (i <= 64) in nato '!"# $% &
'() * , -./ 0 1
2 3 4 5 6 7 8 9:; <=>
?@ ABCDEFGHIJ
KLMNOPQRSTUVWX
YZ [\] ^ _ `
LOOKUP2 i, [$ 00, $ 00, $ 07, $ 7f, $ 2, $ 64, $ 22,
$ 00 $ 00 $ 22 $ 08, $ 08, $ 00, $ 08, $ 00, $ 04, $ 45, $ 40,
$ 49, $ 4b, $ 7f, $ 45 $ 49 $ 05, $ 49 $ 49 $ 00 $ 00 $ 41 $ 14 $ 14,
$ 09 $ 41 $ 11 $ 49 $ 41 $ 22 $ 49 $ 09 $ 49 $ 08 $ 41 $ 3f
, $ 22 $ 40 $ 02 $ 10 $ 41 $ 09 $ 21 $ 29 $ 49 $ 01 $ 40 $ 20 $ 40 $ 14
, $ 08, $ 45 $ 00 $ 10 $ 41 $ 02 $ 40 $ 04], B1
portc = B1
temp = portc
DONOSNOST
še
i = i - 65 "abcdefg
hijklmnopqrstu
vwxyz (|) ~
LOOKUP2 i, [$ 54 $ 44 $ 44 $ 48 $ 54 $ 01, $ 54,
$ 04 $ 40 $ 44 $ 44 $ 40 $ 04 $ 04 $ 44 $ 14 $ 18 $ 04 $ 54 $ 40 $ 20,
$ 20 $ 40 $ 28 $ 50 $ 4c, $ 00 $ 00 $ 36 $ 08], B1
portc = B1
temp = portc
i = i 65
DONOSNOST
endifdisplay_4:
če (i <= 64) in nato '!"# $% &
'() * , -./ 0 1 2
3 4 5 6 7 8 9:; <=>?
@ ABCDEFGHIJK
LMNOPQRSTUVWXYZ
[\] ^ _ `
LOOKUP2 i, [$ 00 $ 00 $ 00 $ 14 $ 12 $ 62 $ 50,
$ 00 $ 00, $ 1c, $ 14, $ 08, $ 00, $ 08, $ 00, $ 02, $ 3e, 00 $, $ 46,
$ 31 $ 10 $ 39 $ 30 $ 03 $ 36 $ 3e, $ 00 $ 00 $ 00 $ 14 $ 08, $ 06
, $ 3e, $ 7e, $ 36, $ 22, $ 1c, $ 41, $ 01, $ 7a, $ 7f, $ 00, $ 01
, $ 41, $ 40, $ 7f, $ 7f, $ 3e, 06 $, $ 5e, $ 46, $ 31, $ 01, $ 3f, $ 1f $ 3f, $ 63,
$ 07, $ 43, $ 00, $ 20, $ 7f, $ 04, $ 40, $ 00], B1
portc = B1
temp = portc
DONOSNOST
še
i = i - 65 "abcdefg
hijklmnopqrstu
vwxyz (|) ~
LOOKUP2 i, [$ 78 $ 38 $ 20, $ 7f, $ 18, $ 02, $ 3c,
$ 78 $ 00 $ 3D $ 00 $ 00 $ 78 $ 78 $ 38 $ 08, $ 7c, $ 08, $ 20 $ 20 $ 7c,
$ 1c $ 3c, 44 $, $ 3c, $ 44 $ 00 $ 00 $ 08, $ 04], B1
portc = B1
temp = portc
i = i 65
DONOSNOST
endifl: Pojdi l
konec

 
Vsi moji programi i pisati z picbasic zakaj, ampak za uporabo GLCD i Proton.

 

Welcome to EDABoard.com

Sponsor

Back
Top