]> mj.ucw.cz Git - home-hw.git/blobdiff - usb/Src/bmp085.c
BMP read after each USB update
[home-hw.git] / usb / Src / bmp085.c
index 9b241a6f068bb1961c01e8c9a0c986cd27c20a80..45039b7dbc7f31521218c3f4a025e243539bc88a 100644 (file)
@@ -161,17 +161,22 @@ enum bmp_state {
   BMP_PRESSURE,
 };
 
+byte bmp_request;
 static byte bmp_state = BMP_IDLE;
 static u16 raw_temp;
 static u32 raw_press;
 int adjusted_temp;
 int adjusted_press;
+u32 bmp_counter;
 
 void bmp_step(void)
 {
   switch (bmp_state)
     {
     case BMP_IDLE:
+      if (!bmp_request)
+       return;
+      bmp_request = 0;
       bmp_debug("BMP: Start measure\n");
       bmp_start_measure(0x2e);
       bmp_state++;
@@ -201,6 +206,7 @@ void bmp_step(void)
       bmp_debug("BMP: Raw pressure: %06x\n", raw_press);
       bmp_recalc(raw_temp, raw_press, BMP_OSS, bmp_constants, &adjusted_temp, &adjusted_press);
       bmp_debug("BMP: Adjusted temp %d, press %d\n", adjusted_temp, adjusted_press);
+      bmp_counter++;
       bmp_state = BMP_IDLE;
       break;
     }