Prototype RF driver for STM Sub-1 GHz RF expansion board based on the SPSGRF-868 module for STM32 Nucleo.

Prototype RF Driver for STM Sub-1 GHz RF Expansion Boards based on the SPSGRF-868 and SPSGRF-915 Modules for STM32 Nucleo

Currently supported boards:

Note, in order to use expansion board X-NUCLEO-IDS01A4 in mbed you need to perform the following HW modifications on the board:

  • Unmount resistor R4
  • Mount resistor R7

Furthermore, on some Nucleo development boards (e.g. the NUCLEO_F429ZI), in order to be able to use Ethernet together with these Sub-1 GHz RF expansion boards, you need to compile this driver with macro SPIRIT1_SPI_MOSI=PB_5 defined, while the development board typically requires some HW modification as e.g. described here!

This driver can be used together with the 6LoWPAN stack (a.k.a. Nanostack).

Committer:
Wolfgang Betz
Date:
Tue Nov 22 11:40:10 2016 +0100
Revision:
34:edda6a7238ec
Child:
67:93bec0baf1de
Perform re-naming

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Wolfgang Betz 34:edda6a7238ec 1 /**
Wolfgang Betz 34:edda6a7238ec 2 ******************************************************************************
Wolfgang Betz 34:edda6a7238ec 3 * @file SPIRIT_Qi.h
Wolfgang Betz 34:edda6a7238ec 4 * @author VMA division - AMS
Wolfgang Betz 34:edda6a7238ec 5 * @version 3.2.2
Wolfgang Betz 34:edda6a7238ec 6 * @date 08-July-2015
Wolfgang Betz 34:edda6a7238ec 7 * @brief Configuration and management of SPIRIT QI.
Wolfgang Betz 34:edda6a7238ec 8 * @details
Wolfgang Betz 34:edda6a7238ec 9 *
Wolfgang Betz 34:edda6a7238ec 10 * This module can be used to configure and read some quality indicators
Wolfgang Betz 34:edda6a7238ec 11 * used by Spirit.
Wolfgang Betz 34:edda6a7238ec 12 * API to set thresholds and to read values in raw mode or in dBm are
Wolfgang Betz 34:edda6a7238ec 13 * provided.
Wolfgang Betz 34:edda6a7238ec 14 *
Wolfgang Betz 34:edda6a7238ec 15 * <b>Example:</b>
Wolfgang Betz 34:edda6a7238ec 16 * @code
Wolfgang Betz 34:edda6a7238ec 17 *
Wolfgang Betz 34:edda6a7238ec 18 * float rssiValuedBm;
Wolfgang Betz 34:edda6a7238ec 19 * uint8_t pqiValue, sqiValue;
Wolfgang Betz 34:edda6a7238ec 20 *
Wolfgang Betz 34:edda6a7238ec 21 * SpiritQiPqiCheck(S_ENABLE);
Wolfgang Betz 34:edda6a7238ec 22 * SpiritQiSqiCheck(S_ENABLE);
Wolfgang Betz 34:edda6a7238ec 23 *
Wolfgang Betz 34:edda6a7238ec 24 * ...
Wolfgang Betz 34:edda6a7238ec 25 *
Wolfgang Betz 34:edda6a7238ec 26 * rssiValueDbm = SpiritQiGetRssidBm();
Wolfgang Betz 34:edda6a7238ec 27 * pqiValue = SpiritQiGetPqi();
Wolfgang Betz 34:edda6a7238ec 28 * sqiValue = SpiritQiGetSqi();
Wolfgang Betz 34:edda6a7238ec 29 *
Wolfgang Betz 34:edda6a7238ec 30 * ...
Wolfgang Betz 34:edda6a7238ec 31 *
Wolfgang Betz 34:edda6a7238ec 32 * @endcode
Wolfgang Betz 34:edda6a7238ec 33 *
Wolfgang Betz 34:edda6a7238ec 34 * @attention
Wolfgang Betz 34:edda6a7238ec 35 *
Wolfgang Betz 34:edda6a7238ec 36 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
Wolfgang Betz 34:edda6a7238ec 37 *
Wolfgang Betz 34:edda6a7238ec 38 * Redistribution and use in source and binary forms, with or without modification,
Wolfgang Betz 34:edda6a7238ec 39 * are permitted provided that the following conditions are met:
Wolfgang Betz 34:edda6a7238ec 40 * 1. Redistributions of source code must retain the above copyright notice,
Wolfgang Betz 34:edda6a7238ec 41 * this list of conditions and the following disclaimer.
Wolfgang Betz 34:edda6a7238ec 42 * 2. Redistributions in binary form must reproduce the above copyright notice,
Wolfgang Betz 34:edda6a7238ec 43 * this list of conditions and the following disclaimer in the documentation
Wolfgang Betz 34:edda6a7238ec 44 * and/or other materials provided with the distribution.
Wolfgang Betz 34:edda6a7238ec 45 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Wolfgang Betz 34:edda6a7238ec 46 * may be used to endorse or promote products derived from this software
Wolfgang Betz 34:edda6a7238ec 47 * without specific prior written permission.
Wolfgang Betz 34:edda6a7238ec 48 *
Wolfgang Betz 34:edda6a7238ec 49 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Wolfgang Betz 34:edda6a7238ec 50 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Wolfgang Betz 34:edda6a7238ec 51 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Wolfgang Betz 34:edda6a7238ec 52 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Wolfgang Betz 34:edda6a7238ec 53 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Wolfgang Betz 34:edda6a7238ec 54 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Wolfgang Betz 34:edda6a7238ec 55 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Wolfgang Betz 34:edda6a7238ec 56 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Wolfgang Betz 34:edda6a7238ec 57 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Wolfgang Betz 34:edda6a7238ec 58 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Wolfgang Betz 34:edda6a7238ec 59 *
Wolfgang Betz 34:edda6a7238ec 60 ******************************************************************************
Wolfgang Betz 34:edda6a7238ec 61 */
Wolfgang Betz 34:edda6a7238ec 62
Wolfgang Betz 34:edda6a7238ec 63 /* Define to prevent recursive inclusion -------------------------------------*/
Wolfgang Betz 34:edda6a7238ec 64 #ifndef __SPIRIT_QI_H
Wolfgang Betz 34:edda6a7238ec 65 #define __SPIRIT_QI_H
Wolfgang Betz 34:edda6a7238ec 66
Wolfgang Betz 34:edda6a7238ec 67
Wolfgang Betz 34:edda6a7238ec 68 /* Includes ------------------------------------------------------------------*/
Wolfgang Betz 34:edda6a7238ec 69
Wolfgang Betz 34:edda6a7238ec 70 #include "SPIRIT_Regs.h"
Wolfgang Betz 34:edda6a7238ec 71 #include "SPIRIT_Types.h"
Wolfgang Betz 34:edda6a7238ec 72
Wolfgang Betz 34:edda6a7238ec 73
Wolfgang Betz 34:edda6a7238ec 74 #ifdef __cplusplus
Wolfgang Betz 34:edda6a7238ec 75 extern "C" {
Wolfgang Betz 34:edda6a7238ec 76 #endif
Wolfgang Betz 34:edda6a7238ec 77
Wolfgang Betz 34:edda6a7238ec 78
Wolfgang Betz 34:edda6a7238ec 79 /**
Wolfgang Betz 34:edda6a7238ec 80 * @addtogroup SPIRIT_Libraries
Wolfgang Betz 34:edda6a7238ec 81 * @{
Wolfgang Betz 34:edda6a7238ec 82 */
Wolfgang Betz 34:edda6a7238ec 83
Wolfgang Betz 34:edda6a7238ec 84
Wolfgang Betz 34:edda6a7238ec 85 /**
Wolfgang Betz 34:edda6a7238ec 86 * @defgroup SPIRIT_Qi QI
Wolfgang Betz 34:edda6a7238ec 87 * @brief Configuration and management of SPIRIT QI.
Wolfgang Betz 34:edda6a7238ec 88 * @details See the file <i>@ref SPIRIT_Qi.h</i> for more details.
Wolfgang Betz 34:edda6a7238ec 89 * @{
Wolfgang Betz 34:edda6a7238ec 90 */
Wolfgang Betz 34:edda6a7238ec 91
Wolfgang Betz 34:edda6a7238ec 92 /**
Wolfgang Betz 34:edda6a7238ec 93 * @defgroup Qi_Exported_Types QI Exported Types
Wolfgang Betz 34:edda6a7238ec 94 * @{
Wolfgang Betz 34:edda6a7238ec 95 */
Wolfgang Betz 34:edda6a7238ec 96
Wolfgang Betz 34:edda6a7238ec 97
Wolfgang Betz 34:edda6a7238ec 98 /**
Wolfgang Betz 34:edda6a7238ec 99 * @brief PQI threshold value enumeration.
Wolfgang Betz 34:edda6a7238ec 100 */
Wolfgang Betz 34:edda6a7238ec 101 typedef enum
Wolfgang Betz 34:edda6a7238ec 102 {
Wolfgang Betz 34:edda6a7238ec 103 PQI_TH_0=0x00,
Wolfgang Betz 34:edda6a7238ec 104 PQI_TH_1=0x04,
Wolfgang Betz 34:edda6a7238ec 105 PQI_TH_2=0x08,
Wolfgang Betz 34:edda6a7238ec 106 PQI_TH_3=0x0C,
Wolfgang Betz 34:edda6a7238ec 107 PQI_TH_4=0x10,
Wolfgang Betz 34:edda6a7238ec 108 PQI_TH_5=0x14,
Wolfgang Betz 34:edda6a7238ec 109 PQI_TH_6=0x18,
Wolfgang Betz 34:edda6a7238ec 110 PQI_TH_7=0x1C,
Wolfgang Betz 34:edda6a7238ec 111 PQI_TH_8=0x20,
Wolfgang Betz 34:edda6a7238ec 112 PQI_TH_9=0x24,
Wolfgang Betz 34:edda6a7238ec 113 PQI_TH_10=0x28,
Wolfgang Betz 34:edda6a7238ec 114 PQI_TH_11=0x2C,
Wolfgang Betz 34:edda6a7238ec 115 PQI_TH_12=0x30,
Wolfgang Betz 34:edda6a7238ec 116 PQI_TH_13=0x34,
Wolfgang Betz 34:edda6a7238ec 117 PQI_TH_14=0x38,
Wolfgang Betz 34:edda6a7238ec 118 PQI_TH_15=0x3C
Wolfgang Betz 34:edda6a7238ec 119
Wolfgang Betz 34:edda6a7238ec 120 } PqiThreshold;
Wolfgang Betz 34:edda6a7238ec 121
Wolfgang Betz 34:edda6a7238ec 122 #define IS_PQI_THR(VALUE) (VALUE==PQI_TH_0 ||\
Wolfgang Betz 34:edda6a7238ec 123 VALUE==PQI_TH_1 ||\
Wolfgang Betz 34:edda6a7238ec 124 VALUE==PQI_TH_2 ||\
Wolfgang Betz 34:edda6a7238ec 125 VALUE==PQI_TH_3 ||\
Wolfgang Betz 34:edda6a7238ec 126 VALUE==PQI_TH_4 ||\
Wolfgang Betz 34:edda6a7238ec 127 VALUE==PQI_TH_5 ||\
Wolfgang Betz 34:edda6a7238ec 128 VALUE==PQI_TH_6 ||\
Wolfgang Betz 34:edda6a7238ec 129 VALUE==PQI_TH_7 ||\
Wolfgang Betz 34:edda6a7238ec 130 VALUE==PQI_TH_8 ||\
Wolfgang Betz 34:edda6a7238ec 131 VALUE==PQI_TH_9 ||\
Wolfgang Betz 34:edda6a7238ec 132 VALUE==PQI_TH_10 ||\
Wolfgang Betz 34:edda6a7238ec 133 VALUE==PQI_TH_11 ||\
Wolfgang Betz 34:edda6a7238ec 134 VALUE==PQI_TH_12 ||\
Wolfgang Betz 34:edda6a7238ec 135 VALUE==PQI_TH_13 ||\
Wolfgang Betz 34:edda6a7238ec 136 VALUE==PQI_TH_14 ||\
Wolfgang Betz 34:edda6a7238ec 137 VALUE==PQI_TH_15)
Wolfgang Betz 34:edda6a7238ec 138
Wolfgang Betz 34:edda6a7238ec 139 /**
Wolfgang Betz 34:edda6a7238ec 140 * @brief SQI threshold value enumeration.
Wolfgang Betz 34:edda6a7238ec 141 */
Wolfgang Betz 34:edda6a7238ec 142 typedef enum
Wolfgang Betz 34:edda6a7238ec 143 {
Wolfgang Betz 34:edda6a7238ec 144 SQI_TH_0=0x00,
Wolfgang Betz 34:edda6a7238ec 145 SQI_TH_1=0x40,
Wolfgang Betz 34:edda6a7238ec 146 SQI_TH_2=0x80,
Wolfgang Betz 34:edda6a7238ec 147 SQI_TH_3=0xC0
Wolfgang Betz 34:edda6a7238ec 148
Wolfgang Betz 34:edda6a7238ec 149 } SqiThreshold;
Wolfgang Betz 34:edda6a7238ec 150
Wolfgang Betz 34:edda6a7238ec 151 #define IS_SQI_THR(VALUE) (VALUE==SQI_TH_0 ||\
Wolfgang Betz 34:edda6a7238ec 152 VALUE==SQI_TH_1 ||\
Wolfgang Betz 34:edda6a7238ec 153 VALUE==SQI_TH_2 ||\
Wolfgang Betz 34:edda6a7238ec 154 VALUE==SQI_TH_3)
Wolfgang Betz 34:edda6a7238ec 155
Wolfgang Betz 34:edda6a7238ec 156
Wolfgang Betz 34:edda6a7238ec 157 /**
Wolfgang Betz 34:edda6a7238ec 158 * @brief RSSI filter gain value enumeration.
Wolfgang Betz 34:edda6a7238ec 159 */
Wolfgang Betz 34:edda6a7238ec 160 typedef enum
Wolfgang Betz 34:edda6a7238ec 161 {
Wolfgang Betz 34:edda6a7238ec 162 RSSI_FG_0=0x00,
Wolfgang Betz 34:edda6a7238ec 163 RSSI_FG_1=0x10,
Wolfgang Betz 34:edda6a7238ec 164 RSSI_FG_2=0x20,
Wolfgang Betz 34:edda6a7238ec 165 RSSI_FG_3=0x30,
Wolfgang Betz 34:edda6a7238ec 166 RSSI_FG_4=0x40,
Wolfgang Betz 34:edda6a7238ec 167 RSSI_FG_5=0x50,
Wolfgang Betz 34:edda6a7238ec 168 RSSI_FG_6=0x60,
Wolfgang Betz 34:edda6a7238ec 169 RSSI_FG_7=0x70,
Wolfgang Betz 34:edda6a7238ec 170 RSSI_FG_8=0x80,
Wolfgang Betz 34:edda6a7238ec 171 RSSI_FG_9=0x90,
Wolfgang Betz 34:edda6a7238ec 172 RSSI_FG_10=0xA0,
Wolfgang Betz 34:edda6a7238ec 173 RSSI_FG_11=0xB0,
Wolfgang Betz 34:edda6a7238ec 174 RSSI_FG_12=0xC0,
Wolfgang Betz 34:edda6a7238ec 175 RSSI_FG_13=0xD0,
Wolfgang Betz 34:edda6a7238ec 176 RSSI_FG_14=0xE0, /*<! recommended value */
Wolfgang Betz 34:edda6a7238ec 177 RSSI_FG_15=0xF0
Wolfgang Betz 34:edda6a7238ec 178
Wolfgang Betz 34:edda6a7238ec 179 } RssiFilterGain;
Wolfgang Betz 34:edda6a7238ec 180
Wolfgang Betz 34:edda6a7238ec 181 #define IS_RSSI_FILTER_GAIN(VALUE) (VALUE==RSSI_FG_0 ||\
Wolfgang Betz 34:edda6a7238ec 182 VALUE==RSSI_FG_1 ||\
Wolfgang Betz 34:edda6a7238ec 183 VALUE==RSSI_FG_2 ||\
Wolfgang Betz 34:edda6a7238ec 184 VALUE==RSSI_FG_3 ||\
Wolfgang Betz 34:edda6a7238ec 185 VALUE==RSSI_FG_4 ||\
Wolfgang Betz 34:edda6a7238ec 186 VALUE==RSSI_FG_5 ||\
Wolfgang Betz 34:edda6a7238ec 187 VALUE==RSSI_FG_6 ||\
Wolfgang Betz 34:edda6a7238ec 188 VALUE==RSSI_FG_7 ||\
Wolfgang Betz 34:edda6a7238ec 189 VALUE==RSSI_FG_8 ||\
Wolfgang Betz 34:edda6a7238ec 190 VALUE==RSSI_FG_9 ||\
Wolfgang Betz 34:edda6a7238ec 191 VALUE==RSSI_FG_10 ||\
Wolfgang Betz 34:edda6a7238ec 192 VALUE==RSSI_FG_11 ||\
Wolfgang Betz 34:edda6a7238ec 193 VALUE==RSSI_FG_12 ||\
Wolfgang Betz 34:edda6a7238ec 194 VALUE==RSSI_FG_13 ||\
Wolfgang Betz 34:edda6a7238ec 195 VALUE==RSSI_FG_14 ||\
Wolfgang Betz 34:edda6a7238ec 196 VALUE==RSSI_FG_15)
Wolfgang Betz 34:edda6a7238ec 197
Wolfgang Betz 34:edda6a7238ec 198 /**
Wolfgang Betz 34:edda6a7238ec 199 * @brief CS mode enumeration.
Wolfgang Betz 34:edda6a7238ec 200 */
Wolfgang Betz 34:edda6a7238ec 201 typedef enum
Wolfgang Betz 34:edda6a7238ec 202 {
Wolfgang Betz 34:edda6a7238ec 203 CS_MODE_STATIC_3DB=0x00,
Wolfgang Betz 34:edda6a7238ec 204 CS_MODE_DYNAMIC_6DB=0x04,
Wolfgang Betz 34:edda6a7238ec 205 CS_MODE_DYNAMIC_12DB=0x08,
Wolfgang Betz 34:edda6a7238ec 206 CS_MODE_DYNAMIC_18DB=0x0C
Wolfgang Betz 34:edda6a7238ec 207
Wolfgang Betz 34:edda6a7238ec 208 } CSMode;
Wolfgang Betz 34:edda6a7238ec 209
Wolfgang Betz 34:edda6a7238ec 210 #define IS_CS_MODE(MODE) (MODE==CS_MODE_STATIC_3DB ||\
Wolfgang Betz 34:edda6a7238ec 211 MODE==CS_MODE_DYNAMIC_6DB ||\
Wolfgang Betz 34:edda6a7238ec 212 MODE==CS_MODE_DYNAMIC_12DB ||\
Wolfgang Betz 34:edda6a7238ec 213 MODE==CS_MODE_DYNAMIC_18DB)
Wolfgang Betz 34:edda6a7238ec 214
Wolfgang Betz 34:edda6a7238ec 215 /**
Wolfgang Betz 34:edda6a7238ec 216 *@}
Wolfgang Betz 34:edda6a7238ec 217 */
Wolfgang Betz 34:edda6a7238ec 218
Wolfgang Betz 34:edda6a7238ec 219
Wolfgang Betz 34:edda6a7238ec 220 /**
Wolfgang Betz 34:edda6a7238ec 221 * @defgroup Qi_Exported_Constants QI Exported Constants
Wolfgang Betz 34:edda6a7238ec 222 * @{
Wolfgang Betz 34:edda6a7238ec 223 */
Wolfgang Betz 34:edda6a7238ec 224
Wolfgang Betz 34:edda6a7238ec 225 /* range for the RSSI Threshold in dBm */
Wolfgang Betz 34:edda6a7238ec 226 #define IS_RSSI_THR_DBM(VALUE) (VALUE>=-130 && VALUE<=-2)
Wolfgang Betz 34:edda6a7238ec 227
Wolfgang Betz 34:edda6a7238ec 228 /**
Wolfgang Betz 34:edda6a7238ec 229 *@}
Wolfgang Betz 34:edda6a7238ec 230 */
Wolfgang Betz 34:edda6a7238ec 231
Wolfgang Betz 34:edda6a7238ec 232
Wolfgang Betz 34:edda6a7238ec 233 /**
Wolfgang Betz 34:edda6a7238ec 234 * @defgroup Qi_Exported_Macros QI Exported Macros
Wolfgang Betz 34:edda6a7238ec 235 * @{
Wolfgang Betz 34:edda6a7238ec 236 */
Wolfgang Betz 34:edda6a7238ec 237
Wolfgang Betz 34:edda6a7238ec 238 /**
Wolfgang Betz 34:edda6a7238ec 239 * @brief Macro to obtain the RSSI value in dBm
Wolfgang Betz 34:edda6a7238ec 240 * @param None.
Wolfgang Betz 34:edda6a7238ec 241 * @retval RSSI in dBm.
Wolfgang Betz 34:edda6a7238ec 242 * This parameter is a float.
Wolfgang Betz 34:edda6a7238ec 243 */
Wolfgang Betz 34:edda6a7238ec 244 #define SpiritQiGetRssidBm() (-120.0+((float)(SpiritQiGetRssi()-20))/2)
Wolfgang Betz 34:edda6a7238ec 245
Wolfgang Betz 34:edda6a7238ec 246 /**
Wolfgang Betz 34:edda6a7238ec 247 *@}
Wolfgang Betz 34:edda6a7238ec 248 */
Wolfgang Betz 34:edda6a7238ec 249
Wolfgang Betz 34:edda6a7238ec 250
Wolfgang Betz 34:edda6a7238ec 251 /**
Wolfgang Betz 34:edda6a7238ec 252 * @defgroup Qi_Exported_Functions QI Exported Functions
Wolfgang Betz 34:edda6a7238ec 253 * @{
Wolfgang Betz 34:edda6a7238ec 254 */
Wolfgang Betz 34:edda6a7238ec 255
Wolfgang Betz 34:edda6a7238ec 256 void SpiritQiPqiCheck(SpiritFunctionalState xNewState);
Wolfgang Betz 34:edda6a7238ec 257 void SpiritQiSqiCheck(SpiritFunctionalState xNewState);
Wolfgang Betz 34:edda6a7238ec 258 void SpiritQiSetPqiThreshold(PqiThreshold xPqiThr);
Wolfgang Betz 34:edda6a7238ec 259 PqiThreshold SpiritQiGetPqiThreshold(void);
Wolfgang Betz 34:edda6a7238ec 260 void SpiritQiSetSqiThreshold(SqiThreshold xSqiThr);
Wolfgang Betz 34:edda6a7238ec 261 SqiThreshold SpiritQiGetSqiThreshold(void);
Wolfgang Betz 34:edda6a7238ec 262 void SpiritQiSetRssiThreshold(uint8_t cRssiThr);
Wolfgang Betz 34:edda6a7238ec 263 uint8_t SpiritQiGetRssiThreshold(void);
Wolfgang Betz 34:edda6a7238ec 264 uint8_t SpiritQiComputeRssiThreshold(int cDbmValue);
Wolfgang Betz 34:edda6a7238ec 265 void SpiritQiSetRssiThresholddBm(int nDbmValue);
Wolfgang Betz 34:edda6a7238ec 266 uint8_t SpiritQiGetPqi(void);
Wolfgang Betz 34:edda6a7238ec 267 uint8_t SpiritQiGetSqi(void);
Wolfgang Betz 34:edda6a7238ec 268 uint8_t SpiritQiGetLqi(void);
Wolfgang Betz 34:edda6a7238ec 269 SpiritFlagStatus SpiritQiGetCs(void);
Wolfgang Betz 34:edda6a7238ec 270 uint8_t SpiritQiGetRssi(void);
Wolfgang Betz 34:edda6a7238ec 271 void SpiritQiSetRssiFilterGain(RssiFilterGain xRssiFg);
Wolfgang Betz 34:edda6a7238ec 272 RssiFilterGain SpiritQiGetRssiFilterGain(void);
Wolfgang Betz 34:edda6a7238ec 273 void SpiritQiSetCsMode(CSMode xCsMode);
Wolfgang Betz 34:edda6a7238ec 274 CSMode SpiritQiGetCsMode(void);
Wolfgang Betz 34:edda6a7238ec 275 void SpiritQiCsTimeoutMask(SpiritFunctionalState xNewState);
Wolfgang Betz 34:edda6a7238ec 276 void SpiritQiPqiTimeoutMask(SpiritFunctionalState xNewState);
Wolfgang Betz 34:edda6a7238ec 277 void SpiritQiSqiTimeoutMask(SpiritFunctionalState xNewState);
Wolfgang Betz 34:edda6a7238ec 278
Wolfgang Betz 34:edda6a7238ec 279
Wolfgang Betz 34:edda6a7238ec 280 /**
Wolfgang Betz 34:edda6a7238ec 281 *@}
Wolfgang Betz 34:edda6a7238ec 282 */
Wolfgang Betz 34:edda6a7238ec 283
Wolfgang Betz 34:edda6a7238ec 284 /**
Wolfgang Betz 34:edda6a7238ec 285 *@}
Wolfgang Betz 34:edda6a7238ec 286 */
Wolfgang Betz 34:edda6a7238ec 287
Wolfgang Betz 34:edda6a7238ec 288
Wolfgang Betz 34:edda6a7238ec 289 /**
Wolfgang Betz 34:edda6a7238ec 290 *@}
Wolfgang Betz 34:edda6a7238ec 291 */
Wolfgang Betz 34:edda6a7238ec 292
Wolfgang Betz 34:edda6a7238ec 293
Wolfgang Betz 34:edda6a7238ec 294 #ifdef __cplusplus
Wolfgang Betz 34:edda6a7238ec 295 }
Wolfgang Betz 34:edda6a7238ec 296 #endif
Wolfgang Betz 34:edda6a7238ec 297
Wolfgang Betz 34:edda6a7238ec 298 #endif
Wolfgang Betz 34:edda6a7238ec 299
Wolfgang Betz 34:edda6a7238ec 300 /******************* (C) COPYRIGHT 2015 STMicroelectronics *****END OF FILE****/