예제 #1
0
/**
 * @ Opis  				Wykonuje pomiar cisnienia i odczytuje wynik.
 * @ Parametry  		Brak.
 * @ Zwracana wartosc 	Cisnienie w Pa.
 */
int32_t getPressure() {
	int32_t pressure;
	BMP180_StartTemperature();
	_delay_ms(30);
	BMP180_GetTemperature();
	_delay_ms(10);
	BMP180_StartPressure();
	_delay_ms(30);
	pressure = BMP180_GetPressure();

	return pressure;
}
예제 #2
0
void sensor_timerfunc(void *arg)
{
    int32_t temperature;
    int32_t pressure;
	char buff[20];
    ets_uart_printf("Get temperature and pressure...\r\n");
    temperature = BMP180_GetTemperature();
    pressure = BMP180_GetPressure(OSS_0);
    console_printf("Temperature: %s *C\r\n", BMP180_Int2String(buff, temperature));
    console_printf("Temperature: %d.%d *F\r\n", (int)(9 * temperature / 50 + 32), (int)(9 * temperature / 5 % 10));
    console_printf("Pressure: %d mm rt.st.\r\n", (int)(pressure/133.322368));
    console_printf("Pressure: %d m water.st.\r\n", (int)(pressure/9806.65));
    console_printf("Pressure: %d.%d mbar\r\n", (int)(pressure), (int)(pressure%100));
    console_printf("Pressure: %d.%d mmHg\r\n", (int)(pressure * 75 / 10000), (int)((pressure * 75 % 10000) / 1000));
    console_printf("Altitude: %d\r\n", BMP180_CalcAltitude(pressure));
}
예제 #3
0
int main(void)
{
	InitUART(9600, 8);
	
	SendString("Hej UART \r\n");
	
	BMP180_Init(102600);
	
	while(1)
	{	
		SendString("Device id: ");
		SendInteger((int)BMP180_GetDeviceId());
		SendString("\r\n \r\n");
		
		SendString("Temperature: ");
		SendInteger(BMP180_GetTemperature());
		
		SendString("\r\n-----------------\r\n");
		
		_delay_ms(1000);
    }
	
	return 1;
}