summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSadeep Madurange <sadeep@asciimx.com>2025-04-22 11:24:45 +0800
committerSadeep Madurange <sadeep@asciimx.com>2025-04-22 11:24:45 +0800
commit94f55613a73f95250b29dd9ce51588c051a5cd08 (patch)
tree2e61f88f4bd22fe7c8d36e311daa2840c3e78ed5
parentd0f895105f41c40f9a6a000b3437ad55b1ef9bc6 (diff)
downloadsmart-home-94f55613a73f95250b29dd9ce51588c051a5cd08.tar.gz
wip: servo working with RFM disabled.
-rw-r--r--lock/bend.c15
-rw-r--r--lock/nrfm.c6
2 files changed, 12 insertions, 9 deletions
diff --git a/lock/bend.c b/lock/bend.c
index a9796d8..d28f662 100644
--- a/lock/bend.c
+++ b/lock/bend.c
@@ -4,7 +4,6 @@
#include <string.h>
#include <avr/interrupt.h>
-#include <avr/wdt.h>
#include <util/delay.h>
#include "nrfm.h"
@@ -89,9 +88,9 @@ static inline void init_servo(void)
{
DDRB |= (1 << SERVO_PIN);
- ICR1 = PWM_TOP;
TCCR1A |= (1 << WGM11) | (1 << COM1A1);
TCCR1B |= (1 << WGM13) | (1 << CS11);
+ ICR1 = PWM_TOP;
}
static inline void lock(void)
@@ -99,6 +98,7 @@ static inline void lock(void)
OCR1A = PWM_MID;
_delay_ms(100);
OCR1A = PWM_TOP;
+ uart_write_line("locked");
}
static inline void unlock(void)
@@ -106,6 +106,7 @@ static inline void unlock(void)
OCR1A = PWM_MAX - 50;
_delay_ms(100);
OCR1A = PWM_TOP;
+ uart_write_line("unlocked");
}
int main(void)
@@ -116,16 +117,18 @@ int main(void)
char buf[WDLEN + 1], key[WDLEN + 1], msg[WDLEN + 1];
- init_rx();
+ //init_rx();
init_btns();
init_servo();
uart_init();
- radio_init(rxaddr);
- radio_print_config();
+ //radio_init(rxaddr);
+ //radio_print_config();
sei();
- radio_listen();
+ //radio_listen();
+
+ uart_write_line("reset...");
for (;;) {
if (!rxd)
diff --git a/lock/nrfm.c b/lock/nrfm.c
index 7630453..7a88d44 100644
--- a/lock/nrfm.c
+++ b/lock/nrfm.c
@@ -15,9 +15,9 @@
#define SPI_DDR DDRB
#define SPI_PORT PORTB
-#define NRF_CE PB1
-#define NRF_CE_DDR DDRB
-#define NRF_CE_PORT PORTB
+#define NRF_CE PC0
+#define NRF_CE_DDR DDRC
+#define NRF_CE_PORT PORTC
#define NOP 0xFF
#define R_REGISTER 0x1F