Dear Members ?
What's the best size for GPS Rxbuffer from UART with speed 9600 baud ?
I'm using Neo 6M GPS module,
Thanks
Dear Members ?
What's the best size for GPS Rxbuffer from UART with speed 9600 baud ?
I'm using Neo 6M GPS module,
Thanks
Data from GPS :
$GPGSV,3,2,11,13,38,221,22,14,78,058,23,15,04,228,,17,10,025,*7E
$A,151045.00,3207.99912,S,11559.30940,E,1,04,7.21,10.1,M,-30.6,M,,*56
$GPGSA,A,2,30,07,05,13,,,,,,,,,7.28,7.21,1.00*08
$GPGSV,3,1,11,05,47,269,25,07,24,119,23,08,10,130,,09,14,058,177775,47,269,25,07
,24,119,24,08,10,130,,09,14,058,16*74
$GPGSV,3,2,11,13,38,221,21,14,78,058,23,15,04,228,,17,10,025,*7D
$GPGSV,3,3,11,19,00,009,,28,72,016,16,30,55,148,22*49
$GPGLL,3207.99923,S,11559.30946,E,151050.00,A,A*7B
I reckon it's 512 bytes for buffer, but it's truncated when I transmitted to UART0 in I used 512 bytes buffer,
currently I used 256 bytes,
How can I increse it to 512 bytes without truncating it ? thanks
I am not sure I understand your setup. Are you using 512 or 256 bytes buffer? And what is the GPS module spitting out? How is it truncated? How did you set up your UART?
currently I'm using 256 bytes,
Here's the callback,
if(GPS.rxIndex < sizeof(GPS.rxBuffer)-2) { GPS.rxBuffer[GPS.rxIndex] = GPS.rxTmp; //originally GPS.rxIndex++; memcpy((void *)line_buffer_GPS, GPS.rxBuffer, GPS.rxIndex); }
I try using memcpy to keep the buffer for processing,
I got "null" all the time
str=strstr((char*)line_buffer_GPS,"$GPGGA,");
or
==> always gone (empty buffer / astable ) str=strstr((char*)GPS.rxBuffer,"$GPGGA,");
?? any ideas
none of this is UART related. How do you initialize your UART, and how do you handle the incoming UART bytes? Do you use an event handler, or do you use a blocking UART rx function? If so, which one?
BR,
Edvin