MBED driver for Max1471.

Committer:
Abdullah.Turan@IST-LT-37344.maxim-ic.internal
Date:
Fri Oct 04 15:15:06 2019 +0300
Revision:
0:99e9397112f0
Initial Commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 1 /*
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 2 * MAX1471.h
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 3 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 4 * Created on: Dec 17, 2018
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 5 * Author: Erman.Komurcu
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 6 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 7
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 8 #ifndef MAX1471_MAX1471_H_
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 9 #define MAX1471_MAX1471_H_
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 10
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 11 #include "mbed.h"
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 12 #include "rtos.h"
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 13 #include "MAX1471_regs.h"
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 14
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 15
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 16 class MAX1471
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 17 {
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 18 private:
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 19 max1471_reg_map_t *reg;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 20 SPI *spi_handler;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 21 DigitalOut *ssel;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 22 DigitalOut *bLED;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 23 DigitalIn *dio;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 24
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 25 int spi_mode;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 26 int modulation; /*!< Current modulation mode */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 27 float oscFrequency; /*!< Extern oscillator frequency */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 28
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 29
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 30 public:
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 31
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 32 typedef enum {
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 33 PWR_CFG_ADDR = 0x00,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 34 CFG_ADDR = 0x01,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 35 CTRL_ADDR = 0x02,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 36 OSC_FREQ_ADDR = 0x03,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 37 OFF_TMR_UP_ADDR = 0x04,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 38 OFF_TMR_DWN_ADDR = 0x05,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 39 CPU_REC_ADDR = 0x06,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 40 RF_ST_UP_ADDR = 0x07,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 41 RF_ST_DWN_ADDR = 0x08,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 42 STAT_ADDR = 0x09,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 43 AGC_DWL_TMR_ADDR = 0x0A,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 44 } register_address_t;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 45
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 46 typedef enum {
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 47 ASK = 0,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 48 FSK,
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 49 BOTH
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 50 } modulation_type_t;
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 51
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 52
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 53 //Constructors
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 54
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 55 MAX1471(DigitalOut *cs);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 56
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 57
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 58 /* PUBLIC FUNCTION DECLARATIONS */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 59
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 60 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 61 * @brief Read from a register.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 62 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 63 * @param[in] reg Address of a register to be read.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 64 * @param[out] value Pointer to save result value.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 65 * @param[in] len Size of result to be read.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 66 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 67 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 68 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 69 int read_register(uint8_t reg, uint8_t *value, uint8_t len);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 70
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 71 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 72 * @brief Write to a register.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 73 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 74 * @param[in] reg Address of a register to be written.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 75 * @param[out] value Pointer of value to be written to register.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 76 * @param[in] len Size of result to be written.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 77 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 78 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 79 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 80 int write_register(uint8_t reg, const uint8_t *value, uint8_t len);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 81
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 82 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 83 * @brief Write to a register.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 84 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 85 * @param[in] reg Address of a register to be written.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 86 * @param[out] value Value to be written to register.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 87 * @param[in] len Size of result to be written.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 88 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 89 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 90 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 91 int write_register(uint8_t reg, const uint8_t value, uint8_t len);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 92 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 93 * @brief Set 3-Wire or 4-Wire SPI
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 94 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 95 * @param[in] type Type of SPI interface
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 96 * 0 -> 3-Wire SPI interface (default)
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 97 * 1 -> 4-Wire SPI interface (DOUT_FSK) enabled
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 98 * 2 -> 4-Wire SPI interface (DOUT_ASK) enabled
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 99 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 100 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 101 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 102 int set_spi_type(uint8_t type);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 103
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 104 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 105 * @brief ASK peak detector management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 106 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 107 * @param[in] enable Requested status of ASK Peak Detector
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 108 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 109 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 110 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 111 int ASKPeakDetectorEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 112
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 113 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 114 * @brief FSK peak detector management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 115 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 116 * @param[in] enable Requested status of FSK Peak Detector
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 117 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 118 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 119 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 120 int FSKPeakDetectorEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 121
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 122 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 123 * @brief ASK base band receiver management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 124 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 125 * @param[in] enable Requested status of ASK base band receiver
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 126 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 127 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 128 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 129 int ASKBaseBandReceiverEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 130
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 131 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 132 * @brief FSK base band receiver management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 133 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 134 * @param[in] enable Requested status of FSK base band receiver
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 135 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 136 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 137 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 138 int FSKBaseBandReceiverEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 139
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 140 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 141 * @brief RF Mixer on/off management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 142 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 143 * @param[in] enable Requested status of RF mixer
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 144 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 145 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 146 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 147 int RFMixerEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 148
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 149 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 150 * @brief Automatic gain controller on/off management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 151 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 152 * @param[in] enable Requested status of AGC
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 153 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 154 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 155 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 156 int AGCEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 157
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 158 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 159 * @brief Low noise amplifier on/off management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 160 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 161 * @param[in] enable Requested status of LNA
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 162 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 163 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 164 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 165 int LNAEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 166
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 167 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 168 * @brief 4-wire SPI MISO pin assignment to FSK data pin
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 169 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 170 * @param[in] enable Requested status of DOUT as FSK data pin
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 171 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 172 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 173 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 174 int SetFDATAasDOUTPin(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 175
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 176 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 177 * @brief 4-wire SPI MISO pin assignment to ASK data pin
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 178 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 179 * @param[in] enable Requested status of DOUT as ASK data pin
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 180 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 181 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 182 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 183 int SetADATAasDOUTPin(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 184
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 185 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 186 * @brief Long FSK calibration on/off management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 187 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 188 * @param[in] enable Requested status of longer FSK calibration mode
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 189 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 190 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 191 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 192 int LongerFSKCalibrationEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 193
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 194 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 195 * @brief Discontinuous receive mode on/off management
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 196 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 197 * @param[in] enable Requested status of discontinuous receive mode
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 198 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 199 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 200 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 201 int DRXEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 202
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 203 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 204 * @brief LNA's low or high gain mode selection
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 205 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 206 * @param[in] isHighGain Requested gain mode is high gain or low gain
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 207 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 208 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 209 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 210 int LNAGainState(bool isHighGain);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 211
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 212 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 213 * @brief FSK Calibration starter
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 214 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 215 * @param[in] enable Start or stop FSK calibration
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 216 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 217 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 218 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 219 int FSKCalibrationDone(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 220
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 221 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 222 * @brief Get AGC Dwell timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 223 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 224 * @param[out] valuePtr Pointer to AGC Dwell timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 225 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 226 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 227 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 228 int GetAGCDwellTimer( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 229
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 230 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 231 * @brief Set AGC Dwell timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 232 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 233 * @param[in] value Desired value of AGC Dwell timer
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 234 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 235 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 236 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 237 int SetAGCDwellTimer( unsigned char value );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 238
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 239 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 240 * @brief Poll timer calibration starter
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 241 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 242 * @param[in] enable Start or stop poll timer calibration
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 243 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 244 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 245 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 246 int PollTimerCalibrationEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 247
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 248 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 249 * @brief Track mode for ASK peak detector on/off control
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 250 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 251 * @param[in] enable Enable/disable track mode of ASK peak detector
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 252 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 253 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 254 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 255 int ASKPeakDetectorTrackEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 256
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 257 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 258 * @brief Track mode for FSK peak detector on/off control
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 259 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 260 * @param[in] enable Enable/disable track mode of FSK peak detector
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 261 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 262 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 263 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 264 int FSKPeakDetectorTrackEnable(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 265
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 266 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 267 * @brief Locks AGC's current state
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 268 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 269 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 270 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 271 int LockAGCCurrentState();
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 272
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 273 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 274 * @brief Gets calibration status of poll timer calibration
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 275 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 276 * @param[out] valuePtr Pointer to current status of poll timer calibration
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 277 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 278 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 279 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 280 int GetPollTimerCalibrationDoneStatus( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 281
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 282 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 283 * @brief Gets calibration status of FSK calibration
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 284 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 285 * @param[out] valuePtr Pointer to current status of FSK calibration
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 286 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 287 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 288 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 289 int GetFSKCalibrationDoneStatus( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 290
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 291 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 292 * @brief Gets clock alive status
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 293 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 294 * @param[out] valuePtr Pointer to clock alive status
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 295 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 296 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 297 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 298 int GetClockAliveStatus( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 299
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 300 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 301 * @brief Gets AGC's current status
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 302 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 303 * @param[out] valuePtr Pointer to AGC's current status
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 304 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 305 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 306 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 307 int GetAGCStatus( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 308
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 309 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 310 * @brief Get whether PLL is locked or not
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 311 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 312 * @param[out] valuePtr Pointer to PLL's current status
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 313 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 314 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 315 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 316 int GetPLLLockStatus( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 317
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 318 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 319 * @brief Get off timer prescale value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 320 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 321 * @param[out] valuePtr Pointer to off timer prescale value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 322 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 323 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 324 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 325 int GetOffTimerPrescale( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 326
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 327 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 328 * @brief Set off timer prescale value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 329 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 330 * @param[in] value Desired value of off timer prescale
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 331 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 332 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 333 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 334 int SetOffTimerPrescale( unsigned char value );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 335
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 336 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 337 * @brief Set rf settle timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 338 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 339 * @param[in] value Desired value of off timer rf settle timer
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 340 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 341 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 342 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 343 int SetRFSettleTimer( unsigned short int value );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 344
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 345 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 346 * @brief Get rf settle timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 347 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 348 * @param[out] valuePtr Pointer to rf settle timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 349 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 350 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 351 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 352 int GetRFSettleTimer( unsigned short int *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 353
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 354 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 355 * @brief Set off timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 356 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 357 * @param[in] value Desired value of off timer
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 358 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 359 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 360 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 361 int SetOFFTimer( unsigned short int value );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 362
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 363 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 364 * @brief Get off timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 365 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 366 * @param[out] valuePtr Pointer to off timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 367 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 368 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 369 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 370 int GetOFFTimer( unsigned short int *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 371
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 372 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 373 * @brief Set CPU recovery timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 374 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 375 * @param[in] value Desired value of CPU recovery timer
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 376 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 377 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 378 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 379 int SetCPURecoveryTimer( unsigned char value );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 380
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 381 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 382 * @brief Get CPU recovery timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 383 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 384 * @param[out] valuePtr Pointer to CPU recovery timer value
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 385 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 386 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 387 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 388 int GetCPURecoveryTimer( unsigned char *valuePtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 389
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 390 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 391 * @brief Set RF oscillator frequency
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 392 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 393 * @param[in] value Desired frequency
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 394 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 395 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 396 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 397 int SetRFOscillatorFreq( float frequency );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 398
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 399 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 400 * @brief Get RF oscillator frequency
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 401 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 402 * @param[out] freqPtr Pointer to RF oscillator frequency
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 403 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 404 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 405 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 406 int GetRFOscillatorFreq( float *freqPtr );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 407
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 408 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 409 * @brief Reset the chip
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 410 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 411 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 412 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 413 int reset();
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 414
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 415 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 416 * @brief NOP command
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 417 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 418 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 419 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 420 int nop();
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 421
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 422 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 423 * @brief Initialize the chip
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 424 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 425 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 426 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 427 int InitMAX1471();
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 428
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 429 int PrepMAX1471RX();
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 430
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 431 int PrepMAX1471RX( modulation_type_t modType );
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 432
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 433 int PrepMAX1471RX_DRX();
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 434
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 435 /**
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 436 * @brief Prepare MAX1471's sleep mode
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 437 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 438 * @param[in] enable Sleep mode enable/disable
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 439 *
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 440 * @returns 0 on success, negative error code on failure.
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 441 */
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 442 int PrepMAX1471Sleep(bool enable);
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 443
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 444 };
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 445 extern const uint32_t pmu_program_sample_data_in[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 446 extern const uint32_t pmu_program_stop_buff1_filling[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 447 extern const uint32_t pmu_program_stop_buff0_filling[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 448 extern const uint32_t pmu_program_start_buff1_filling[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 449 extern const uint32_t pmu_program_save_current_data_to_buffer0[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 450 extern const uint32_t pmu_program_save_current_data_to_buffer1[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 451 extern const uint32_t pmu_program_sample_0[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 452 extern const uint32_t pmu_program_sample_1[];
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 453
Abdullah.Turan@IST-LT-37344.maxim-ic.internal 0:99e9397112f0 454 #endif /* MAX1471_MAX1471_H_ */