Change to Longer 8s Deep Sleep Interval
This commit is contained in:
parent
328eb19237
commit
cbcdc0a8a0
|
@ -43,7 +43,7 @@
|
||||||
#define NSS PIN_B1
|
#define NSS PIN_B1
|
||||||
RFM95 rfm(DIO0,NSS);
|
RFM95 rfm(DIO0,NSS);
|
||||||
LoRaWAN lora = LoRaWAN(rfm);
|
LoRaWAN lora = LoRaWAN(rfm);
|
||||||
unsigned int Frame_Counter_Tx = 0x0000;
|
uint16_t Frame_Counter_Tx = 0x0000;
|
||||||
|
|
||||||
// If set LED will blink when sending
|
// If set LED will blink when sending
|
||||||
#define LED_PIN PIN_A7
|
#define LED_PIN PIN_A7
|
||||||
|
@ -52,7 +52,7 @@ unsigned int Frame_Counter_Tx = 0x0000;
|
||||||
BME280 sensor;
|
BME280 sensor;
|
||||||
|
|
||||||
// Global Variable used for deep sleep
|
// Global Variable used for deep sleep
|
||||||
unsigned int sleep_interval;
|
uint16_t sleep_interval;
|
||||||
|
|
||||||
// Sleep Time (s) Between Two Measurements
|
// Sleep Time (s) Between Two Measurements
|
||||||
#define SLEEP_TIME 528
|
#define SLEEP_TIME 528
|
||||||
|
@ -65,14 +65,15 @@ void init_wdt()
|
||||||
// Start timed sequence
|
// Start timed sequence
|
||||||
// Set Watchdog Change Enable bit
|
// Set Watchdog Change Enable bit
|
||||||
WDTCSR |= (1<<WDCE) | (1<<WDE);
|
WDTCSR |= (1<<WDCE) | (1<<WDE);
|
||||||
// Set new prescaler (1 sec), unset reset enable
|
// Set new prescaler (8 sec), unset reset enable
|
||||||
// enable WDT interrupt
|
// enable WDT interrupt
|
||||||
WDTCSR = (1<<WDIE)|(1<<WDP2)|(1<<WDP1);
|
WDTCSR = (1<<WDIE)|(1<<WDP2)|(1<<WDP0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Enter Sleepmode, Sleep for s Seconds
|
// Enter Sleepmode, Sleep for s Seconds
|
||||||
void sleep(unsigned int s)
|
void sleep(uint16_t s)
|
||||||
{
|
{
|
||||||
|
s = s/8;
|
||||||
sleep_interval = 0;
|
sleep_interval = 0;
|
||||||
while (sleep_interval < s) {
|
while (sleep_interval < s) {
|
||||||
set_sleep_mode(SLEEP_MODE_PWR_DOWN);
|
set_sleep_mode(SLEEP_MODE_PWR_DOWN);
|
||||||
|
@ -86,9 +87,9 @@ ISR(WATCHDOG_vect) {
|
||||||
// Start timed sequence
|
// Start timed sequence
|
||||||
// Set Watchdog Change Enable bit
|
// Set Watchdog Change Enable bit
|
||||||
WDTCSR |= (1<<WDCE) | (1<<WDE);
|
WDTCSR |= (1<<WDCE) | (1<<WDE);
|
||||||
// Set new prescaler (1 sec), unset reset enable
|
// Set new prescaler (8 sec), unset reset enable
|
||||||
// enable WDT interrupt
|
// enable WDT interrupt
|
||||||
WDTCSR = (1<<WDIE)|(1<<WDP2)|(1<<WDP1);
|
WDTCSR = (1<<WDIE)|(1<<WDP2)|(1<<WDP0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get Battery Voltage
|
// Get Battery Voltage
|
||||||
|
|
Loading…
Reference in a new issue