Executing: "C:\Program files\Picc\CCSC.exe" +FH "Master.c" +DF +LN +T +A +M +Z +Y=9 +EA
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 43(13,20): Undefined identifier LCD_DB4
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 44(13,20): Undefined identifier LCD_DB5
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 45(13,20): Undefined identifier LCD_DB6
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 46(13,20): Undefined identifier LCD_DB7
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 49(14,19): Undefined identifier LCD_E
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 51(13,18): Undefined identifier LCD_E
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 73(13,18): Undefined identifier LCD_E
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 76(18,25): Undefined identifier LCD_DB4
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 77(18,25): Undefined identifier LCD_DB5
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 78(18,25): Undefined identifier LCD_DB6
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 79(18,25): Undefined identifier LCD_DB7
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 81(12,17): Undefined identifier LCD_E
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 96(13,19): Undefined identifier LCD_RW
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 111(12,18): Undefined identifier LCD_RS
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 120(16,22): Undefined identifier LCD_RS
*** Error 51 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 121(1,5): A numeric expression must appear here
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 127(12,18): Undefined identifier LCD_RW
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 131(12,17): Undefined identifier LCD_E
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 142(12,18): Undefined identifier LCD_RS
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 145(12,18): Undefined identifier LCD_RW
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 148(12,17): Undefined identifier LCD_E
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 227(13,19): Undefined identifier LCD_RS
*** Error 12 "C:\Program Files\PICC\drivers\flex_lcd.h" Line 229(12,18): Undefined identifier LCD_RS
23 Errors, 0 Warnings.
Halting build on first failure as requested.
BUILD FAILED: Fri Oct 02 08:50:08 2009
Tengo un pequeño problemita quiero usar el Flex_lcd.h y direccionar todo al puerto A mas que al compilar me da ErrorCódigo: Cintente hacer esta simulacion con la lcd.c ya configurada para usar un teclado matricial de 4x4 pero al conectar la lcd y el teclado en el puerto b nadamas no me manda señales la Lcd de que reciba algun dato
#include <18f2550.h> #fuses XT,NOWDT,NOPROTECT,NOLVP #use delay(clock= 4000000) #include <flex_lcd.h> #include <kbd_lib.c> #define use_portb_kbd TRUE #define LCD_DB4 PIN_A4 #define LCD_DB5 PIN_A5 #define LCD_DB6 PIN_A6 #define LCD_DB7 PIN_A7 #define LCD_RS PIN_A1 #define LCD_RW PIN_A2 #define LCD_E PIN_A0 void main() { char k; int x; lcd_init(); kbd_init(); port_b_pullups(TRUE); lcd_putc("\fListo...\n"); while (TRUE) { k=kbd_getc(); x=k-48; //Conversión numérica if(k!=0){ if(k=='*') lcd_putc('\f'); else lcd_putc(k); //Imprime carácter delay_ms(500); delay_ms(500); delay_ms(500); delay_ms(500); lcd_putc("\fListo...\n"); } } }
es por el orden, hiciste esto cualesquiera sean los pines elegidos:
include <flex_lcd.h>
#include <kbd_lib.c>
#define use_portb_kbd TRUE
#define LCD_DB4 PIN_A4
#define LCD_DB5 PIN_A5
#define LCD_DB6 PIN_A6
#define LCD_DB7 PIN_A7
#define LCD_RS PIN_A1
#define LCD_RW PIN_A2
#define LCD_E PIN_A0
y debe ser:
#define LCD_DB4 PIN_A4
#define LCD_DB5 PIN_A5
#define LCD_DB6 PIN_A6
#define LCD_DB7 PIN_A7
#define LCD_RS PIN_A1
#define LCD_RW PIN_A2
#define LCD_E PIN_A0
include <flex_lcd.h> //después de los defines, porque esos defines se usaran en la lib
#define use_portb_kbd TRUE //lo mismo acá este, define seguramente se usará en la lib kbd,
//y debe estar definido antes de incluir la libreria
#include <kbd_lib.c>
edit: uuy ya me ganaron :D
Que paso ahí! :shock: No entiendo naa! :Dya realize un cambio al puerto b mas que con un teclado de 3x4 si me muestra lo que sucede pero con el de 4x4 nadamas no ahorita subo el codigo para que vean
Que paso ahí! :shock: No entiendo naa! :Dya realize un cambio al puerto b mas que con un teclado de 3x4 si me muestra lo que sucede pero con el de 4x4 nadamas no ahorita subo el codigo para que vean
#include <18f4550.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP //ordenes para el programador
#use delay (clock=8000000) //Fosc=4Mhz
#define use_portd_lcd TRUE
#include <lcd.c> //libreria manejo lcd 8bits
#define use_portb_kbd TRUE
#include <kbdd.c>//kbd_lib
#use fast_io(b)
#use fast_io(d)
int tecla;
#int_rb
void control_rb() {
tecla = kbd_getc();
printf(lcd_putc,"fPulso %c",tecla); }
void main() {
lcd_init(); // Inicializa el LCD
port_b_pullups(TRUE);
kbd_init(); // Inicializa el teclado matricial
enable_interrupts(int_rb); // Habilita interrupión cambio de estado RB4:7
enable_interrupts(global); // Habilita interrupciones globalmente
printf(lcd_putc,"f");
sleep();
}
#INCLUDE "KBD_LIB.C"
#include "flex_lcd.c"
CHAR TECLA;
void main()
{
setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
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);
setup_vref(FALSE);
port_b_pullups(true);
SET_TRIS_D(0);
lcd_init();
kbd_init();
PRINTF(LCD_PUTC,"HOLA");
for(;;)
{
TECLA=KBD_GETC();
if(TECLA!=0)
{PRINTF(LCD_PUTC,"%C",TECLA);}
}
}