diff options
Diffstat (limited to 'software/hhd70dongle/hhd70.c')
-rw-r--r-- | software/hhd70dongle/hhd70.c | 21 |
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) |