balcony_weather_station/node1.c

39 lines
1.1 KiB
C

#include <hardware/uart.h>
#include <stdio.h>
#include <hardware/i2c.h>
#include "pico/stdlib.h"
#include "bme280.h"
#include "pms5003.h"
int main() {
stdio_init_all();
// Setup BME280
bme280_config config;
bme280_init(&config, i2c1, 14, 15);
bme280_reading current_bem280_reading;
// Setup PMS5003
pms5003_config pms_config;
pms5003_init(&pms_config, uart1, 20, 21, 18, 19);
pms5003_reading current_pms5003_reading;
while (true) {
// tight_loop_contents();
sleep_ms(5000); // wait 5 sec
printf("Making reading\n");
// Read BME280
current_bem280_reading = bme280_read(&config);
printf("Tempature: %.2f\n", current_bem280_reading.temperature);
printf("Pressure: %.2f\n", current_bem280_reading.pressure);
printf("Humidity: %.2f\n", current_bem280_reading.humidity);
// Read PMS5003
current_pms5003_reading = pms5003_read(&pms_config);
printf("PM1: %.2f\n", current_pms5003_reading.pm1);
printf("PM2.5: %.2f\n", current_pms5003_reading.pm2_5);
printf("PM10: %.2f\n", current_pms5003_reading.pm10);
}
}