void led_matrix_disp_string(VMINT8 uData[],VMUINT8 uDataLength,VMUINT16 uTime)
{
	///*
	VMINT8 buffer[20] = {0};
	VMUINT8 i;
	if(uDataLength > 4)return;
	buffer[0] = uDataLength;
	for(i=0;i<uDataLength;i++)buffer[i + 1] = *(uData ++);
	buffer[i+1] = uTime >> 8;
	buffer[i+2] = uTime;

	dlc_i2c_configure(LEDAddress, 100);
	dlc_i2c_send(DISP_STRING, buffer, uDataLength + 3);
	//*/
	/*
	masterBegin();
	beginTransmission(LEDAddress);
	write(DISP_STRING);
	write(uDataLength);
	write_ext((VMINT8*)uData,uDataLength);
	write(uTime>>8); //high byte of time
	write(uTime);    //low byte of time
	endTransmission();
	*/
}
void led_matrix_disp_pic(VMUINT8 uPicNum, VMUINT16 uTime)
{
	VMUINT8 buffer[3] = {0};
	buffer[0] = uPicNum;
	buffer[1] = uTime >> 8;
	buffer[2] = uTime;

	dlc_i2c_configure(LEDAddress, 100);
	dlc_i2c_send(DISP_PIC, buffer, 3);
}
Beispiel #3
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]);
}
Beispiel #4
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];
}
Beispiel #5
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];
}
Beispiel #6
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];
}
Beispiel #7
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] = '-';
}
Beispiel #8
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;
}
Beispiel #9
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;
}
Beispiel #10
0
void led_matrix_disp_char(VMUINT8 uData,VMUINT16 uTime)
{
	///*
	VMUINT8 buffer[3] = {0};
	buffer[0] = uData;
	buffer[1] = uTime >> 8;
	buffer[2] = uTime;

	dlc_i2c_configure(LEDAddress, 100);
	dlc_i2c_send(DISP_CHAR_5X7, buffer, 3);
	//*/
	/*
	beginTransmission(LEDAddress);
	write(DISP_CHAR_5X7);
	write(uData);
	write(uTime>>8); //high byte of time
	write(uTime);    //low byte of time
	endTransmission();
	*/
}
Beispiel #11
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;
}
Beispiel #12
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;
	}
}
Beispiel #13
0
void led_matrix_power_down()
{
	dlc_i2c_configure(LEDAddress, 100);
	dlc_i2c_send_byte(POWER_DOWN);
}
Beispiel #14
0
void led_matrix_set_disp_orientation(VMUINT8 orientation)
{
	dlc_i2c_configure(LEDAddress, 100);
	dlc_i2c_send(SET_DISP_ORIENTATION, &orientation, 1);
}