TODOPIC

Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: Joga en 28 de Marzo de 2009, 05:25:53

Título: problema LCD en puesto A y C
Publicado por: Joga en 28 de Marzo de 2009, 05:25:53
Buenas a todos, no consigo escribir en una pantalla de 2x16. La cosa es que al principio si podia, y tras encender y apagar el circuito ya no puedo.

La tengo conectada así:

#define LCD_DB4   PIN_A3
#define LCD_DB5   PIN_A2
#define LCD_DB6   PIN_A0
#define LCD_DB7   PIN_A1

#define LCD_RS     PIN_C0
#define LCD_RW    PIN_C1
#define LCD_E       PIN_A5

Ulilizo la libreria flex_lcd.

y este es la partde del programa donde defino los puertos:

#include <18F2550.h>
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
#use delay(clock=48000000)

#USE I2C (Master, Force_HW, Slow, SDA = Pin_B0, SCL = Pin_B1)

#include <usb_bootloader.h>
#include "usb_cdc.h"
#include "flex_lcd_2.c"
#include <string.h>

#define LED_r     PIN_A4

#ZERO_RAM

#use fast_io (A)
#use fast_io (B)
#use fast_io (C)
   
int ab=0;


void main() {

   setup_vref(FALSE);
   setup_adc(ADC_OFF);
   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_spi(SPI_SS_DISABLED);
   setup_wdt(WDT_OFF);
   setup_timer_0(RTCC_INTERNAL);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_timer_3(T3_DISABLED|T3_DIV_BY_1);
   setup_comparator(NC_NC_NC_NC);
   port_b_pullups(FALSE);

   
   set_tris_a(0b0000000);
   set_tris_b(0b11111100);
   set_tris_c(0b1100100);

He probado poniendolos todos como salidas, pero tampoco, y no se si algun puerto que utilizo, tiene alguna particuliaridad. Le he hechado un vistado al datasheet del micro pero no he visto nada. A ver si me podeis encaminar, por que no tengo ni idea y llevo una semana sin avanzar en mi proyecto  :?.

Un saludo.
Título: Re: problema LCD en puesto A y C
Publicado por: PalitroqueZ en 28 de Marzo de 2009, 12:34:32
Deberias hacer un programa aparte solo para usar la LCD, quita todo eso de usb, i2c y deja el pic solo con la pantalla

Buenas a todos, no consigo escribir en una pantalla de 2x16. La cosa es que al principio si podia, y tras encender y apagar el circuito ya no puedo.
...

eso es grave, es señal que se pudo haber quemado algo.

Título: Re: problema LCD en puesto A y C
Publicado por: Joga en 29 de Marzo de 2009, 07:11:34
Gracias por responder, probaré el lcd con otro circuito  para ver si me funciona con la misma configuración.

Un saludo.