*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
#define AO_MS5607_CONVERT_D2_4096 0x58
#define AO_MS5607_ADC_READ 0x00
-#define AO_MS5607_PROM_READ(ad) (0xA0 | ((ad) << 1))
+#define AO_MS5607_PROM_READ(ad) (0xA0U | (uint8_t) ((ad) << 1))
struct ao_ms5607_prom {
uint16_t reserved;
uint32_t temp; /* raw 24 bit sensor */
};
-extern uint8_t ao_ms5607_valid;
-extern struct ao_ms5607_sample ao_ms5607_current;
-
struct ao_ms5607_value {
int32_t pres; /* in Pa * 10 */
int32_t temp; /* in °C * 100 */
};
+extern struct ao_ms5607_sample ao_ms5607_current;
+extern struct ao_ms5607_prom ao_ms5607_prom;
+
+void
+ao_ms5607_setup(void);
+
void
ao_ms5607_init(void);
ao_ms5607_sample(struct ao_ms5607_sample *sample);
void
-ao_ms5607_convert(struct ao_ms5607_sample *sample, struct ao_ms5607_value *value);
-
-void
-ao_ms5607_get_prom(struct ao_ms5607_prom *prom);
+ao_ms5607_convert(struct ao_ms5607_sample *sample,
+ struct ao_ms5607_value *value);
#endif /* _AO_MS5607_H_ */