Repostiory containing DAPLink source code with Reset Pin workaround for HANI_IOT board.

Upstream: https://github.com/ARMmbed/DAPLink

Committer:
Pawel Zarembski
Date:
Tue Apr 07 12:55:42 2020 +0200
Revision:
0:01f31e923fe2
hani: DAPLink with reset workaround

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Pawel Zarembski 0:01f31e923fe2 1 /*******************************************************************************
Pawel Zarembski 0:01f31e923fe2 2 * Copyright (C) 2016 Maxim Integrated Products, Inc., All Rights Reserved.
Pawel Zarembski 0:01f31e923fe2 3 *
Pawel Zarembski 0:01f31e923fe2 4 * Permission is hereby granted, free of charge, to any person obtaining a
Pawel Zarembski 0:01f31e923fe2 5 * copy of this software and associated documentation files (the "Software"),
Pawel Zarembski 0:01f31e923fe2 6 * to deal in the Software without restriction, including without limitation
Pawel Zarembski 0:01f31e923fe2 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
Pawel Zarembski 0:01f31e923fe2 8 * and/or sell copies of the Software, and to permit persons to whom the
Pawel Zarembski 0:01f31e923fe2 9 * Software is furnished to do so, subject to the following conditions:
Pawel Zarembski 0:01f31e923fe2 10 *
Pawel Zarembski 0:01f31e923fe2 11 * The above copyright notice and this permission notice shall be included
Pawel Zarembski 0:01f31e923fe2 12 * in all copies or substantial portions of the Software.
Pawel Zarembski 0:01f31e923fe2 13 *
Pawel Zarembski 0:01f31e923fe2 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
Pawel Zarembski 0:01f31e923fe2 15 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
Pawel Zarembski 0:01f31e923fe2 16 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
Pawel Zarembski 0:01f31e923fe2 17 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
Pawel Zarembski 0:01f31e923fe2 18 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
Pawel Zarembski 0:01f31e923fe2 19 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
Pawel Zarembski 0:01f31e923fe2 20 * OTHER DEALINGS IN THE SOFTWARE.
Pawel Zarembski 0:01f31e923fe2 21 *
Pawel Zarembski 0:01f31e923fe2 22 * Except as contained in this notice, the name of Maxim Integrated
Pawel Zarembski 0:01f31e923fe2 23 * Products, Inc. shall not be used except as stated in the Maxim Integrated
Pawel Zarembski 0:01f31e923fe2 24 * Products, Inc. Branding Policy.
Pawel Zarembski 0:01f31e923fe2 25 *
Pawel Zarembski 0:01f31e923fe2 26 * The mere transfer of this software does not imply any licenses
Pawel Zarembski 0:01f31e923fe2 27 * of trade secrets, proprietary technology, copyrights, patents,
Pawel Zarembski 0:01f31e923fe2 28 * trademarks, maskwork rights, or any other form of intellectual
Pawel Zarembski 0:01f31e923fe2 29 * property whatsoever. Maxim Integrated Products, Inc. retains all
Pawel Zarembski 0:01f31e923fe2 30 * ownership rights.
Pawel Zarembski 0:01f31e923fe2 31 *
Pawel Zarembski 0:01f31e923fe2 32 ******************************************************************************/
Pawel Zarembski 0:01f31e923fe2 33
Pawel Zarembski 0:01f31e923fe2 34 #ifndef _MXC_ADC_REGS_H_
Pawel Zarembski 0:01f31e923fe2 35 #define _MXC_ADC_REGS_H_
Pawel Zarembski 0:01f31e923fe2 36
Pawel Zarembski 0:01f31e923fe2 37 #ifdef __cplusplus
Pawel Zarembski 0:01f31e923fe2 38 extern "C" {
Pawel Zarembski 0:01f31e923fe2 39 #endif
Pawel Zarembski 0:01f31e923fe2 40
Pawel Zarembski 0:01f31e923fe2 41 #include <stdint.h>
Pawel Zarembski 0:01f31e923fe2 42
Pawel Zarembski 0:01f31e923fe2 43 /*
Pawel Zarembski 0:01f31e923fe2 44 If types are not defined elsewhere (CMSIS) define them here
Pawel Zarembski 0:01f31e923fe2 45 */
Pawel Zarembski 0:01f31e923fe2 46 #ifndef __IO
Pawel Zarembski 0:01f31e923fe2 47 #define __IO volatile
Pawel Zarembski 0:01f31e923fe2 48 #endif
Pawel Zarembski 0:01f31e923fe2 49 #ifndef __I
Pawel Zarembski 0:01f31e923fe2 50 #define __I volatile const
Pawel Zarembski 0:01f31e923fe2 51 #endif
Pawel Zarembski 0:01f31e923fe2 52 #ifndef __O
Pawel Zarembski 0:01f31e923fe2 53 #define __O volatile
Pawel Zarembski 0:01f31e923fe2 54 #endif
Pawel Zarembski 0:01f31e923fe2 55 #ifndef __R
Pawel Zarembski 0:01f31e923fe2 56 #define __R volatile const
Pawel Zarembski 0:01f31e923fe2 57 #endif
Pawel Zarembski 0:01f31e923fe2 58
Pawel Zarembski 0:01f31e923fe2 59
Pawel Zarembski 0:01f31e923fe2 60 /*
Pawel Zarembski 0:01f31e923fe2 61 Typedefed structure(s) for module registers (per instance or section) with direct 32-bit
Pawel Zarembski 0:01f31e923fe2 62 access to each register in module.
Pawel Zarembski 0:01f31e923fe2 63 */
Pawel Zarembski 0:01f31e923fe2 64
Pawel Zarembski 0:01f31e923fe2 65 /* Offset Register Description
Pawel Zarembski 0:01f31e923fe2 66 ============= ============================================================================ */
Pawel Zarembski 0:01f31e923fe2 67 typedef struct {
Pawel Zarembski 0:01f31e923fe2 68 __IO uint32_t ctrl; /* 0x0000 ADC Control */
Pawel Zarembski 0:01f31e923fe2 69 __IO uint32_t status; /* 0x0004 ADC Status */
Pawel Zarembski 0:01f31e923fe2 70 __IO uint32_t data; /* 0x0008 ADC Output Data */
Pawel Zarembski 0:01f31e923fe2 71 __IO uint32_t intr; /* 0x000C ADC Interrupt Control Register */
Pawel Zarembski 0:01f31e923fe2 72 __IO uint32_t limit[4]; /* 0x0010-0x001C ADC Limit 0..3 */
Pawel Zarembski 0:01f31e923fe2 73 __IO uint32_t afe_ctrl; /* 0x0020 AFE Control Register */
Pawel Zarembski 0:01f31e923fe2 74 __IO uint32_t ro_cal0; /* 0x0024 RO Trim Calibration Register 0 */
Pawel Zarembski 0:01f31e923fe2 75 __IO uint32_t ro_cal1; /* 0x0028 RO Trim Calibration Register 1 */
Pawel Zarembski 0:01f31e923fe2 76 __IO uint32_t ro_cal2; /* 0x002C RO Trim Calibration Register 2 */
Pawel Zarembski 0:01f31e923fe2 77 } mxc_adc_regs_t;
Pawel Zarembski 0:01f31e923fe2 78
Pawel Zarembski 0:01f31e923fe2 79
Pawel Zarembski 0:01f31e923fe2 80 /*
Pawel Zarembski 0:01f31e923fe2 81 Register offsets for module ADC.
Pawel Zarembski 0:01f31e923fe2 82 */
Pawel Zarembski 0:01f31e923fe2 83
Pawel Zarembski 0:01f31e923fe2 84 #define MXC_R_ADC_OFFS_CTRL ((uint32_t)0x00000000UL)
Pawel Zarembski 0:01f31e923fe2 85 #define MXC_R_ADC_OFFS_STATUS ((uint32_t)0x00000004UL)
Pawel Zarembski 0:01f31e923fe2 86 #define MXC_R_ADC_OFFS_DATA ((uint32_t)0x00000008UL)
Pawel Zarembski 0:01f31e923fe2 87 #define MXC_R_ADC_OFFS_INTR ((uint32_t)0x0000000CUL)
Pawel Zarembski 0:01f31e923fe2 88 #define MXC_R_ADC_OFFS_LIMIT0 ((uint32_t)0x00000010UL)
Pawel Zarembski 0:01f31e923fe2 89 #define MXC_R_ADC_OFFS_LIMIT1 ((uint32_t)0x00000014UL)
Pawel Zarembski 0:01f31e923fe2 90 #define MXC_R_ADC_OFFS_LIMIT2 ((uint32_t)0x00000018UL)
Pawel Zarembski 0:01f31e923fe2 91 #define MXC_R_ADC_OFFS_LIMIT3 ((uint32_t)0x0000001CUL)
Pawel Zarembski 0:01f31e923fe2 92 #define MXC_R_ADC_OFFS_AFE_CTRL ((uint32_t)0x00000020UL)
Pawel Zarembski 0:01f31e923fe2 93 #define MXC_R_ADC_OFFS_RO_CAL0 ((uint32_t)0x00000024UL)
Pawel Zarembski 0:01f31e923fe2 94 #define MXC_R_ADC_OFFS_RO_CAL1 ((uint32_t)0x00000028UL)
Pawel Zarembski 0:01f31e923fe2 95 #define MXC_R_ADC_OFFS_RO_CAL2 ((uint32_t)0x0000002CUL)
Pawel Zarembski 0:01f31e923fe2 96
Pawel Zarembski 0:01f31e923fe2 97
Pawel Zarembski 0:01f31e923fe2 98 /*
Pawel Zarembski 0:01f31e923fe2 99 Field positions and masks for module ADC.
Pawel Zarembski 0:01f31e923fe2 100 */
Pawel Zarembski 0:01f31e923fe2 101
Pawel Zarembski 0:01f31e923fe2 102 #define MXC_F_ADC_CTRL_CPU_ADC_START_POS 0
Pawel Zarembski 0:01f31e923fe2 103 #define MXC_F_ADC_CTRL_CPU_ADC_START ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_CPU_ADC_START_POS))
Pawel Zarembski 0:01f31e923fe2 104 #define MXC_F_ADC_CTRL_ADC_PU_POS 1
Pawel Zarembski 0:01f31e923fe2 105 #define MXC_F_ADC_CTRL_ADC_PU ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_PU_POS))
Pawel Zarembski 0:01f31e923fe2 106 #define MXC_F_ADC_CTRL_BUF_PU_POS 2
Pawel Zarembski 0:01f31e923fe2 107 #define MXC_F_ADC_CTRL_BUF_PU ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_BUF_PU_POS))
Pawel Zarembski 0:01f31e923fe2 108 #define MXC_F_ADC_CTRL_ADC_REFBUF_PU_POS 3
Pawel Zarembski 0:01f31e923fe2 109 #define MXC_F_ADC_CTRL_ADC_REFBUF_PU ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_REFBUF_PU_POS))
Pawel Zarembski 0:01f31e923fe2 110 #define MXC_F_ADC_CTRL_ADC_CHGPUMP_PU_POS 4
Pawel Zarembski 0:01f31e923fe2 111 #define MXC_F_ADC_CTRL_ADC_CHGPUMP_PU ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_CHGPUMP_PU_POS))
Pawel Zarembski 0:01f31e923fe2 112 #define MXC_F_ADC_CTRL_BUF_CHOP_DIS_POS 5
Pawel Zarembski 0:01f31e923fe2 113 #define MXC_F_ADC_CTRL_BUF_CHOP_DIS ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_BUF_CHOP_DIS_POS))
Pawel Zarembski 0:01f31e923fe2 114 #define MXC_F_ADC_CTRL_BUF_PUMP_DIS_POS 6
Pawel Zarembski 0:01f31e923fe2 115 #define MXC_F_ADC_CTRL_BUF_PUMP_DIS ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_BUF_PUMP_DIS_POS))
Pawel Zarembski 0:01f31e923fe2 116 #define MXC_F_ADC_CTRL_BUF_BYPASS_POS 7
Pawel Zarembski 0:01f31e923fe2 117 #define MXC_F_ADC_CTRL_BUF_BYPASS ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_BUF_BYPASS_POS))
Pawel Zarembski 0:01f31e923fe2 118 #define MXC_F_ADC_CTRL_ADC_REFSCL_POS 8
Pawel Zarembski 0:01f31e923fe2 119 #define MXC_F_ADC_CTRL_ADC_REFSCL ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_REFSCL_POS))
Pawel Zarembski 0:01f31e923fe2 120 #define MXC_F_ADC_CTRL_ADC_SCALE_POS 9
Pawel Zarembski 0:01f31e923fe2 121 #define MXC_F_ADC_CTRL_ADC_SCALE ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_SCALE_POS))
Pawel Zarembski 0:01f31e923fe2 122 #define MXC_F_ADC_CTRL_ADC_REFSEL_POS 10
Pawel Zarembski 0:01f31e923fe2 123 #define MXC_F_ADC_CTRL_ADC_REFSEL ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_REFSEL_POS))
Pawel Zarembski 0:01f31e923fe2 124 #define MXC_F_ADC_CTRL_ADC_CLK_EN_POS 11
Pawel Zarembski 0:01f31e923fe2 125 #define MXC_F_ADC_CTRL_ADC_CLK_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_CLK_EN_POS))
Pawel Zarembski 0:01f31e923fe2 126 #define MXC_F_ADC_CTRL_ADC_CHSEL_POS 12
Pawel Zarembski 0:01f31e923fe2 127 #define MXC_F_ADC_CTRL_ADC_CHSEL ((uint32_t)(0x0000000FUL << MXC_F_ADC_CTRL_ADC_CHSEL_POS))
Pawel Zarembski 0:01f31e923fe2 128
Pawel Zarembski 0:01f31e923fe2 129 #if (MXC_ADC_REV == 0)
Pawel Zarembski 0:01f31e923fe2 130 #define MXC_F_ADC_CTRL_ADC_XREF_POS 16
Pawel Zarembski 0:01f31e923fe2 131 #define MXC_F_ADC_CTRL_ADC_XREF ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_XREF_POS))
Pawel Zarembski 0:01f31e923fe2 132 #endif
Pawel Zarembski 0:01f31e923fe2 133
Pawel Zarembski 0:01f31e923fe2 134 #define MXC_F_ADC_CTRL_ADC_DATAALIGN_POS 17
Pawel Zarembski 0:01f31e923fe2 135 #define MXC_F_ADC_CTRL_ADC_DATAALIGN ((uint32_t)(0x00000001UL << MXC_F_ADC_CTRL_ADC_DATAALIGN_POS))
Pawel Zarembski 0:01f31e923fe2 136 #define MXC_F_ADC_CTRL_AFE_PWR_UP_DLY_POS 24
Pawel Zarembski 0:01f31e923fe2 137 #define MXC_F_ADC_CTRL_AFE_PWR_UP_DLY ((uint32_t)(0x000000FFUL << MXC_F_ADC_CTRL_AFE_PWR_UP_DLY_POS))
Pawel Zarembski 0:01f31e923fe2 138
Pawel Zarembski 0:01f31e923fe2 139 #define MXC_F_ADC_STATUS_ADC_ACTIVE_POS 0
Pawel Zarembski 0:01f31e923fe2 140 #define MXC_F_ADC_STATUS_ADC_ACTIVE ((uint32_t)(0x00000001UL << MXC_F_ADC_STATUS_ADC_ACTIVE_POS))
Pawel Zarembski 0:01f31e923fe2 141 #define MXC_F_ADC_STATUS_RO_CAL_ATOMIC_ACTIVE_POS 1
Pawel Zarembski 0:01f31e923fe2 142 #define MXC_F_ADC_STATUS_RO_CAL_ATOMIC_ACTIVE ((uint32_t)(0x00000001UL << MXC_F_ADC_STATUS_RO_CAL_ATOMIC_ACTIVE_POS))
Pawel Zarembski 0:01f31e923fe2 143 #define MXC_F_ADC_STATUS_AFE_PWR_UP_ACTIVE_POS 2
Pawel Zarembski 0:01f31e923fe2 144 #define MXC_F_ADC_STATUS_AFE_PWR_UP_ACTIVE ((uint32_t)(0x00000001UL << MXC_F_ADC_STATUS_AFE_PWR_UP_ACTIVE_POS))
Pawel Zarembski 0:01f31e923fe2 145 #define MXC_F_ADC_STATUS_ADC_OVERFLOW_POS 3
Pawel Zarembski 0:01f31e923fe2 146 #define MXC_F_ADC_STATUS_ADC_OVERFLOW ((uint32_t)(0x00000001UL << MXC_F_ADC_STATUS_ADC_OVERFLOW_POS))
Pawel Zarembski 0:01f31e923fe2 147
Pawel Zarembski 0:01f31e923fe2 148 #define MXC_F_ADC_DATA_ADC_DATA_POS 0
Pawel Zarembski 0:01f31e923fe2 149 #define MXC_F_ADC_DATA_ADC_DATA ((uint32_t)(0x0000FFFFUL << MXC_F_ADC_DATA_ADC_DATA_POS))
Pawel Zarembski 0:01f31e923fe2 150
Pawel Zarembski 0:01f31e923fe2 151 #define MXC_F_ADC_INTR_ADC_DONE_IE_POS 0
Pawel Zarembski 0:01f31e923fe2 152 #define MXC_F_ADC_INTR_ADC_DONE_IE ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_DONE_IE_POS))
Pawel Zarembski 0:01f31e923fe2 153 #define MXC_F_ADC_INTR_ADC_REF_READY_IE_POS 1
Pawel Zarembski 0:01f31e923fe2 154 #define MXC_F_ADC_INTR_ADC_REF_READY_IE ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_REF_READY_IE_POS))
Pawel Zarembski 0:01f31e923fe2 155 #define MXC_F_ADC_INTR_ADC_HI_LIMIT_IE_POS 2
Pawel Zarembski 0:01f31e923fe2 156 #define MXC_F_ADC_INTR_ADC_HI_LIMIT_IE ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_HI_LIMIT_IE_POS))
Pawel Zarembski 0:01f31e923fe2 157 #define MXC_F_ADC_INTR_ADC_LO_LIMIT_IE_POS 3
Pawel Zarembski 0:01f31e923fe2 158 #define MXC_F_ADC_INTR_ADC_LO_LIMIT_IE ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_LO_LIMIT_IE_POS))
Pawel Zarembski 0:01f31e923fe2 159 #define MXC_F_ADC_INTR_ADC_OVERFLOW_IE_POS 4
Pawel Zarembski 0:01f31e923fe2 160 #define MXC_F_ADC_INTR_ADC_OVERFLOW_IE ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_OVERFLOW_IE_POS))
Pawel Zarembski 0:01f31e923fe2 161 #define MXC_F_ADC_INTR_RO_CAL_DONE_IE_POS 5
Pawel Zarembski 0:01f31e923fe2 162 #define MXC_F_ADC_INTR_RO_CAL_DONE_IE ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_RO_CAL_DONE_IE_POS))
Pawel Zarembski 0:01f31e923fe2 163 #define MXC_F_ADC_INTR_ADC_DONE_IF_POS 16
Pawel Zarembski 0:01f31e923fe2 164 #define MXC_F_ADC_INTR_ADC_DONE_IF ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_DONE_IF_POS))
Pawel Zarembski 0:01f31e923fe2 165 #define MXC_F_ADC_INTR_ADC_REF_READY_IF_POS 17
Pawel Zarembski 0:01f31e923fe2 166 #define MXC_F_ADC_INTR_ADC_REF_READY_IF ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_REF_READY_IF_POS))
Pawel Zarembski 0:01f31e923fe2 167 #define MXC_F_ADC_INTR_ADC_HI_LIMIT_IF_POS 18
Pawel Zarembski 0:01f31e923fe2 168 #define MXC_F_ADC_INTR_ADC_HI_LIMIT_IF ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_HI_LIMIT_IF_POS))
Pawel Zarembski 0:01f31e923fe2 169 #define MXC_F_ADC_INTR_ADC_LO_LIMIT_IF_POS 19
Pawel Zarembski 0:01f31e923fe2 170 #define MXC_F_ADC_INTR_ADC_LO_LIMIT_IF ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_LO_LIMIT_IF_POS))
Pawel Zarembski 0:01f31e923fe2 171 #define MXC_F_ADC_INTR_ADC_OVERFLOW_IF_POS 20
Pawel Zarembski 0:01f31e923fe2 172 #define MXC_F_ADC_INTR_ADC_OVERFLOW_IF ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_OVERFLOW_IF_POS))
Pawel Zarembski 0:01f31e923fe2 173 #define MXC_F_ADC_INTR_RO_CAL_DONE_IF_POS 21
Pawel Zarembski 0:01f31e923fe2 174 #define MXC_F_ADC_INTR_RO_CAL_DONE_IF ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_RO_CAL_DONE_IF_POS))
Pawel Zarembski 0:01f31e923fe2 175 #define MXC_F_ADC_INTR_ADC_INT_PENDING_POS 22
Pawel Zarembski 0:01f31e923fe2 176 #define MXC_F_ADC_INTR_ADC_INT_PENDING ((uint32_t)(0x00000001UL << MXC_F_ADC_INTR_ADC_INT_PENDING_POS))
Pawel Zarembski 0:01f31e923fe2 177
Pawel Zarembski 0:01f31e923fe2 178 #define MXC_F_ADC_LIMIT0_CH_LO_LIMIT_POS 0
Pawel Zarembski 0:01f31e923fe2 179 #define MXC_F_ADC_LIMIT0_CH_LO_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT0_CH_LO_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 180 #define MXC_F_ADC_LIMIT0_CH_HI_LIMIT_POS 12
Pawel Zarembski 0:01f31e923fe2 181 #define MXC_F_ADC_LIMIT0_CH_HI_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT0_CH_HI_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 182 #define MXC_F_ADC_LIMIT0_CH_SEL_POS 24
Pawel Zarembski 0:01f31e923fe2 183 #define MXC_F_ADC_LIMIT0_CH_SEL ((uint32_t)(0x0000000FUL << MXC_F_ADC_LIMIT0_CH_SEL_POS))
Pawel Zarembski 0:01f31e923fe2 184 #define MXC_F_ADC_LIMIT0_CH_LO_LIMIT_EN_POS 28
Pawel Zarembski 0:01f31e923fe2 185 #define MXC_F_ADC_LIMIT0_CH_LO_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT0_CH_LO_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 186 #define MXC_F_ADC_LIMIT0_CH_HI_LIMIT_EN_POS 29
Pawel Zarembski 0:01f31e923fe2 187 #define MXC_F_ADC_LIMIT0_CH_HI_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT0_CH_HI_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 188
Pawel Zarembski 0:01f31e923fe2 189 #define MXC_F_ADC_LIMIT1_CH_LO_LIMIT_POS 0
Pawel Zarembski 0:01f31e923fe2 190 #define MXC_F_ADC_LIMIT1_CH_LO_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT1_CH_LO_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 191 #define MXC_F_ADC_LIMIT1_CH_HI_LIMIT_POS 12
Pawel Zarembski 0:01f31e923fe2 192 #define MXC_F_ADC_LIMIT1_CH_HI_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT1_CH_HI_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 193 #define MXC_F_ADC_LIMIT1_CH_SEL_POS 24
Pawel Zarembski 0:01f31e923fe2 194 #define MXC_F_ADC_LIMIT1_CH_SEL ((uint32_t)(0x0000000FUL << MXC_F_ADC_LIMIT1_CH_SEL_POS))
Pawel Zarembski 0:01f31e923fe2 195 #define MXC_F_ADC_LIMIT1_CH_LO_LIMIT_EN_POS 28
Pawel Zarembski 0:01f31e923fe2 196 #define MXC_F_ADC_LIMIT1_CH_LO_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT1_CH_LO_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 197 #define MXC_F_ADC_LIMIT1_CH_HI_LIMIT_EN_POS 29
Pawel Zarembski 0:01f31e923fe2 198 #define MXC_F_ADC_LIMIT1_CH_HI_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT1_CH_HI_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 199
Pawel Zarembski 0:01f31e923fe2 200 #define MXC_F_ADC_LIMIT2_CH_LO_LIMIT_POS 0
Pawel Zarembski 0:01f31e923fe2 201 #define MXC_F_ADC_LIMIT2_CH_LO_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT2_CH_LO_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 202 #define MXC_F_ADC_LIMIT2_CH_HI_LIMIT_POS 12
Pawel Zarembski 0:01f31e923fe2 203 #define MXC_F_ADC_LIMIT2_CH_HI_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT2_CH_HI_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 204 #define MXC_F_ADC_LIMIT2_CH_SEL_POS 24
Pawel Zarembski 0:01f31e923fe2 205 #define MXC_F_ADC_LIMIT2_CH_SEL ((uint32_t)(0x0000000FUL << MXC_F_ADC_LIMIT2_CH_SEL_POS))
Pawel Zarembski 0:01f31e923fe2 206 #define MXC_F_ADC_LIMIT2_CH_LO_LIMIT_EN_POS 28
Pawel Zarembski 0:01f31e923fe2 207 #define MXC_F_ADC_LIMIT2_CH_LO_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT2_CH_LO_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 208 #define MXC_F_ADC_LIMIT2_CH_HI_LIMIT_EN_POS 29
Pawel Zarembski 0:01f31e923fe2 209 #define MXC_F_ADC_LIMIT2_CH_HI_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT2_CH_HI_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 210
Pawel Zarembski 0:01f31e923fe2 211 #define MXC_F_ADC_LIMIT3_CH_LO_LIMIT_POS 0
Pawel Zarembski 0:01f31e923fe2 212 #define MXC_F_ADC_LIMIT3_CH_LO_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT3_CH_LO_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 213 #define MXC_F_ADC_LIMIT3_CH_HI_LIMIT_POS 12
Pawel Zarembski 0:01f31e923fe2 214 #define MXC_F_ADC_LIMIT3_CH_HI_LIMIT ((uint32_t)(0x000003FFUL << MXC_F_ADC_LIMIT3_CH_HI_LIMIT_POS))
Pawel Zarembski 0:01f31e923fe2 215 #define MXC_F_ADC_LIMIT3_CH_SEL_POS 24
Pawel Zarembski 0:01f31e923fe2 216 #define MXC_F_ADC_LIMIT3_CH_SEL ((uint32_t)(0x0000000FUL << MXC_F_ADC_LIMIT3_CH_SEL_POS))
Pawel Zarembski 0:01f31e923fe2 217 #define MXC_F_ADC_LIMIT3_CH_LO_LIMIT_EN_POS 28
Pawel Zarembski 0:01f31e923fe2 218 #define MXC_F_ADC_LIMIT3_CH_LO_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT3_CH_LO_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 219 #define MXC_F_ADC_LIMIT3_CH_HI_LIMIT_EN_POS 29
Pawel Zarembski 0:01f31e923fe2 220 #define MXC_F_ADC_LIMIT3_CH_HI_LIMIT_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_LIMIT3_CH_HI_LIMIT_EN_POS))
Pawel Zarembski 0:01f31e923fe2 221
Pawel Zarembski 0:01f31e923fe2 222 #define MXC_F_ADC_AFE_CTRL_TMON_INTBIAS_EN_POS 8
Pawel Zarembski 0:01f31e923fe2 223 #define MXC_F_ADC_AFE_CTRL_TMON_INTBIAS_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_AFE_CTRL_TMON_INTBIAS_EN_POS))
Pawel Zarembski 0:01f31e923fe2 224 #define MXC_F_ADC_AFE_CTRL_TMON_EXTBIAS_EN_POS 9
Pawel Zarembski 0:01f31e923fe2 225 #define MXC_F_ADC_AFE_CTRL_TMON_EXTBIAS_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_AFE_CTRL_TMON_EXTBIAS_EN_POS))
Pawel Zarembski 0:01f31e923fe2 226
Pawel Zarembski 0:01f31e923fe2 227 #define MXC_F_ADC_RO_CAL0_RO_CAL_EN_POS 0
Pawel Zarembski 0:01f31e923fe2 228 #define MXC_F_ADC_RO_CAL0_RO_CAL_EN ((uint32_t)(0x00000001UL << MXC_F_ADC_RO_CAL0_RO_CAL_EN_POS))
Pawel Zarembski 0:01f31e923fe2 229 #define MXC_F_ADC_RO_CAL0_RO_CAL_RUN_POS 1
Pawel Zarembski 0:01f31e923fe2 230 #define MXC_F_ADC_RO_CAL0_RO_CAL_RUN ((uint32_t)(0x00000001UL << MXC_F_ADC_RO_CAL0_RO_CAL_RUN_POS))
Pawel Zarembski 0:01f31e923fe2 231 #define MXC_F_ADC_RO_CAL0_RO_CAL_LOAD_POS 2
Pawel Zarembski 0:01f31e923fe2 232 #define MXC_F_ADC_RO_CAL0_RO_CAL_LOAD ((uint32_t)(0x00000001UL << MXC_F_ADC_RO_CAL0_RO_CAL_LOAD_POS))
Pawel Zarembski 0:01f31e923fe2 233 #define MXC_F_ADC_RO_CAL0_RO_CAL_ATOMIC_POS 4
Pawel Zarembski 0:01f31e923fe2 234 #define MXC_F_ADC_RO_CAL0_RO_CAL_ATOMIC ((uint32_t)(0x00000001UL << MXC_F_ADC_RO_CAL0_RO_CAL_ATOMIC_POS))
Pawel Zarembski 0:01f31e923fe2 235 #define MXC_F_ADC_RO_CAL0_DUMMY_POS 5
Pawel Zarembski 0:01f31e923fe2 236 #define MXC_F_ADC_RO_CAL0_DUMMY ((uint32_t)(0x00000007UL << MXC_F_ADC_RO_CAL0_DUMMY_POS))
Pawel Zarembski 0:01f31e923fe2 237 #define MXC_F_ADC_RO_CAL0_TRM_MU_POS 8
Pawel Zarembski 0:01f31e923fe2 238 #define MXC_F_ADC_RO_CAL0_TRM_MU ((uint32_t)(0x00000FFFUL << MXC_F_ADC_RO_CAL0_TRM_MU_POS))
Pawel Zarembski 0:01f31e923fe2 239 #define MXC_F_ADC_RO_CAL0_RO_TRM_POS 23
Pawel Zarembski 0:01f31e923fe2 240 #define MXC_F_ADC_RO_CAL0_RO_TRM ((uint32_t)(0x000001FFUL << MXC_F_ADC_RO_CAL0_RO_TRM_POS))
Pawel Zarembski 0:01f31e923fe2 241
Pawel Zarembski 0:01f31e923fe2 242 #define MXC_F_ADC_RO_CAL1_TRM_INIT_POS 0
Pawel Zarembski 0:01f31e923fe2 243 #define MXC_F_ADC_RO_CAL1_TRM_INIT ((uint32_t)(0x000001FFUL << MXC_F_ADC_RO_CAL1_TRM_INIT_POS))
Pawel Zarembski 0:01f31e923fe2 244 #define MXC_F_ADC_RO_CAL1_TRM_MIN_POS 10
Pawel Zarembski 0:01f31e923fe2 245 #define MXC_F_ADC_RO_CAL1_TRM_MIN ((uint32_t)(0x000001FFUL << MXC_F_ADC_RO_CAL1_TRM_MIN_POS))
Pawel Zarembski 0:01f31e923fe2 246 #define MXC_F_ADC_RO_CAL1_TRM_MAX_POS 20
Pawel Zarembski 0:01f31e923fe2 247 #define MXC_F_ADC_RO_CAL1_TRM_MAX ((uint32_t)(0x000001FFUL << MXC_F_ADC_RO_CAL1_TRM_MAX_POS))
Pawel Zarembski 0:01f31e923fe2 248
Pawel Zarembski 0:01f31e923fe2 249 #define MXC_F_ADC_RO_CAL2_AUTO_CAL_DONE_CNT_POS 0
Pawel Zarembski 0:01f31e923fe2 250 #define MXC_F_ADC_RO_CAL2_AUTO_CAL_DONE_CNT ((uint32_t)(0x000000FFUL << MXC_F_ADC_RO_CAL2_AUTO_CAL_DONE_CNT_POS))
Pawel Zarembski 0:01f31e923fe2 251
Pawel Zarembski 0:01f31e923fe2 252 #define MXC_V_ADC_CTRL_ADC_CHSEL_AIN0 ((uint32_t)(0x00000000UL))
Pawel Zarembski 0:01f31e923fe2 253 #define MXC_V_ADC_CTRL_ADC_CHSEL_AIN1 ((uint32_t)(0x00000001UL))
Pawel Zarembski 0:01f31e923fe2 254 #define MXC_V_ADC_CTRL_ADC_CHSEL_AIN2 ((uint32_t)(0x00000002UL))
Pawel Zarembski 0:01f31e923fe2 255 #define MXC_V_ADC_CTRL_ADC_CHSEL_AIN3 ((uint32_t)(0x00000003UL))
Pawel Zarembski 0:01f31e923fe2 256 #define MXC_V_ADC_CTRL_ADC_CHSEL_AIN0_DIV_5 ((uint32_t)(0x00000004UL))
Pawel Zarembski 0:01f31e923fe2 257 #define MXC_V_ADC_CTRL_ADC_CHSEL_AIN1_DIV_5 ((uint32_t)(0x00000005UL))
Pawel Zarembski 0:01f31e923fe2 258 #define MXC_V_ADC_CTRL_ADC_CHSEL_VDDB_DIV_4 ((uint32_t)(0x00000006UL))
Pawel Zarembski 0:01f31e923fe2 259 #define MXC_V_ADC_CTRL_ADC_CHSEL_VDD18 ((uint32_t)(0x00000007UL))
Pawel Zarembski 0:01f31e923fe2 260 #define MXC_V_ADC_CTRL_ADC_CHSEL_VDD12 ((uint32_t)(0x00000008UL))
Pawel Zarembski 0:01f31e923fe2 261 #define MXC_V_ADC_CTRL_ADC_CHSEL_VRTC_DIV_2 ((uint32_t)(0x00000009UL))
Pawel Zarembski 0:01f31e923fe2 262 #define MXC_V_ADC_CTRL_ADC_CHSEL_TMON ((uint32_t)(0x0000000AUL))
Pawel Zarembski 0:01f31e923fe2 263
Pawel Zarembski 0:01f31e923fe2 264 #if(MXC_ADC_REV > 0)
Pawel Zarembski 0:01f31e923fe2 265 #define MXC_V_ADC_CTRL_ADC_CHSEL_VDDIO_DIV_4 ((uint32_t)(0x0000000BUL))
Pawel Zarembski 0:01f31e923fe2 266 #define MXC_V_ADC_CTRL_ADC_CHSEL_VDDIOH_DIV_4 ((uint32_t)(0x0000000CUL))
Pawel Zarembski 0:01f31e923fe2 267 #endif
Pawel Zarembski 0:01f31e923fe2 268
Pawel Zarembski 0:01f31e923fe2 269 #ifdef __cplusplus
Pawel Zarembski 0:01f31e923fe2 270 }
Pawel Zarembski 0:01f31e923fe2 271 #endif
Pawel Zarembski 0:01f31e923fe2 272
Pawel Zarembski 0:01f31e923fe2 273 #endif /* _MXC_ADC_REGS_H_ */