problema con lcd

Tengo un problema con un LCD en Basic. No consigo hacerlo funcionar ya que me tira el error "illegal character". Ahi les dejo el code a ver si me ayudan:
Código:
'Preparo el LCD

	Define LCD_BITS = 8
	Define LCD_DREG = PORTB
	Define LCD_DBIT = 0
	Define LCD_RSREG = PORTA
	Define LCD_RSBIT = 0
	Define LCD_RWREG = PORTA
	Define LCD_RWBIT = 1
	Define LCD_EREG = PORTA
	Define LCD_EBIT = 2
	Define LCD_READ_BUSY_FLAG = 1
Lcdinit 

pause 500

main:
Lcdout $fe, 1
Lcdout "Hola"
pause 500
goto main
End
 
Tengo un problema con un LCD en Basic. No consigo hacerlo funcionar ya que me tira el error "illegal character". Ahi les dejo el code a ver si me ayudan:
Saludos rakata
Quita los signos = de las definiciones.
No se que compilador estes usando para tu programa.
En PICBASIC PRO no llevan ese signo.
La definición (Define LCD_READ_BUSY_FLAG = 1) No la conocia, ni la tengo registrada.

Prueba quitando los signos, y espero soluciones tu problema.

Suerte y hasta luego.
 
Era eso, muchas gracias.
Otra cosa, para el LCD en este caso desde D0 a D4 iria conectado a RB0 hasta RB4?

Era eso, muchas gracias.
Otra cosa, para el LCD en este caso desde D0 a D4 iria conectado a RB0 hasta RB4?



Entonces quien me puede decir por que mi lcd no muestra nada cuando lo simulo?
Ahi va el code y una imagen de comoesta en proteus

Código:
'Configuramos los fuses 
        @__CONFIG    _CONFIG1L, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L
        @__CONFIG    _CONFIG1H, _FOSC_HSPLL_HS_1H & _FCMEN_OFF_1H & _IESO_OFF_1H
        @__CONFIG    _CONFIG2L, _PWRT_OFF_2L & _BOR_ON_2L & _BORV_3_2L & _VREGEN_ON_2L
        @__CONFIG    _CONFIG2H, _WDT_ON_2H & _WDTPS_512_2H
        @__CONFIG    _CONFIG3H, _CCP2MX_ON_3H & _PBADEN_OFF_3H & _LPT1OSC_OFF_3H & _MCLRE_OFF_3H
        @__CONFIG    _CONFIG4L, _STVREN_ON_4L & _LVP_OFF_4L & _XINST_OFF_4L



TRISB=0
TRISA=0


'Preparo el LCD

	Define LCD_BITS  4
	Define LCD_RWREG PORTA
	Define LCD_RWBIT 1
	Define LCD_DREG  PORTB
	Define LCD_DBIT  0
	Define LCD_RSREG  PORTA
	Define LCD_RSBIT  0
	Define LCD_EREG  PORTA
	Define LCD_EBIT  2
	Define LCD_LINES 2
	Define LCD_READ_BUSY_FLAG  1
	Lcdinit 

pause 500

main:
LCDout $fe, 1, "Hola"
LCDout $FE, $C0, "Mundo"
pause 500
goto main
End
 

Adjuntos

  • wefr.PNG
    wefr.PNG
    28.4 KB · Visitas: 6
Última edición:
Era eso, muchas gracias.
Otra cosa, para el LCD en este caso desde D0 a D4 iria conectado a RB0 hasta RB4?

Entonces quien me puede decir por que mi lcd no muestra nada cuando lo simulo?
Ahi va el code y una imagen de comoesta en proteus
Saludos.
Prueba usando este código.
Código:
DEFINE LCD_DREG PORTB        ; Puerto de datos del LCD
DEFINE LCD_DBIT     4        ; Iniciar los datos del LCD desde RB4 a RB7
DEFINE LCD_RSREG PORTB        ; Puerto del LCD (Register Select)
DEFINE LCD_RSBIT    1        ; Bit del LCD RB1(RS)
DEFINE LCD_EREG PORTB        ; Puerto del LCD (Enable)
DEFINE LCD_EBIT     3        ; Bit del LCD RB3(E)
DEFINE LCD_RWREG PORTB        ; Puerto del LCD (Read/Write)
DEFINE LCD_RWBIT    2        ; Bit del LCD RB2 (RW)
DEFINE LCD_BITS     4        ; Tamaño del BUS del LCD
DEFINE LCD_LINES    2        ; Número de líneas del LCD
DEFINE LCD_COMMANDUS 2000    ; Retardo del comando en uS.
DEFINE LCD_DATAUS   50        ; Retardo del tiempo de datos en uS.
;*******************************************************************************
; Configuración opcional de registros
CMCON = 7                    ; %00000111    (7) Comparadores analógicos OFF
ADCON1 = $F                 ; %00001111    (15) ADC 0FF
TRISB = 1                    ; %00000001    (1) Configuración del puerto B
;*******************************************************************************
PAUSE   100
LCDOUT  $FE,1                ; Borrar Display
LCDOUT  $FE,$80,"HOLA MUNDO" ; Primer Línea
LCDOUT  $FE,$C0,"HELLO WORLD" ; Segunda Línea
END
En este ejemplo no es necesario que hagas un Loop, ya que los caracteres en pantalla, se retienen.
Me pregunto. ¿Que compilador o programa estas usando?

PD. No sé si el compilador que estas usando requiera la directiva Lcdinit

Suerte y hasta luego. :apreton:
 

Adjuntos

  • LCD16X2(4Bits).gif
    LCD16X2(4Bits).gif
    25.9 KB · Visitas: 7
Última edición:
Atrás
Arriba