Fixed BME280 driver init

This commit is contained in:
Mark Qvist 2021-03-12 22:22:06 +01:00
parent 596539f0cd
commit 275704b508
4 changed files with 12 additions and 23 deletions

View File

@ -250,7 +250,7 @@ bool bme280_init(uint8_t cs_usrio_pin) {
bme280_temperature_fine_adjust = BME280_TEMPERATURE_ADJUSTMENT;
USR_IO_DDR |= bme280_cs_usrio_pin;
USR_IO_DDR |= _BV(bme280_cs_usrio_pin);
SPI_DDR |= _BV(SPI_MOSI) | _BV(SPI_CLK);
SPI_DDR &= ~(_BV(SPI_MISO));

4
main.c
View File

@ -104,12 +104,12 @@ void init(void) {
mtime_t sensor_poll_time = 0;
void sensor_jobs(void) {
if (rtc_milliseconds() > sensor_poll_time+config_sensor_interval_ms) {
if (milliseconds() > sensor_poll_time) {
if (config_sensor_bme280_enabled && bme280_ready) {
bme280_poll();
}
sensor_poll_time = rtc_milliseconds();
sensor_poll_time = milliseconds() + config_sensor_interval_ms;
}
}

View File

@ -120,19 +120,4 @@ void EEPROM_updatebyte(uint16_t addr, uint8_t data);
uint8_t EEPROM_readbyte(uint16_t addr);
void EEPROM_writebyte(uint16_t addr, uint8_t data);
#endif
/*
CSMA P
CSMA Slot Time
Preamble
Tail
LED intensity
Output gain
Input gain
Pass-all
Log packets
*/
#endif

View File

@ -35,6 +35,10 @@ inline mtime_t ticks_to_ms(ticks_t ticks) {
return DIV_ROUND(ticks, DIV_ROUND(CLOCK_TICKS_PER_SEC, 1000));
}
static inline mtime_t milliseconds(void) {
return ticks_to_ms(timer_clock());
}
static inline uint32_t rtc_seconds(void) {
uint32_t result;
@ -45,6 +49,10 @@ static inline uint32_t rtc_seconds(void) {
return result;
}
static inline mtime_t rtc_milliseconds(void) {
return ticks_to_ms(timer_clock() % CLOCK_TICKS_PER_SEC);
}
static inline uint32_t rtc_unix_timestamp(void) {
uint32_t result;
ATOMIC_BLOCK(ATOMIC_RESTORESTATE) {
@ -54,10 +62,6 @@ static inline uint32_t rtc_unix_timestamp(void) {
return result+UNIX_EPOCH_OFFSET;
}
static inline mtime_t rtc_milliseconds(void) {
return ticks_to_ms(timer_clock() % CLOCK_TICKS_PER_SEC);
}
static inline void rtc_set_seconds(uint32_t seconds) {
ATOMIC_BLOCK(ATOMIC_RESTORESTATE) {
_rtc_seconds = seconds;