Acción
Mandar una constante o una variable a la pantalla LCD.
Sintaxis
LCD x
Comentarios
x Variable o constante a mandar a la pantalla.
Variables adicionales pueden ser mandadas a la pantalla con esta sentencia separándolas por “;”.
LCD a ; b1 ; “constante”
La sentencia LCD se comparta idénticamente a la sentencia PRINT. Por eso la sentencia SPC () también puede ser utilizada. La única diferencia entre PRINT es que LCD no agrega CR+LF cuando se mandan los datos a la pantalla.
Véase también
$LCD , $LCDRS , CONFIG LCD , SPC , CLS , INITLCD , SHIFTLCD , SHIFTCURSOR , CURSOR
Ejemplo
‘-------------------------------------------------------
‘nombre : lcd.bas
‘copyright : © 1995-2005, MCS Electronics
‘purpose : demo: LCD, CLS, LOWERLINE, SHIFTLCD,SHIFTCURSOR, HOME,
‘ CURSOR, DISPLAY
‘micro : Mega8515
‘suited for demo : yes
Commercial addon needed : no
‘-------------------------------------------------------
$regfile = “m8515.dat” ‘especifica el controlador usado
$crystal = 4000000 ‘cristal usado
$baud =19200 ‘velocidad de transmisión
$hwstack =32 ‘valor predeterminado para el stack de la hardware
$swstack = 10 ‘valor predeterminado para el stack de la software
$framesize = 40 ‘espacio predeterminado para el marco
$sim
‘Elimine esta sentencia en la versión final del programa!!
‘$sim es utilizado aquí únicamente para lograr una simulación más rápida.
‘Anotación: Este programa ha sido verificado en el modo Pin con 4 bits.
‘Anotación del traductor: Las interfaces de las pantallas LCD frecuentemente tienen una ancho del bus de datos de 8 bit y ofrecen la posibilidad de ser usados con solo 4 bits. Esto se hace para limitar el número de bits requeridos para conectar una pantalla LCD al controlador. No tiene ventaja alguna usar 8 bits por ser muy limitada la cantidad de datos que se deben transmitir.
'Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.5 , Rs = Portb.6
Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Portc.7 , Rs = Portc.6
Rem Con la sentencia “CONFIG LCDPIN” se pueden redefinir las alocaciones estándar de los pines usados por el compilador.
Dim A As Byte
Config Lcd = 16 * 2 'Configuración de la pantalla LCD
‘otras opciones son 16 * 4, 20 * 4, 20 * 2, 16 * 1a
‘Si Usted no usa esta sentencia, entonces el compilador asume 16 * 2.
’16 * 1a se ofrece para pantallas de 16 dígitos con direcciones divididas sobre 2 líneas
‘$LCD = dirección pondrá la pantalla LCD en el modo con bus de datos de 8 bits de ancho
‘Utilice esto con controladores con memoria RAM externa y/o ROM
‘porque este no necesitará los pines del portal!
Cls 'borrar el contenido de la pantalla LCD
Lcd "Hola mundo." 'Muestra esta línea de texto en el primer renglón de la pantalla
Wait 1
Lowerline 'selecciona el renglón inferior de la pantalla
Wait 1
Lcd "Mueve esto" 'Muestra esta línea de texto en el segundo renglón de la pantalla
Wait 1
For A = 1 To 10
Shiftlcd Right 'mueve el texto en el renglón hacia la derecha
Wait 1 'espera un momento
Next
For A = 1 To 10
Shiftlcd Left 'mueve el texto en el renglón hacia la derecha
Wait 1 'espera un momento
Next
Locate 2 , 1 'define la posición del cursor
Lcd "*" 'pon esto en la pantalla
Wait 1 'espera un momento
Shiftcursor Right 'mueve el cursor hacia la derecha
Lcd "@" 'pon esto en la pantalla
Wait 1 'espera un momento
Home Upper 'selecciona el renglón uno y vuelve a home
LCD "Reemplazado." 'reemplaza el texto
Wait 1 'espera un momento
Cursor Off Noblink 'oculta el cursor
Wait 1 'espera un momento
Cursor On Blink 'muestra el cursor
Wait 1 'espera un momento
Display Off 'apaga la pantalla
Wait 1 'espera un momento
Display On 'enciende la pantalla
'-----------------NEW soporte para pantallas de 4-líneas ------
Thirdline
Lcd "Línea 3"
Fourthline
Lcd " Línea 4"
Home Third 'vete a home de la línea 3
Home Fourth
Home F 'la sentencia primer dígito también funciona
Locate 4 , 1 : Lcd " Línea 4"
Wait 1
‘Anotación del traductor: La sentencia “WAIT” se requiere, pues esta sentencia en BASCOM ha sido implementada de tal modo que no usa la posibilidad de verificar que la pantalla esta lista para aceptar el próximo dato, sino que espera este tiempo usando esta sentencia. Por esto no se conecta el pin de salida de la pantalla que indica que esta está lista para recibir el próximo dato.
'Ahora déjenos crear un dígito especial
'El primer dígito es el characternumber (0-7)
'Los otros dígitos son los valores de renglón rowvalues
'Utilice la herramienta LCD para insertar este renglón
Deflcdchar 1 , 225 , 227 , 226 , 226 , 226 , 242 , 234 , 228 ' reemplaza ? con un número (0-7)
Deflcdchar 0 , 240 , 224 , 224 , 255 , 254 , 252 , 248 , 240 ' reemplaza ? con un número (0-7)
Cls 'selecciona RAM de datos
Rem Es importante usar la sentencia CLS después de las sentencias deflcd, pues esta instancia vuelve a poner la pantalla en el modo de datos
Lcd Chr(0) ; Chr(1) 'pon el dígito especial en la pantalla
'----------------- Ahora usa una rutina interna ------------
_temp1 = 1 'valor al ACC
!rCall _write_lcd 'ponlo en la pantalla LCD
End