Hola amigos del foro, primero que nada felicitarlos por este espacio que ayuda a varias personas. Bueno ire directo al punto
estoy creando un proyecto en CCS el cual consiste en leer de una pistola de codigos de barra y esta trasmitira al pic su lectura
para comparar segun yo estime conveniente, el hecho es que la pistola transmite de forma serial una cadena de numeros. Bueno
el problema esta que al simularlo en Proteus me aparecen los mensajes en el LCD (eso esta bien...ahhh para simular la pistola
uso un terminal virtual en proteus en el cual puedo escribir y al apretarle enter se me ve en pantalla), ahora lo que le estoy mandando se me ve pero no lo compara con un arreglo previamente definido, miren este es el programa:
#include <16F84A.h>
#fuses XT, NOWDT, NOPROTECT
#use delay(clock=4000000)
#include <string.h>
#include <stdlib.h>
#define Tx PIN_A1 // PIN de Transmisión
#define Rx PIN_A0 // PIN de Recepción
//#define PIN_A3 43
#use rs232(baud=9600,parity=N,xmit=Tx,rcv=Rx,bits=8)
//#use fast_io (a)
#use fast_io (b)
#include "lcd.c"
#define use_portb_lcd TRUE
disable_interrupts(global);
void main()
{
char cod1[4]="100";
char cod2[4]="200";
char lectura[4];
RESTART_WDT();
lcd_init();
printf(lcd_putc," PROY LECTURA\n");
printf(lcd_putc,"PIC LISTO");
/*delay_us( 3000 );
output_high(PIN_A2);
delay_us( 3000 );*/
while(1)
{
gets(lectura);
printf("rProducto: %s\f",lectura);
printf(lcd_putc,"\fProducto:\n%s",lectura);
if(lectura==cod1)
{
delay_us( 3000 );
output_high(PIN_A2);
delay_us( 3000 );
}
if(lectura==cod1)
{
delay_us( 3000 );
output_high(PIN_A3);
delay_us( 3000 );
}
//output_low(PIN_A2);
//output_high(PIN_A3);
}
}