Ejemplo n.º 1
0
unsigned char gps_get_status(void)
{
	unsigned char data[GPS_STATUS_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_STATUS_ID);
	for(i=0;i<(GPS_STATUS_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	return data[2];
}
Ejemplo n.º 2
0
float gps_get_latitude(void)
{
	unsigned char data[GPS_LATITUDE_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_LATITUDE_ID);
	for(i=0;i<(GPS_LATITUDE_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	return atof(&data[2]);
}
Ejemplo n.º 3
0
unsigned char gps_get_sate_in_veiw(void)
{
	unsigned char data[GPS_SATE_IN_VIEW_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_SATE_IN_VIEW_ID);
	for(i=0;i<(GPS_SATE_IN_VIEW_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	return data[2];
}
Ejemplo n.º 4
0
unsigned char gps_get_position_fix(void)
{
	unsigned char data[GPS_POSITION_FIX_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_POSITION_FIX_ID);
	for(i=0;i<(GPS_POSITION_FIX_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	return data[2];
}
Ejemplo n.º 5
0
VMUINT8 led_matrix_check_on_line()
{
	VMUINT8 DataBuf[4] = {0};

	dlc_i2c_configure(LEDAddress, 100);

	DataBuf[0] = dlc_i2c_receive_byte(NULL);
	DataBuf[1] = dlc_i2c_receive_byte(NULL);
	DataBuf[2] = dlc_i2c_receive_byte(NULL);
	DataBuf[3] = dlc_i2c_receive_byte(NULL);

	//m_log_info("led matrix check data is %x %x %x %x",DataBuf[0],DataBuf[1],DataBuf[2],DataBuf[3]);

	if(DataBuf[3] == LEDAddress)
	{
		//vm_log_info("led matrix is on line.");
		return TRUE;
	}
	else
	{
		//vm_log_info("led matrix is not on line.");
		return FALSE;
	}
}
Ejemplo n.º 6
0
unsigned char gps_get_ew(void)
{
	unsigned char data[GPS_EW_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_EW_ID);
	for(i=0;i<(GPS_EW_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	if(data[2] == 'E' || data[2] == 'W')return data[2];
	else return data[2] = '-';
}
Ejemplo n.º 7
0
unsigned char gps_check_online(void)
{
	unsigned char data[GPS_SCAN_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_SCAN_ID);

	for(i=0;i<(GPS_SCAN_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	if(data[5] == GPS_DEVICE_ADDR)return 1;
	else return 0;
}
Ejemplo n.º 8
0
unsigned char* gps_get_utc_date_time(void)
{
	unsigned char data[GPS_UTC_DATE_TIME_SIZE+2];
	unsigned char i;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_UTC_DATE_TIME_ID);

	for(i=0;i<(GPS_UTC_DATE_TIME_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	for(i=0;i<GPS_UTC_DATE_TIME_SIZE;i++)
	gps_utc_date_time[i] = data[i+2];

	return gps_utc_date_time;
}
Ejemplo n.º 9
0
unsigned char gps_get_sate_used(void)
{
	unsigned char data[GPS_SATE_USED_SIZE+2];
	unsigned char i;
	unsigned char value;

	dlc_i2c_configure(GPS_DEVICE_ADDR, 100);

	dlc_i2c_send_byte(GPS_SATE_USED_ID);
	for(i=0;i<(GPS_SATE_USED_SIZE+2);i++)
	{
		data[i] = dlc_i2c_receive_byte();
	}

	if(data[3] >= '0' && data[3] <= '9')value = (data[3] - '0') * 10;
	else value = 0;
	if(data[2] >= '0' && data[2] <= '9')value += (data[2] - '0');
	else value += 0;

	return value;
}