I am using a pic16f877a, an EM-506 GPS module, and a 16x2 LCD to display the Speed Over Ground and using Timer 0 as the timer and Timer 1 as a counter to display RPM's. I can get the RPM's and speed to display individually but not at the same time. For the tachometer, I set the pre-scalar to 0x07 to create the longest delay possible prior to servicing the interrupt which increments a counter until the timer = 1 second at which point I multiply the value by 60 to create RPM's. I think the constant interrupting from Timer 0 effects the baud rate and prevents the GPS routine from running properly. Is there anyway to fix this? Also, by multiplying the value by 60 each time I get increments of 60 in the tachometer value, any work around to this? Thank you very much.
The LED is activated by port b change. When a button is pressed, the LED turns on indicating which routine is being run. This is the only way I can display it. The GPS_GetData andDisplayIt polls the RCIF flag and then begins to parse the nmea data string.