summaryrefslogtreecommitdiffstats
path: root/sleep/main.c
diff options
context:
space:
mode:
authorSadeep Madurange <sadeep@asciimx.com>2025-05-01 10:24:46 +0800
committerSadeep Madurange <sadeep@asciimx.com>2025-05-01 10:24:46 +0800
commitd11b0f733b293c768f1bca6bc54ae88997d691a2 (patch)
treedb4f8af1ced15f9a8b7bc61b3fad8b25e1a79c43 /sleep/main.c
parent3e0215f1bcb7018dbbcd1cff9b2dce606cb0328d (diff)
downloadsmart-home-d11b0f733b293c768f1bca6bc54ae88997d691a2.tar.gz
Delete temp, sleep mode code.
Diffstat (limited to 'sleep/main.c')
-rw-r--r--sleep/main.c74
1 files changed, 0 insertions, 74 deletions
diff --git a/sleep/main.c b/sleep/main.c
deleted file mode 100644
index ef4e520..0000000
--- a/sleep/main.c
+++ /dev/null
@@ -1,74 +0,0 @@
-#include <avr/interrupt.h>
-#include <avr/sleep.h>
-#include <avr/wdt.h>
-#include <util/delay.h>
-
-#include "uart.h"
-
-#define LOCK_PIN PD2
-#define UNLOCK_PIN PD3
-
-static inline void init_wdt(void)
-{
- cli();
- wdt_reset();
- WDTCSR |= (1 << WDCE) | ( 1 << WDE);
- WDTCSR = (1 << WDP2) | (1 << WDP1) | (1 << WDP0);
- WDTCSR |= (1 << WDIE);
-}
-
-static inline void init_btns(void)
-{
- DDRD &= ~((1 << LOCK_PIN) | (1 << UNLOCK_PIN));
- PORTD |= ((1 << LOCK_PIN) | (1 << UNLOCK_PIN));
- EICRA = 0b00000000;
- EIMSK = (1 << INT0) | (1 << INT1);
-}
-
-int main(void)
-{
- init_wdt();
- init_btns();
- uart_init();
-
- set_sleep_mode(SLEEP_MODE_PWR_DOWN);
- sei();
-
- for (;;) {
- uart_write_line("Going to sleep");
- sleep_enable();
- sleep_bod_disable();
- sleep_cpu();
-
- sleep_disable();
- _delay_ms(500); /* wait for start-up */
- uart_write_line("Doing some work...");
- _delay_ms(500);
- }
- return 0;
-}
-
-static inline int is_btn_pressed(uint8_t pin, uint8_t btn)
-{
- if (!((pin >> btn) & 0x01)) {
- _delay_ms(100);
- return !((pin >> btn) & 0x01);
- }
- return 0;
-}
-
-ISR(INT0_vect)
-{
- if (is_btn_pressed(PIND, LOCK_PIN))
- uart_write_line("Locked");
-}
-
-ISR(INT1_vect)
-{
- if (is_btn_pressed(PIND, UNLOCK_PIN))
- uart_write_line("Unlocked");
-}
-
-ISR(WDT_vect)
-{
-}