PicBasic Pro y pantalla LCD gráfica

A

aghazi

Guest
Hola,

Sé cómo utilizar Hitachi 44780 carácter LCD con PIC usando Picbasic profesional.¿Puede alguien por favor me guía de cómo utilizar gráficos en lugar de LCD?Quiero utilizarlo con PIC16F877A y picbasic profesional.

Realmente aprecio tu ayuda.Gracias.

AG

 
Nie da się ukryć, z roku na rok urządzenia mobilne pobierają coraz więcej energii. Większe wyświetlacze, większa rozdzielczość ekranu, więcej rdzeni (o wyższym taktowaniu)… tak naprawdę więcej wszystkiego :). Pomimo iż równocześnie rozwijane są bardziej energooszczędne technologie, to i tak największą bolączką pozostaje nadal bateria. Ta nie...

Read more...
 
También estoy muy muy interesantes pero creo GLCD sólo trabaja con PIC18
este enlace para mikrobasic
http://www.mikroe.com/en/books/picbasicbook/07.htm

 
Hola, todos,
GLCD puede trabajar con cualquier PIC.Sin embargo se requiere mucho más líneas de E / S.PROTON BÁSICA GLCD apoya en PIC16 Familia.

 
Lo que significa que no podemos utilizar gráfica LCD en picbasic profesional?Difícil de creer.

 
Cita:

También estoy muy muy interesantes pero creo GLCD sólo trabaja con PIC18

este enlace para mikrobasic

http://www.mikroe.com/en/books/picbasicbook/07.htm
 
así mr agazhi,

LCD gráfico también se ejecuta en 8-bits de datos,
por lo que es 100% interfaceable con pic16 serie.

en lo que respecta a la codificación se refiere mailme espalda.Tengo una interfaz con éxito con todo el texto y rectángulos, etc.

su muy simple, todo lo que tienes que hacer es escribir las funciones de:

comando escribir
escribir datos
rectángulo de coordenadas
dibujar la línea
etc ..

prefieren hacer sus propias funciones en lugar de utilizar las bibliotecas incorporadas

código de ejemplo en la idea básica, recuerde todo el código podría no ser el adecuado de acuerdo con usted, pero funciona de acuerdo a la solicitud que tenía, estoy leyendo el código de caracteres de 5x7 a 5 búsquedas es decir, 5 columnas:

definir osc 20
trisc = $ 00
trisd = $ 00var en portd.0
var rw portd.1
var rs portd.2
CS1 var portd.3
CS2 var portd.4
var restablecer 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

var un byte
b var byte
c var byte
d var byte
e var byte

i var byte
b0 var byters = 1
rw = 0
es = 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
var tipo bytereset = 0
pausa 1000
reset = 1temp = $ 3e
gosub command_write

pausa 100

temp = $ 3 septies
gosub command_write

pausa 100
'************************************************* ******************************
clear_display: 'clrscrpara x = 0 a 7
temp = $ b8 x
gosub command_write

para y = 0 a 63 "columna de aumento automático en cada escritura
temp = $ 00
gosub data_write
y el próximo
next x

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

Ir a alpha_change

column_change: si (y <125) entonces
temp = $ 40 y

endif
gosub command_writepage_change: si (x <= 7) entonces
temp = $ b8 x
algo más
x = 0
temp = $ b8 x
endif
gosub command_write

alpha_change:

Buscar b0, [ "la forma más fácil de ganar dinero es smugglingbut
que es peligroso! "], c1
type = c1
if (tipo! = 33) entonces
i = tipo - 32
algo más
ir l
endifgosub display_0
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pausa 10gosub display_1
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pausa 10
gosub display_2
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pausa 10gosub display_3
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pausa 10gosub display_4
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pausa 10

temp = $ 00
gosub data_write
y = y 1
gosub test_mid
gosub test_last
pausa 10b0 = b0 1
pausa de 2

Ir a column_changeir l
'------------------------------------------------- ------------------------------
'------------------------------ sub-rutinas ---------------- ---------------------
test_mid: si (y == 64) entonces
CS1 = 0
CS2 = 1

temp = $ b8 x
gosub command_write
temp = $ 40
gosub command_write
pausa de 5

endif
volvertest_last: si (y == 126) entonces
CS1 = 1
CS2 = 0
x = x 1
temp = $ b8 x
gosub command_write

temp = $ 40
gosub command_write
y = 0
endif
volver

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
volver

el espacio: temp = $ 00
gosub data_write
volver

data_write: rw = 0
rs = 1
PORTC = temp
= 1 en
pausa de 5
es = 0
volver

command_write: rw = 0
rs = 0
PORTC = temp
= 1 en
pausa de 5
es = 0
volver

display_0:
if (i <= 64) y luego '!"# $% & '
() * , -./ 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, $ 3 septies, $ 1F, $ 3 septies, $ 63, $ 07, $ 61,
$ 7F, $ 02, $ 00, $ 04, $ 40, $ 00], B1
PORTC = B1
temp = PORTC
RETORNO
algo más
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
RETORNO
endif
display_1:
if (i <= 64) y luego '!"# $% &
'() * , -./ 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
RETORNO
algo más
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
RETORNO
endifdisplay_2:
if (i <= 64) y luego '!"# $% &
'() * , -./ 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
RETORNO
algo más
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
RETORNO
endif

display_3:
if (i <= 64) y luego '!"# $% &
'() * , -./ 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, $ 4 ter, $ 7F, $ 45, $ 49, $ 05, $ 49, $ 49, $ 00, $ 00, $ 41, $ 14, $ 14,
$ 09, $ 41, $ 11, $ 49, $ 41, $ 22, $ 49, $ 09, $ 49, $ 08, $ 41, $ 3 septies
, $ 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
RETORNO
algo más
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
RETORNO
endifdisplay_4:
if (i <= 64) y luego '!"# $% &
'() * , -./ 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, $ 7, $ 7F, $ 00, $ 01
, $ 41, $ 40, $ 7F, $ 7F, $ 3e, $ 06, $ 5e, $ 46, $ 31, $ 01, $ 3 septies, $ 1F, $ 3F, $ 63,
$ 07, $ 43, $ 00, $ 20, $ 7F, $ 04, $ 40, $ 00], B1
PORTC = B1
temp = PORTC
RETORNO
algo más
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, $ 7 C,
$ 1c, $ 3c, $ 44, $ 3c, $ 44, $ 00, $ 00, $ 08, $ 04], B1
PORTC = B1
temp = PORTC
i = i 65
RETORNO
endifl: Ir a l
final

 
I todos mis programas de escribir con picbasic pro, pero para el uso de protones GLCD i.

 
Trate de pez espada tiene un BÁSICA GLCD módulo.

 

Welcome to EDABoard.com

Sponsor

Back
Top