Exemplo n.º 1
0
uint16_t pac1720_getBatteryVoltage(void) {
	uint16_t val;
	if(!I2C_read16(PAC1720_ADDRESS, PAC1720_CH2_VSOURCE_HIGH, &val))
		return 0; // PAC1720 not available (maybe Vcc too low)

	return (val >> 5) * 20000 / 0x400;
}
Exemplo n.º 2
0
int TMP006_readAmbientTemperature(void)
{
    /* Specify slave address for TMP006 */
    I2C_setslave(TMP006_SLAVE_ADDRESS);

    return I2C_read16(TMP006_P_TABT);
}
Exemplo n.º 3
0
int TMP006_readObjectVoltage(void)
{
    /* Specify slave address for TMP006 */
    I2C_setslave(TMP006_SLAVE_ADDRESS);

    return I2C_read16(TMP006_P_VOBJ);
}
Exemplo n.º 4
0
int TMP006_readDeviceId(void)
{
    /* Specify slave address for TMP006 */
    I2C_setslave(TMP006_SLAVE_ADDRESS);

    return I2C_read16(TMP006_P_DEVICE_ID);
}
Exemplo n.º 5
0
int16_t pac1720_getPowerCharge(void) {
	int32_t fsp = FSV * FSC;
	uint16_t val;
	if(I2C_read16(PAC1720_ADDRESS, PAC1720_CH1_PWR_RAT_HIGH, &val))
		return val * fsp / 65536;
	else
		return 0; // PAC1720 not available (maybe Vcc too low)
}
Exemplo n.º 6
0
uint16_t gps_bytes_avail(void)
{
	uint16_t val;
	if(I2C_read16(UBLOX_MAX_ADDRESS, 0xFD, &val))
		return val;
	else
		return 0x00;
}