HelloWorld_IDS01A4 mbed application for Spirit1 P2P demo.

Dependencies:   mbed

Fork of HelloWorld_IDS01A5_Program by rosarium pila

mbed 2.0 (a.k.a classic) HelloWorld example for Spirit1 to transfer data from one node to another.
To send the predefined data packet from the sender to the receiver, user needs to press User Button on the board. The LED on the receiver expansion board will toggle on reception of data successfully.
Data packets sent and received can be seen on USB serial terminal.

EVALUATION BOARDS RF FREQUENCY DESCRIPTION :
X-NUCLEO-IDS01A4 868 MHz 868 MHz RF expansion board based on SPIRIT1

Committer:
rosarium
Date:
Thu May 25 16:38:55 2017 +0000
Revision:
0:2ddc0583bcec
First draft version of HelloWorld_IDS01A5

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rosarium 0:2ddc0583bcec 1 /**
rosarium 0:2ddc0583bcec 2 ******************************************************************************
rosarium 0:2ddc0583bcec 3 * @file SPIRIT_LinearFifo.c
rosarium 0:2ddc0583bcec 4 * @author VMA division - AMS
rosarium 0:2ddc0583bcec 5 * @version 3.2.2
rosarium 0:2ddc0583bcec 6 * @date 08-July-2015
rosarium 0:2ddc0583bcec 7 * @brief Configuration and management of SPIRIT Fifo.
rosarium 0:2ddc0583bcec 8 * @details
rosarium 0:2ddc0583bcec 9 *
rosarium 0:2ddc0583bcec 10 * @attention
rosarium 0:2ddc0583bcec 11 *
rosarium 0:2ddc0583bcec 12 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
rosarium 0:2ddc0583bcec 13 *
rosarium 0:2ddc0583bcec 14 * Redistribution and use in source and binary forms, with or without modification,
rosarium 0:2ddc0583bcec 15 * are permitted provided that the following conditions are met:
rosarium 0:2ddc0583bcec 16 * 1. Redistributions of source code must retain the above copyright notice,
rosarium 0:2ddc0583bcec 17 * this list of conditions and the following disclaimer.
rosarium 0:2ddc0583bcec 18 * 2. Redistributions in binary form must reproduce the above copyright notice,
rosarium 0:2ddc0583bcec 19 * this list of conditions and the following disclaimer in the documentation
rosarium 0:2ddc0583bcec 20 * and/or other materials provided with the distribution.
rosarium 0:2ddc0583bcec 21 * 3. Neither the name of STMicroelectronics nor the names of its contributors
rosarium 0:2ddc0583bcec 22 * may be used to endorse or promote products derived from this software
rosarium 0:2ddc0583bcec 23 * without specific prior written permission.
rosarium 0:2ddc0583bcec 24 *
rosarium 0:2ddc0583bcec 25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
rosarium 0:2ddc0583bcec 26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
rosarium 0:2ddc0583bcec 27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
rosarium 0:2ddc0583bcec 28 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
rosarium 0:2ddc0583bcec 29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
rosarium 0:2ddc0583bcec 30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
rosarium 0:2ddc0583bcec 31 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
rosarium 0:2ddc0583bcec 32 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
rosarium 0:2ddc0583bcec 33 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
rosarium 0:2ddc0583bcec 34 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
rosarium 0:2ddc0583bcec 35 *
rosarium 0:2ddc0583bcec 36 ******************************************************************************
rosarium 0:2ddc0583bcec 37 */
rosarium 0:2ddc0583bcec 38
rosarium 0:2ddc0583bcec 39 /* Includes ------------------------------------------------------------------*/
rosarium 0:2ddc0583bcec 40 #include "SPIRIT_LinearFifo.h"
rosarium 0:2ddc0583bcec 41 #include "MCU_Interface.h"
rosarium 0:2ddc0583bcec 42
rosarium 0:2ddc0583bcec 43
rosarium 0:2ddc0583bcec 44 /**
rosarium 0:2ddc0583bcec 45 * @addtogroup SPIRIT_Libraries
rosarium 0:2ddc0583bcec 46 * @{
rosarium 0:2ddc0583bcec 47 */
rosarium 0:2ddc0583bcec 48
rosarium 0:2ddc0583bcec 49
rosarium 0:2ddc0583bcec 50 /**
rosarium 0:2ddc0583bcec 51 * @addtogroup SPIRIT_LinearFifo
rosarium 0:2ddc0583bcec 52 * @{
rosarium 0:2ddc0583bcec 53 */
rosarium 0:2ddc0583bcec 54
rosarium 0:2ddc0583bcec 55
rosarium 0:2ddc0583bcec 56 /**
rosarium 0:2ddc0583bcec 57 * @defgroup LinearFifo_Private_TypesDefinitions Linear FIFO Private Types Definitions
rosarium 0:2ddc0583bcec 58 * @{
rosarium 0:2ddc0583bcec 59 */
rosarium 0:2ddc0583bcec 60
rosarium 0:2ddc0583bcec 61 /**
rosarium 0:2ddc0583bcec 62 *@}
rosarium 0:2ddc0583bcec 63 */
rosarium 0:2ddc0583bcec 64
rosarium 0:2ddc0583bcec 65
rosarium 0:2ddc0583bcec 66 /**
rosarium 0:2ddc0583bcec 67 * @defgroup LinearFifo_Private_Defines Linear FIFO Private Defines
rosarium 0:2ddc0583bcec 68 * @{
rosarium 0:2ddc0583bcec 69 */
rosarium 0:2ddc0583bcec 70
rosarium 0:2ddc0583bcec 71 /**
rosarium 0:2ddc0583bcec 72 *@}
rosarium 0:2ddc0583bcec 73 */
rosarium 0:2ddc0583bcec 74
rosarium 0:2ddc0583bcec 75
rosarium 0:2ddc0583bcec 76 /**
rosarium 0:2ddc0583bcec 77 * @defgroup LinearFifo_Private_Macros Linear FIFO Private Macros
rosarium 0:2ddc0583bcec 78 * @{
rosarium 0:2ddc0583bcec 79 */
rosarium 0:2ddc0583bcec 80
rosarium 0:2ddc0583bcec 81 /**
rosarium 0:2ddc0583bcec 82 *@}
rosarium 0:2ddc0583bcec 83 */
rosarium 0:2ddc0583bcec 84
rosarium 0:2ddc0583bcec 85
rosarium 0:2ddc0583bcec 86 /**
rosarium 0:2ddc0583bcec 87 * @defgroup LinearFifo_Private_Variables Linear FIFO Private Variables
rosarium 0:2ddc0583bcec 88 * @{
rosarium 0:2ddc0583bcec 89 */
rosarium 0:2ddc0583bcec 90
rosarium 0:2ddc0583bcec 91 /**
rosarium 0:2ddc0583bcec 92 *@}
rosarium 0:2ddc0583bcec 93 */
rosarium 0:2ddc0583bcec 94
rosarium 0:2ddc0583bcec 95
rosarium 0:2ddc0583bcec 96 /**
rosarium 0:2ddc0583bcec 97 * @defgroup LinearFifo_Private_FunctionPrototypes Linear FIFO Private Function Prototypes
rosarium 0:2ddc0583bcec 98 * @{
rosarium 0:2ddc0583bcec 99 */
rosarium 0:2ddc0583bcec 100
rosarium 0:2ddc0583bcec 101 /**
rosarium 0:2ddc0583bcec 102 *@}
rosarium 0:2ddc0583bcec 103 */
rosarium 0:2ddc0583bcec 104
rosarium 0:2ddc0583bcec 105
rosarium 0:2ddc0583bcec 106 /**
rosarium 0:2ddc0583bcec 107 * @defgroup LinearFifo_Private_Functions Linear FIFO Private Functions
rosarium 0:2ddc0583bcec 108 * @{
rosarium 0:2ddc0583bcec 109 */
rosarium 0:2ddc0583bcec 110
rosarium 0:2ddc0583bcec 111 /**
rosarium 0:2ddc0583bcec 112 * @brief Returns the number of elements in the Rx FIFO.
rosarium 0:2ddc0583bcec 113 * @param None.
rosarium 0:2ddc0583bcec 114 * @retval uint8_t Number of elements in the Rx FIFO.
rosarium 0:2ddc0583bcec 115 */
rosarium 0:2ddc0583bcec 116 uint8_t SpiritLinearFifoReadNumElementsRxFifo(void)
rosarium 0:2ddc0583bcec 117 {
rosarium 0:2ddc0583bcec 118 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 119
rosarium 0:2ddc0583bcec 120 /* Reads the register value */
rosarium 0:2ddc0583bcec 121 g_xStatus = SpiritSpiReadRegisters(LINEAR_FIFO_STATUS0_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 122
rosarium 0:2ddc0583bcec 123 /* Build and return value */
rosarium 0:2ddc0583bcec 124 return (tempRegValue & 0x7F);
rosarium 0:2ddc0583bcec 125
rosarium 0:2ddc0583bcec 126 }
rosarium 0:2ddc0583bcec 127
rosarium 0:2ddc0583bcec 128
rosarium 0:2ddc0583bcec 129 /**
rosarium 0:2ddc0583bcec 130 * @brief Returns the number of elements in the Tx FIFO.
rosarium 0:2ddc0583bcec 131 * @param None.
rosarium 0:2ddc0583bcec 132 * @retval uint8_t Number of elements in the Tx FIFO.
rosarium 0:2ddc0583bcec 133 */
rosarium 0:2ddc0583bcec 134 uint8_t SpiritLinearFifoReadNumElementsTxFifo(void)
rosarium 0:2ddc0583bcec 135 {
rosarium 0:2ddc0583bcec 136 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 137
rosarium 0:2ddc0583bcec 138 /* Reads the number of elements in TX FIFO and return the value */
rosarium 0:2ddc0583bcec 139 g_xStatus = SpiritSpiReadRegisters(LINEAR_FIFO_STATUS1_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 140
rosarium 0:2ddc0583bcec 141 /* Build and return value */
rosarium 0:2ddc0583bcec 142 return (tempRegValue & 0x7F);
rosarium 0:2ddc0583bcec 143 }
rosarium 0:2ddc0583bcec 144
rosarium 0:2ddc0583bcec 145
rosarium 0:2ddc0583bcec 146 /**
rosarium 0:2ddc0583bcec 147 * @brief Sets the almost full threshold for the Rx FIFO. When the number of elements in RX FIFO reaches this value an interrupt can be generated to the MCU.
rosarium 0:2ddc0583bcec 148 * @note The almost full threshold is encountered from the top of the FIFO. For example, if it is set to 7 the almost
rosarium 0:2ddc0583bcec 149 * full FIFO irq will be raised when the number of elements is equals to 96-7 = 89.
rosarium 0:2ddc0583bcec 150 * @param cThrRxFifo almost full threshold.
rosarium 0:2ddc0583bcec 151 * This parameter is an uint8_t.
rosarium 0:2ddc0583bcec 152 * @retval None.
rosarium 0:2ddc0583bcec 153 */
rosarium 0:2ddc0583bcec 154 void SpiritLinearFifoSetAlmostFullThresholdRx(uint8_t cThrRxFifo)
rosarium 0:2ddc0583bcec 155 {
rosarium 0:2ddc0583bcec 156 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 157
rosarium 0:2ddc0583bcec 158 /* Check the parameters */
rosarium 0:2ddc0583bcec 159 s_assert_param(IS_FIFO_THR(cThrRxFifo));
rosarium 0:2ddc0583bcec 160
rosarium 0:2ddc0583bcec 161 /* Build the register value */
rosarium 0:2ddc0583bcec 162 tempRegValue = cThrRxFifo & 0x7F;
rosarium 0:2ddc0583bcec 163
rosarium 0:2ddc0583bcec 164 /* Writes the Almost Full threshold for RX in the corresponding register */
rosarium 0:2ddc0583bcec 165 g_xStatus = SpiritSpiWriteRegisters(FIFO_CONFIG3_RXAFTHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 166
rosarium 0:2ddc0583bcec 167 }
rosarium 0:2ddc0583bcec 168
rosarium 0:2ddc0583bcec 169
rosarium 0:2ddc0583bcec 170 /**
rosarium 0:2ddc0583bcec 171 * @brief Returns the almost full threshold for RX FIFO.
rosarium 0:2ddc0583bcec 172 * @note The almost full threshold is encountered from the top of the FIFO. For example, if it is 7 the almost
rosarium 0:2ddc0583bcec 173 * full FIFO irq will be raised when the number of elements is equals to 96-7 = 89.
rosarium 0:2ddc0583bcec 174 * @param None.
rosarium 0:2ddc0583bcec 175 * @retval uint8_t Almost full threshold for Rx FIFO.
rosarium 0:2ddc0583bcec 176 */
rosarium 0:2ddc0583bcec 177 uint8_t SpiritLinearFifoGetAlmostFullThresholdRx(void)
rosarium 0:2ddc0583bcec 178 {
rosarium 0:2ddc0583bcec 179 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 180
rosarium 0:2ddc0583bcec 181 /* Reads the almost full threshold for RX FIFO and return the value */
rosarium 0:2ddc0583bcec 182 g_xStatus = SpiritSpiReadRegisters(FIFO_CONFIG3_RXAFTHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 183
rosarium 0:2ddc0583bcec 184 /* Build and return value */
rosarium 0:2ddc0583bcec 185 return (tempRegValue & 0x7F);
rosarium 0:2ddc0583bcec 186
rosarium 0:2ddc0583bcec 187 }
rosarium 0:2ddc0583bcec 188
rosarium 0:2ddc0583bcec 189
rosarium 0:2ddc0583bcec 190 /**
rosarium 0:2ddc0583bcec 191 * @brief Sets the almost empty threshold for the Rx FIFO. When the number of elements in RX FIFO reaches this value an interrupt can be generated to the MCU.
rosarium 0:2ddc0583bcec 192 * @param cThrRxFifo almost empty threshold.
rosarium 0:2ddc0583bcec 193 * This parameter is an uint8_t.
rosarium 0:2ddc0583bcec 194 * @retval None.
rosarium 0:2ddc0583bcec 195 */
rosarium 0:2ddc0583bcec 196 void SpiritLinearFifoSetAlmostEmptyThresholdRx(uint8_t cThrRxFifo)
rosarium 0:2ddc0583bcec 197 {
rosarium 0:2ddc0583bcec 198 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 199
rosarium 0:2ddc0583bcec 200 /* Check the parameters */
rosarium 0:2ddc0583bcec 201 s_assert_param(IS_FIFO_THR(cThrRxFifo));
rosarium 0:2ddc0583bcec 202
rosarium 0:2ddc0583bcec 203 /* Build the register value */
rosarium 0:2ddc0583bcec 204 tempRegValue = cThrRxFifo & 0x7F;
rosarium 0:2ddc0583bcec 205
rosarium 0:2ddc0583bcec 206 /* Writes the Almost Empty threshold for RX in the corresponding register */
rosarium 0:2ddc0583bcec 207 g_xStatus = SpiritSpiWriteRegisters(FIFO_CONFIG2_RXAETHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 208
rosarium 0:2ddc0583bcec 209 }
rosarium 0:2ddc0583bcec 210
rosarium 0:2ddc0583bcec 211
rosarium 0:2ddc0583bcec 212 /**
rosarium 0:2ddc0583bcec 213 * @brief Returns the almost empty threshold for Rx FIFO.
rosarium 0:2ddc0583bcec 214 * @param None.
rosarium 0:2ddc0583bcec 215 * @retval uint8_t Almost empty threshold for Rx FIFO.
rosarium 0:2ddc0583bcec 216 */
rosarium 0:2ddc0583bcec 217 uint8_t SpiritLinearFifoGetAlmostEmptyThresholdRx(void)
rosarium 0:2ddc0583bcec 218 {
rosarium 0:2ddc0583bcec 219 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 220
rosarium 0:2ddc0583bcec 221 /* Reads the almost empty threshold for RX FIFO and returns the value */
rosarium 0:2ddc0583bcec 222 g_xStatus = SpiritSpiReadRegisters(FIFO_CONFIG2_RXAETHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 223
rosarium 0:2ddc0583bcec 224 /* Build and return value */
rosarium 0:2ddc0583bcec 225 return (tempRegValue & 0x7F);
rosarium 0:2ddc0583bcec 226
rosarium 0:2ddc0583bcec 227 }
rosarium 0:2ddc0583bcec 228
rosarium 0:2ddc0583bcec 229
rosarium 0:2ddc0583bcec 230 /**
rosarium 0:2ddc0583bcec 231 * @brief Sets the almost full threshold for the Tx FIFO. When the number of elements in TX FIFO reaches this value an interrupt can be generated to the MCU.
rosarium 0:2ddc0583bcec 232 * @note The almost full threshold is encountered from the top of the FIFO. For example, if it is set to 7 the almost
rosarium 0:2ddc0583bcec 233 * full FIFO irq will be raised when the number of elements is equals to 96-7 = 89.
rosarium 0:2ddc0583bcec 234 * @param cThrTxFifo almost full threshold.
rosarium 0:2ddc0583bcec 235 * This parameter is an uint8_t.
rosarium 0:2ddc0583bcec 236 * @retval None.
rosarium 0:2ddc0583bcec 237 */
rosarium 0:2ddc0583bcec 238 void SpiritLinearFifoSetAlmostFullThresholdTx(uint8_t cThrTxFifo)
rosarium 0:2ddc0583bcec 239 {
rosarium 0:2ddc0583bcec 240 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 241
rosarium 0:2ddc0583bcec 242 /* Check the parameters */
rosarium 0:2ddc0583bcec 243 s_assert_param(IS_FIFO_THR(cThrTxFifo));
rosarium 0:2ddc0583bcec 244
rosarium 0:2ddc0583bcec 245 /* Reads the register value */
rosarium 0:2ddc0583bcec 246 g_xStatus = SpiritSpiReadRegisters(FIFO_CONFIG1_TXAFTHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 247
rosarium 0:2ddc0583bcec 248 /* Build the register value */
rosarium 0:2ddc0583bcec 249 tempRegValue &= 0x80;
rosarium 0:2ddc0583bcec 250 tempRegValue |= cThrTxFifo;
rosarium 0:2ddc0583bcec 251
rosarium 0:2ddc0583bcec 252 /* Writes the Almost Full threshold for Tx in the corresponding register */
rosarium 0:2ddc0583bcec 253 g_xStatus = SpiritSpiWriteRegisters(FIFO_CONFIG1_TXAFTHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 254
rosarium 0:2ddc0583bcec 255 }
rosarium 0:2ddc0583bcec 256
rosarium 0:2ddc0583bcec 257
rosarium 0:2ddc0583bcec 258 /**
rosarium 0:2ddc0583bcec 259 * @brief Returns the almost full threshold for Tx FIFO.
rosarium 0:2ddc0583bcec 260 * @note The almost full threshold is encountered from the top of the FIFO. For example, if it is set to 7 the almost
rosarium 0:2ddc0583bcec 261 * full FIFO irq will be raised when the number of elements is equals to 96-7 = 89.
rosarium 0:2ddc0583bcec 262 * @param None.
rosarium 0:2ddc0583bcec 263 * @retval uint8_t Almost full threshold for Tx FIFO.
rosarium 0:2ddc0583bcec 264 */
rosarium 0:2ddc0583bcec 265 uint8_t SpiritLinearFifoGetAlmostFullThresholdTx(void)
rosarium 0:2ddc0583bcec 266 {
rosarium 0:2ddc0583bcec 267 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 268
rosarium 0:2ddc0583bcec 269 /* Reads the almost full threshold for Tx FIFO and returns the value */
rosarium 0:2ddc0583bcec 270 g_xStatus = SpiritSpiReadRegisters(FIFO_CONFIG1_TXAFTHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 271
rosarium 0:2ddc0583bcec 272 /* Build and returns value */
rosarium 0:2ddc0583bcec 273 return (tempRegValue & 0x7F);
rosarium 0:2ddc0583bcec 274
rosarium 0:2ddc0583bcec 275 }
rosarium 0:2ddc0583bcec 276
rosarium 0:2ddc0583bcec 277
rosarium 0:2ddc0583bcec 278 /**
rosarium 0:2ddc0583bcec 279 * @brief Sets the almost empty threshold for the Tx FIFO. When the number of elements in Tx FIFO reaches this value an interrupt can can be generated to the MCU.
rosarium 0:2ddc0583bcec 280 * @param cThrTxFifo: almost empty threshold.
rosarium 0:2ddc0583bcec 281 * This parameter is an uint8_t.
rosarium 0:2ddc0583bcec 282 * @retval None.
rosarium 0:2ddc0583bcec 283 */
rosarium 0:2ddc0583bcec 284 void SpiritLinearFifoSetAlmostEmptyThresholdTx(uint8_t cThrTxFifo)
rosarium 0:2ddc0583bcec 285 {
rosarium 0:2ddc0583bcec 286 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 287
rosarium 0:2ddc0583bcec 288 /* Check the parameters */
rosarium 0:2ddc0583bcec 289 s_assert_param(IS_FIFO_THR(cThrTxFifo));
rosarium 0:2ddc0583bcec 290
rosarium 0:2ddc0583bcec 291 /* Reads the register value */
rosarium 0:2ddc0583bcec 292 g_xStatus = SpiritSpiReadRegisters(FIFO_CONFIG0_TXAETHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 293
rosarium 0:2ddc0583bcec 294 /* Build the register value */
rosarium 0:2ddc0583bcec 295 tempRegValue &= 0x80;
rosarium 0:2ddc0583bcec 296 tempRegValue |= cThrTxFifo;
rosarium 0:2ddc0583bcec 297
rosarium 0:2ddc0583bcec 298 /* Writes the Almost Empty threshold for Tx in the corresponding register */
rosarium 0:2ddc0583bcec 299 g_xStatus = SpiritSpiWriteRegisters(FIFO_CONFIG0_TXAETHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 300
rosarium 0:2ddc0583bcec 301 }
rosarium 0:2ddc0583bcec 302
rosarium 0:2ddc0583bcec 303
rosarium 0:2ddc0583bcec 304 /**
rosarium 0:2ddc0583bcec 305 * @brief Returns the almost empty threshold for Tx FIFO.
rosarium 0:2ddc0583bcec 306 * @param None.
rosarium 0:2ddc0583bcec 307 * @retval uint8_t Almost empty threshold for Tx FIFO.
rosarium 0:2ddc0583bcec 308 */
rosarium 0:2ddc0583bcec 309 uint8_t SpiritLinearFifoGetAlmostEmptyThresholdTx(void)
rosarium 0:2ddc0583bcec 310 {
rosarium 0:2ddc0583bcec 311 uint8_t tempRegValue;
rosarium 0:2ddc0583bcec 312
rosarium 0:2ddc0583bcec 313 /* Reads the almost empty threshold for TX FIFO and returns the value */
rosarium 0:2ddc0583bcec 314 g_xStatus = SpiritSpiReadRegisters(FIFO_CONFIG0_TXAETHR_BASE, 1, &tempRegValue);
rosarium 0:2ddc0583bcec 315
rosarium 0:2ddc0583bcec 316 /* Build and return value */
rosarium 0:2ddc0583bcec 317 return (tempRegValue & 0x7F);
rosarium 0:2ddc0583bcec 318
rosarium 0:2ddc0583bcec 319 }
rosarium 0:2ddc0583bcec 320
rosarium 0:2ddc0583bcec 321
rosarium 0:2ddc0583bcec 322 /**
rosarium 0:2ddc0583bcec 323 *@}
rosarium 0:2ddc0583bcec 324 */
rosarium 0:2ddc0583bcec 325
rosarium 0:2ddc0583bcec 326 /**
rosarium 0:2ddc0583bcec 327 *@}
rosarium 0:2ddc0583bcec 328 */
rosarium 0:2ddc0583bcec 329
rosarium 0:2ddc0583bcec 330
rosarium 0:2ddc0583bcec 331 /**
rosarium 0:2ddc0583bcec 332 *@}
rosarium 0:2ddc0583bcec 333 */
rosarium 0:2ddc0583bcec 334
rosarium 0:2ddc0583bcec 335
rosarium 0:2ddc0583bcec 336
rosarium 0:2ddc0583bcec 337 /******************* (C) COPYRIGHT 2015 STMicroelectronics *****END OF FILE****/