summaryrefslogtreecommitdiff
path: root/software/hhd70dongle/hhd70.c
diff options
context:
space:
mode:
Diffstat (limited to 'software/hhd70dongle/hhd70.c')
-rw-r--r--software/hhd70dongle/hhd70.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/software/hhd70dongle/hhd70.c b/software/hhd70dongle/hhd70.c
index 2d4ff93..359d754 100644
--- a/software/hhd70dongle/hhd70.c
+++ b/software/hhd70dongle/hhd70.c
@@ -36,10 +36,10 @@
void hhd70_init(void)
{
//configure Direction of SS / PB0 , MOSI and SCLK as Output to drive CS of CC1101
- SPI_PORT = (1<<CS);
SPI_DDR = (1<<MOSI)|(1<<SCK)|(1<<CS)|(1<<RE)|(1<<TE);
+ SPI_PORT = (1<<CS) | (1<<RE) | (1<<TE);
SPCR = (1<<SPE)|(1<<MSTR); // | (0<<DORD) //select MSB first: DORD == 0
- // SPSR = (0<<SPI2X) // f_osc/4
+ // SPSR = (0<<SPI2X) // f_osc/4
// SPSR = (1<<SPI2X) // f_osc/2
// SPSR = (1<<SPI2X); (4MHz vs. 8MHz)
}
@@ -89,24 +89,21 @@ char hhd70_spi_read_byte(void)
return hhd70_spi_exchange_byte(0);
}
-void hhd70_pa_enable(void)
-{
- SPI_PORT |= ~(1<<TE);
-}
-
-void hhd70_pa_disable(void)
+void hhd70_palna_txmode(void)
{
+ SPI_PORT |= (1<<RE);
SPI_PORT &= ~(1<<TE);
}
-void hhd70_lna_enable(void)
+void hhd70_palna_rxmode(void)
{
- SPI_PORT |= ~(1<<RE);
+ SPI_PORT |= (1<<TE);
+ SPI_PORT &= ~(1<<RE);
}
-void hhd70_lna_disable(void)
+void hhd70_palna_off(void)
{
- SPI_PORT &= ~(1<<RE);
+ SPI_PORT |= (1<<RE) | (1<<TE);
}
int8_t hhd70_rx_data_available(void)