Functions | Variables

sirf3.c File Reference

dissect SiRF binary input message More...

#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include "gps-parser.h"
#include "sirf3.h"

Functions

void sirf_static_nav (usart_control_t *usart)
 Static Navigation.
void sirf_gps_off (usart_control_t *usart)
 power off GPS module
gps_line_status_t sirf_recvd (gps_parser_t *parser, usart_rxdata_t c)
 give one character to SiRF parser
gps_proto_parser_tnew_sirf_parser (gps_parser_t *parser)
void free_sirf_parser (gps_parser_t *parser)

Variables

const gps_proto_functions_t gps_proto_sirf
const gps_proto_functions_t
gps_proto_sirf 
PROGMEM

Detailed Description

dissect SiRF binary input message

reference: http://gpsd.googlecode.com/files/SiRF-SiRF-v2_4.pdf

Interesting SiRF binary input messages:


Function Documentation

void sirf_gps_off ( usart_control_t usart  ) 

power off GPS module

poll Software Version

{
  static const uint8_t msg [] = {SIRFi_SOFT_CTRL, SIRFi_SOFT_OFF};
  sirf_send_msg (usart, msg, sizeof (msg));
  usart_flush (usart);
#if 0
  /* the GPS module is of no use to us until a power-cycle,
   * so cut power to USART */
  usart_disable (usart);
  usart_poweroff (usart);
#endif
}


Variable Documentation

const gps_proto_functions_t gps_proto_sirf PROGMEM
Initial value:
 {
  .newparser = new_sirf_parser,
  .freeparser = free_sirf_parser,
  .recvd = sirf_recvd,
  .switchproto = sirf_switch,
  .proto = GPSPROTO_SiRF,
  .baudrate_max = 115200,
}