From bb65982f7a02324a4fe7dc1bca9319355b988985 Mon Sep 17 00:00:00 2001 From: Bernhard Tittelbach Date: Sat, 19 May 2012 03:47:25 +0000 Subject: fix strobe command git-svn-id: https://svn.spreadspace.org/mur.sat@432 7de4ea59-55d0-425e-a1af-a3118ea81d4c --- software/hhd70dongle/c1101lib.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'software/hhd70dongle/c1101lib.c') diff --git a/software/hhd70dongle/c1101lib.c b/software/hhd70dongle/c1101lib.c index 7958309..d2d0265 100644 --- a/software/hhd70dongle/c1101lib.c +++ b/software/hhd70dongle/c1101lib.c @@ -62,7 +62,20 @@ int16_t spi_c1101_write_byte_ok_get_status(char data) return sb; } -#define spi_c1101_strobe_command spi_c1101_write_byte_ok_get_status +int16_t spi_c1101_strobe_command(char address) +{ + char rbyte; + if (address < 0x30) + return -1; + spi_cs_enable(); + spi_c1101_wait_chip_rdy(); + //POST DEBUG: don't return anything + rbyte = spi_c1101_write_byte_ok_get_status(address); + if (rbyte < 0) + return -1; + spi_cs_disable(); + return rbyte; +} // note addresses range from 0x00 to 0x2F for normal registers and 0xF0 to 0xFD for special status registers int16_t spi_c1101_read_register(char address) @@ -76,7 +89,6 @@ int16_t spi_c1101_read_register(char address) spi_c1101_wait_chip_rdy(); if (spi_c1101_write_byte_ok_get_status(address) < 0) return -1; - _delay_ms(10); //FIXME: propably don't need this rbyte = spi_read_byte(); spi_cs_disable(); return rbyte; -- cgit v1.2.3