Autor Tema: Desplazar texto en LCD  (Leído 8742 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado juanez

  • PIC12
  • **
  • Mensajes: 90
Desplazar texto en LCD
« en: 02 de Noviembre de 2006, 02:43:27 »
Hola he conseguido simular un lcd en proteus, y ya he controlado como escribir en las 2 lineas, pero no consigo desplazar un texto de un lado a otro del lc.

Lo que quiero hacer es un texto que empieze en una punta del lcd y se valla desplazando hacia la otra punta, tipo letrero de farmacia.

Lo he intentado con bucles while wend pero no lo consigo.

salu2

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Desplazar texto en LCD
« Respuesta #1 en: 02 de Noviembre de 2006, 02:47:51 »
Hola puedes usar la instruccion LCDOT$FE, $1C  o bien la instruccion LCDOUT$FE, $18 dentro de un ciclo for para que se desplace

El sentido de desplazamiento no sabria decirte bien porque cuando uso LCDOUT$FE,$1C, en proteus va de izquierda a derecha, pero en la realidad con mi lcd va al reves de derecha a izquierda y viceversa con $18. Esto es si usas PBP


Si usas MKB es mas sencillo, puedes usar el indice del for como en los ejemplos o las instrucciones anteriores.

El for es para darle pausa al desplazamiento...

Suerte
« Última modificación: 02 de Noviembre de 2006, 02:52:32 por navaismo »
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado juanez

  • PIC12
  • **
  • Mensajes: 90
Re: Desplazar texto en LCD
« Respuesta #2 en: 02 de Noviembre de 2006, 13:10:26 »
Vale ya lo he conseguido, despues de darle 20000 vueltas alos bucles for.

Pero para desplazae los caracteres es:

$fe,$10 -----------  mueve el cursor una posicion a la izquierda

$fe,$14 -----------  mueve el cursor una posicion a la derecha

Desconectado Mario

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 873
Re: Desplazar texto en LCD
« Respuesta #3 en: 02 de Noviembre de 2006, 16:41:58 »
No se cómo se hace pero existe una forma de colocar todo el mensaje y que se desplace solo hacia la izquierda o derecha.

Busca la hoja de datos de Hitachi 44780, ese es el controlador que usa tu LCD.

Creo que es algo como dijo Navaismo.
La buena administración es utilizar el sentido común y la regla de oro; aunque el sentido común no es tan común como quisiéramos que fuera y, quien tiene el oro, hace las reglas.
George Terry

"A loser will defeat a genius with hard work"
Rock Lee

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Desplazar texto en LCD
« Respuesta #4 en: 02 de Noviembre de 2006, 22:22:16 »
si esas son las instrucciones default de los lcd's al menos los que yo ocupo, y como dije uso el for para darles una pausita. Ya que sin el for siempre se van muy rapido.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado sergiopic

  • PIC10
  • *
  • Mensajes: 31
Re: Desplazar texto en LCD
« Respuesta #5 en: 18 de Noviembre de 2006, 00:12:40 »
PUES VAYA QUE LAS DEZPLAZA JEJEJE
AMI ME DEZPLAZA TODA LA PANTALLA PORQUE SERA?
MI LCD ES UN 16X2 JHD 162A

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Desplazar texto en LCD
« Respuesta #6 en: 18 de Noviembre de 2006, 00:49:06 »
mira es super facil solo debes de saber que la primera fila empieza en 128 y la segunda en 192
si quiero q se mueva la palabra hola por ejemplo de izquierda a derecha , cinco pasos lo hago asi:
for i=0 to 5
lcdout 254,1   'limpio
lcdout 254,128+i,"hola"
pause 1000
next i

y se movera la cosa en intervalos de 1 segundo, nunca me gusto usar numeros en hexadecimal por eso los pongo en decimal jaja con esa formulka puedes hacer un monton de trucos , y maximizarlo usando arreglos para lcds


 

anything