diff options
| author | Sadeep Madurange <sadeep@asciimx.com> | 2024-11-24 12:26:51 +0800 |
|---|---|---|
| committer | Sadeep Madurange <sadeep@asciimx.com> | 2024-11-24 12:26:51 +0800 |
| commit | 3c4596a68f141383b1b47cfbd6a01e1f3b998a26 (patch) | |
| tree | 4a0f36127842ab38ca94dae7cfd1d224d2b88ad3 /rf_test | |
| parent | 8747a5965e9ce87d088f4e3ae4785afba70be08e (diff) | |
| download | smart-home-3c4596a68f141383b1b47cfbd6a01e1f3b998a26.tar.gz | |
Remove address filtering.
Diffstat (limited to 'rf_test')
| -rw-r--r-- | rf_test/rfm.c | 21 | ||||
| -rw-r--r-- | rf_test/rfm.h | 2 |
2 files changed, 14 insertions, 9 deletions
diff --git a/rf_test/rfm.c b/rf_test/rfm.c index b190e96..12d1f25 100644 --- a/rf_test/rfm.c +++ b/rf_test/rfm.c @@ -11,10 +11,12 @@ #define MISO_PIN PB4 #define SPI_DDR DDRB -#define RX_MODE 0x10 -#define TX_MODE 0x0C -#define SLEEP_MODE 0x00 -#define STDBY_MODE 0x04 +// RFM operation modes +#define RX 0x10 +#define TX 0x0C +#define SLEEP 0x00 +#define STDBY 0x04 +#define LISTEN_ON 0x40 static inline void spi_init(void) { @@ -57,20 +59,19 @@ static inline void set_mode(uint8_t mode) ; } -void rfm_init(uint8_t addr) +void rfm_init(void) { spi_init(); - set_mode(STDBY_MODE); + set_mode(STDBY | LISTEN_ON); // rx interrupt on DPIO0 write_reg(0x25, 0x40); write_reg(0x26, 0x07); - // packet format: 8 bits + whitening + crc + addr filtering + // packet format: 8 bits + whitening + crc write_reg(0x37, 0x52); write_reg(0x38, 0x08); - write_reg(0x38, addr); // disable encryption write_reg(0x3D, 0x02); @@ -98,3 +99,7 @@ void rfm_sendto(uint8_t addr, uint8_t *data, uint8_t n) while (!((read_reg(0x28) >> 3) & 1)) ; } + +void rfm_recvfrom(void) +{ +} diff --git a/rf_test/rfm.h b/rf_test/rfm.h index 467b2cb..8adaf3b 100644 --- a/rf_test/rfm.h +++ b/rf_test/rfm.h @@ -3,7 +3,7 @@ #include <stdint.h> -void rfm_init(uint8_t addr); +void rfm_init(void); void rfm_sendto(uint8_t addr, uint8_t *data, uint8_t n); |
