The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Wed Feb 20 20:53:29 2019 +0000
Revision:
172:65be27845400
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 172:65be27845400 1 /*
AnnaBridge 172:65be27845400 2 * Copyright 2016-2017 NXP
AnnaBridge 172:65be27845400 3 *
AnnaBridge 172:65be27845400 4 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 172:65be27845400 5 * are permitted provided that the following conditions are met:
AnnaBridge 172:65be27845400 6 *
AnnaBridge 172:65be27845400 7 * o Redistributions of source code must retain the above copyright notice, this list
AnnaBridge 172:65be27845400 8 * of conditions and the following disclaimer.
AnnaBridge 172:65be27845400 9 *
AnnaBridge 172:65be27845400 10 * o Redistributions in binary form must reproduce the above copyright notice, this
AnnaBridge 172:65be27845400 11 * list of conditions and the following disclaimer in the documentation and/or
AnnaBridge 172:65be27845400 12 * other materials provided with the distribution.
AnnaBridge 172:65be27845400 13 *
AnnaBridge 172:65be27845400 14 * o Neither the name of Freescale Semiconductor, Inc. nor the names of its
AnnaBridge 172:65be27845400 15 * contributors may be used to endorse or promote products derived from this
AnnaBridge 172:65be27845400 16 * software without specific prior written permission.
AnnaBridge 172:65be27845400 17 *
AnnaBridge 172:65be27845400 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
AnnaBridge 172:65be27845400 19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
AnnaBridge 172:65be27845400 20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 172:65be27845400 21 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
AnnaBridge 172:65be27845400 22 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
AnnaBridge 172:65be27845400 23 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
AnnaBridge 172:65be27845400 24 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
AnnaBridge 172:65be27845400 25 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
AnnaBridge 172:65be27845400 26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
AnnaBridge 172:65be27845400 27 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 172:65be27845400 28 */
AnnaBridge 172:65be27845400 29 #ifndef _FSL_XCVR_TRIM_H_
AnnaBridge 172:65be27845400 30 /* Clang-format off. */
AnnaBridge 172:65be27845400 31 #define _FSL_XCVR_TRIM_H_
AnnaBridge 172:65be27845400 32 /* Clang-format on. */
AnnaBridge 172:65be27845400 33
AnnaBridge 172:65be27845400 34 #include "fsl_device_registers.h"
AnnaBridge 172:65be27845400 35 /*!
AnnaBridge 172:65be27845400 36 * @addtogroup xcvr
AnnaBridge 172:65be27845400 37 * @{
AnnaBridge 172:65be27845400 38 */
AnnaBridge 172:65be27845400 39
AnnaBridge 172:65be27845400 40 /*! @file*/
AnnaBridge 172:65be27845400 41
AnnaBridge 172:65be27845400 42 /************************************************************************************
AnnaBridge 172:65be27845400 43 *************************************************************************************
AnnaBridge 172:65be27845400 44 * Public constant definitions
AnnaBridge 172:65be27845400 45 *************************************************************************************
AnnaBridge 172:65be27845400 46 ************************************************************************************/
AnnaBridge 172:65be27845400 47
AnnaBridge 172:65be27845400 48 /************************************************************************************
AnnaBridge 172:65be27845400 49 *************************************************************************************
AnnaBridge 172:65be27845400 50 * Public type definitions
AnnaBridge 172:65be27845400 51 *************************************************************************************
AnnaBridge 172:65be27845400 52 ************************************************************************************/
AnnaBridge 172:65be27845400 53
AnnaBridge 172:65be27845400 54 /* \brief The enumerations used to define the I & Q channel selections. */
AnnaBridge 172:65be27845400 55 typedef enum
AnnaBridge 172:65be27845400 56 {
AnnaBridge 172:65be27845400 57 I_CHANNEL = 0,
AnnaBridge 172:65be27845400 58 Q_CHANNEL = 1,
AnnaBridge 172:65be27845400 59 NUM_I_Q_CHAN = 2
AnnaBridge 172:65be27845400 60 } IQ_t;
AnnaBridge 172:65be27845400 61
AnnaBridge 172:65be27845400 62 typedef enum /* Enumeration of ADC_GAIN_CAL 2 */
AnnaBridge 172:65be27845400 63 {
AnnaBridge 172:65be27845400 64 NOMINAL2 = 0,
AnnaBridge 172:65be27845400 65 BBF_NEG = 1,
AnnaBridge 172:65be27845400 66 BBF_POS = 2,
AnnaBridge 172:65be27845400 67 TZA_STEP_N0 = 3,
AnnaBridge 172:65be27845400 68 TZA_STEP_N1 = 4,
AnnaBridge 172:65be27845400 69 TZA_STEP_N2 = 5,
AnnaBridge 172:65be27845400 70 TZA_STEP_N3 = 6,
AnnaBridge 172:65be27845400 71 TZA_STEP_N4 = 7,
AnnaBridge 172:65be27845400 72 TZA_STEP_N5 = 8,
AnnaBridge 172:65be27845400 73 TZA_STEP_N6 = 9,
AnnaBridge 172:65be27845400 74 TZA_STEP_N7 = 10,
AnnaBridge 172:65be27845400 75 TZA_STEP_N8 = 11,
AnnaBridge 172:65be27845400 76 TZA_STEP_N9 = 12,
AnnaBridge 172:65be27845400 77 TZA_STEP_N10 = 13,
AnnaBridge 172:65be27845400 78 TZA_STEP_P0 = 14,
AnnaBridge 172:65be27845400 79 TZA_STEP_P1 = 15,
AnnaBridge 172:65be27845400 80 TZA_STEP_P2 = 16,
AnnaBridge 172:65be27845400 81 TZA_STEP_P3 = 17,
AnnaBridge 172:65be27845400 82 TZA_STEP_P4 = 18,
AnnaBridge 172:65be27845400 83 TZA_STEP_P5 = 19,
AnnaBridge 172:65be27845400 84 TZA_STEP_P6 = 20,
AnnaBridge 172:65be27845400 85 TZA_STEP_P7 = 21,
AnnaBridge 172:65be27845400 86 TZA_STEP_P8 = 22,
AnnaBridge 172:65be27845400 87 TZA_STEP_P9 = 23,
AnnaBridge 172:65be27845400 88 TZA_STEP_P10 = 24,
AnnaBridge 172:65be27845400 89
AnnaBridge 172:65be27845400 90 NUM_SWEEP_STEP_ENTRIES2 = 25 /* Including the baseline entry #0. */
AnnaBridge 172:65be27845400 91 } DAC_SWEEP_STEP2_t;
AnnaBridge 172:65be27845400 92
AnnaBridge 172:65be27845400 93 /* \brief Defines an entry in an array of structs to describe TZA DCOC STEP and TZA_DCOC_STEP_RECIPROCAL. */
AnnaBridge 172:65be27845400 94 typedef struct
AnnaBridge 172:65be27845400 95 {
AnnaBridge 172:65be27845400 96 uint16_t dcoc_step;
AnnaBridge 172:65be27845400 97 uint16_t dcoc_step_rcp;
AnnaBridge 172:65be27845400 98 // uint16_t dcoc_step_q;
AnnaBridge 172:65be27845400 99 // uint16_t dcoc_step_rcp_q;
AnnaBridge 172:65be27845400 100 } TZAdcocstep_t;
AnnaBridge 172:65be27845400 101
AnnaBridge 172:65be27845400 102 typedef struct
AnnaBridge 172:65be27845400 103 {
AnnaBridge 172:65be27845400 104 int8_t step_value; /* The offset from nominal DAC value (see sweep_step_values[]) */
AnnaBridge 172:65be27845400 105 int16_t internal_measurement; /* The value (average code) measured from DMA samples. */
AnnaBridge 172:65be27845400 106 // uint8_t valid; /* Set to TRUE (non zero) when a value is written to this table entry. */
AnnaBridge 172:65be27845400 107 } GAIN_CALC_TBL_ENTRY2_T;
AnnaBridge 172:65be27845400 108
AnnaBridge 172:65be27845400 109 /*******************************************************************************
AnnaBridge 172:65be27845400 110 * Definitions
AnnaBridge 172:65be27845400 111 ******************************************************************************/
AnnaBridge 172:65be27845400 112 #if defined(__cplusplus)
AnnaBridge 172:65be27845400 113 extern "C" {
AnnaBridge 172:65be27845400 114 #endif /* __cplusplus */
AnnaBridge 172:65be27845400 115
AnnaBridge 172:65be27845400 116 void rx_dc_sample_average(int16_t * i_avg, int16_t * q_avg);
AnnaBridge 172:65be27845400 117 void rx_dc_sample_average_long(int16_t * i_avg, int16_t * q_avg);
AnnaBridge 172:65be27845400 118 uint8_t rx_bba_dcoc_dac_trim_shortIQ(void);
AnnaBridge 172:65be27845400 119 void XcvrCalDelay(uint32_t time);
AnnaBridge 172:65be27845400 120 void rx_dc_est_average(int16_t * i_avg, int16_t * q_avg, uint16_t SampleNumber);
AnnaBridge 172:65be27845400 121 uint8_t rx_bba_dcoc_dac_trim_DCest(void);
AnnaBridge 172:65be27845400 122 void DCOC_DAC_INIT_Cal(uint8_t standalone_operation);
AnnaBridge 172:65be27845400 123
AnnaBridge 172:65be27845400 124
AnnaBridge 172:65be27845400 125
AnnaBridge 172:65be27845400 126
AnnaBridge 172:65be27845400 127 /* @} */
AnnaBridge 172:65be27845400 128
AnnaBridge 172:65be27845400 129 #if defined(__cplusplus)
AnnaBridge 172:65be27845400 130 }
AnnaBridge 172:65be27845400 131 #endif
AnnaBridge 172:65be27845400 132
AnnaBridge 172:65be27845400 133 /*! @}*/
AnnaBridge 172:65be27845400 134
AnnaBridge 172:65be27845400 135 #endif /* _FSL_XCVR_TRIM_H_ */
AnnaBridge 172:65be27845400 136