X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fdrivers%2Fao_ms5607.c;fp=src%2Fdrivers%2Fao_ms5607.c;h=077a40e6a02e6b4478e39b9923e021df99d1f00e;hp=fdd2c31e5992e4c96e1120d313bb13ba186978b7;hb=5a55501660ebab3b858a48483c5df1cfb4e858e4;hpb=440365bd17d804c2f574c35164612cf1682397d7 diff --git a/src/drivers/ao_ms5607.c b/src/drivers/ao_ms5607.c index fdd2c31e..077a40e6 100644 --- a/src/drivers/ao_ms5607.c +++ b/src/drivers/ao_ms5607.c @@ -170,13 +170,15 @@ ao_ms5607_sample(struct ao_ms5607_sample *sample) #include "ao_ms5607_convert.c" #if HAS_TASK +struct ao_ms5607_sample ao_ms5607_current; + static void ao_ms5607(void) { ao_ms5607_setup(); for (;;) { - ao_ms5607_sample((struct ao_ms5607_sample *) &ao_data_ring[ao_data_head].ms5607_raw); + ao_ms5607_sample(&ao_ms5607_current); ao_arch_critical( AO_DATA_PRESENT(AO_DATA_MS5607); AO_DATA_WAIT(); @@ -202,14 +204,11 @@ ao_ms5607_info(void) static void ao_ms5607_dump(void) { - struct ao_ms5607_sample sample; struct ao_ms5607_value value; - ao_ms5607_setup(); - ao_ms5607_sample(&sample); - ao_ms5607_convert(&sample, &value); - printf ("Pressure: %8u %8d\n", sample.pres, value.pres); - printf ("Temperature: %8u %8d\n", sample.temp, value.temp); + ao_ms5607_convert(&ao_ms5607_current, &value); + printf ("Pressure: %8u %8d\n", ao_ms5607_current.pres, value.pres); + printf ("Temperature: %8u %8d\n", ao_ms5607_current.temp, value.temp); printf ("Altitude: %ld\n", ao_pa_to_altitude(value.pres)); }