Bueno ante todo un saludo, mi duda es si hay alguna forma de eliminar el ruido producido en un ttl, Tengo el gps mt3339 (alphamicrowireless.com/media/433544/gtop%20module%20application%20note%20-a00%20_mt3339%20series_.pdf) y el detalle es que trate de conectarlo al rx del pic18f2550 pero a un principio no pasaba nada, luego me di cuenta de que el gps trabajaba como maximo con 2.8 por lo que tube que tratar de amplificar el voltaje para lo cual utilice el 74hc08n y bueno me funciono pero a medias
Este es lo que en si deberia votar
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000103.799,,,,,0,0,,,M,,M,,*4D
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,000103.799,V,,,,,0.00,0.00,060180,,,N*47
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,000104.799,,,,,0,0,,,M,,M,,*4A
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,000104.799,V,,,,,0.00,0.00,060180,,,N*40
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
contenido de buffer: $GPGGA,000107.799,,,,,0,0,,,M,,M,,*49
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,000107.799,V,,,,,0.00,0.00,060180,,,N*43
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
~X@VI–iF3Ô€¡â
contenido de buffer: $GPGGA,000107.799,,,,,0,0,,,M,,M,,*49
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,000107.799,V,,,,,0.00,0.00,060180,,,N*43
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
~X@VI–iF3Ô€¡â
El codigo esta echo en ccs
#include <18f2550.h>
#fuses hs,cpudiv1,nomclr
#use delay(clock=20000000)
#use rs232(baud=9600, parity=N, bits=8, xmit=PIN_C6, rcv=PIN_C7, stream=conexiongps)
#use rs232(baud=9600, parity=N, bits=8, xmit=PIN_A0, rcv=PIN_A1, stream=debug_gps)
char buffergps[400]="esto es una prueba \0";
int posicionbuffergps=0;
#int_rda
void rd_isr(void)//función de interrupción por recepción de datos USART
{
buffergps[posicionbuffergps] = fgetc(conexiongps);
posicionbuffergps++;
}
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_CLOCK_DIV_2);
//setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
enable_interrupts(int_rda);
enable_interrupts(GLOBAL);
output_high(PIN_B7);
fprintf(debug_gps,"contenido de buffer:");
// TODO: USER CODE!!
while(1)
{
if(posicionbuffergps>0)
{
buffergps[posicionbuffergps]='\0';
fprintf(debug_gps,"contenido de buffer: %s\r\n",bufferGPS);
posicionbuffergps=0;
}
}
}
de ante mano agradecere cualquier respuesta