mbed library sources

Dependents:   Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more

Superseded

This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.

Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.

If you are looking for a stable and tested release, please import one of the official mbed library releases:

Import librarymbed

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

Committer:
mbed_official
Date:
Thu Apr 03 11:45:06 2014 +0100
Revision:
149:1fb5f62b92bd
Parent:
targets/hal/TARGET_Freescale/TARGET_KSDK_MCUS/TARGET_K64F/device/MK64F12/MK64F12_pdb.h@146:f64d43ff0c18
Synchronized with git revision 220c0bb39ceee40016e1e86350c058963d01ed42

Full URL: https://github.com/mbedmicro/mbed/commit/220c0bb39ceee40016e1e86350c058963d01ed42/

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 146:f64d43ff0c18 1 /*
mbed_official 146:f64d43ff0c18 2 * Copyright (c) 2014, Freescale Semiconductor, Inc.
mbed_official 146:f64d43ff0c18 3 * All rights reserved.
mbed_official 146:f64d43ff0c18 4 *
mbed_official 146:f64d43ff0c18 5 * THIS SOFTWARE IS PROVIDED BY FREESCALE "AS IS" AND ANY EXPRESS OR IMPLIED
mbed_official 146:f64d43ff0c18 6 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
mbed_official 146:f64d43ff0c18 7 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
mbed_official 146:f64d43ff0c18 8 * SHALL FREESCALE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
mbed_official 146:f64d43ff0c18 9 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
mbed_official 146:f64d43ff0c18 10 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
mbed_official 146:f64d43ff0c18 11 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
mbed_official 146:f64d43ff0c18 12 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
mbed_official 146:f64d43ff0c18 13 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
mbed_official 146:f64d43ff0c18 14 * OF SUCH DAMAGE.
mbed_official 146:f64d43ff0c18 15 */
mbed_official 146:f64d43ff0c18 16 /*
mbed_official 146:f64d43ff0c18 17 * WARNING! DO NOT EDIT THIS FILE DIRECTLY!
mbed_official 146:f64d43ff0c18 18 *
mbed_official 146:f64d43ff0c18 19 * This file was generated automatically and any changes may be lost.
mbed_official 146:f64d43ff0c18 20 */
mbed_official 146:f64d43ff0c18 21 #ifndef __HW_PDB_REGISTERS_H__
mbed_official 146:f64d43ff0c18 22 #define __HW_PDB_REGISTERS_H__
mbed_official 146:f64d43ff0c18 23
mbed_official 146:f64d43ff0c18 24 #include "regs.h"
mbed_official 146:f64d43ff0c18 25
mbed_official 146:f64d43ff0c18 26 /*
mbed_official 146:f64d43ff0c18 27 * MK64F12 PDB
mbed_official 146:f64d43ff0c18 28 *
mbed_official 146:f64d43ff0c18 29 * Programmable Delay Block
mbed_official 146:f64d43ff0c18 30 *
mbed_official 146:f64d43ff0c18 31 * Registers defined in this header file:
mbed_official 146:f64d43ff0c18 32 * - HW_PDB_SC - Status and Control register
mbed_official 146:f64d43ff0c18 33 * - HW_PDB_MOD - Modulus register
mbed_official 146:f64d43ff0c18 34 * - HW_PDB_CNT - Counter register
mbed_official 146:f64d43ff0c18 35 * - HW_PDB_IDLY - Interrupt Delay register
mbed_official 146:f64d43ff0c18 36 * - HW_PDB_CHnC1 - Channel n Control register 1
mbed_official 146:f64d43ff0c18 37 * - HW_PDB_CHnS - Channel n Status register
mbed_official 146:f64d43ff0c18 38 * - HW_PDB_CHnDLY0 - Channel n Delay 0 register
mbed_official 146:f64d43ff0c18 39 * - HW_PDB_CHnDLY1 - Channel n Delay 1 register
mbed_official 146:f64d43ff0c18 40 * - HW_PDB_DACINTCn - DAC Interval Trigger n Control register
mbed_official 146:f64d43ff0c18 41 * - HW_PDB_DACINTn - DAC Interval n register
mbed_official 146:f64d43ff0c18 42 * - HW_PDB_POEN - Pulse-Out n Enable register
mbed_official 146:f64d43ff0c18 43 * - HW_PDB_POnDLY - Pulse-Out n Delay register
mbed_official 146:f64d43ff0c18 44 *
mbed_official 146:f64d43ff0c18 45 * - hw_pdb_t - Struct containing all module registers.
mbed_official 146:f64d43ff0c18 46 */
mbed_official 146:f64d43ff0c18 47
mbed_official 146:f64d43ff0c18 48 //! @name Module base addresses
mbed_official 146:f64d43ff0c18 49 //@{
mbed_official 146:f64d43ff0c18 50 #ifndef REGS_PDB_BASE
mbed_official 146:f64d43ff0c18 51 #define HW_PDB_INSTANCE_COUNT (1U) //!< Number of instances of the PDB module.
mbed_official 146:f64d43ff0c18 52 #define REGS_PDB_BASE (0x40036000U) //!< Base address for PDB0.
mbed_official 146:f64d43ff0c18 53 #endif
mbed_official 146:f64d43ff0c18 54 //@}
mbed_official 146:f64d43ff0c18 55
mbed_official 146:f64d43ff0c18 56 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 57 // HW_PDB_SC - Status and Control register
mbed_official 146:f64d43ff0c18 58 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 59
mbed_official 146:f64d43ff0c18 60 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 61 /*!
mbed_official 146:f64d43ff0c18 62 * @brief HW_PDB_SC - Status and Control register (RW)
mbed_official 146:f64d43ff0c18 63 *
mbed_official 146:f64d43ff0c18 64 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 65 */
mbed_official 146:f64d43ff0c18 66 typedef union _hw_pdb_sc
mbed_official 146:f64d43ff0c18 67 {
mbed_official 146:f64d43ff0c18 68 uint32_t U;
mbed_official 146:f64d43ff0c18 69 struct _hw_pdb_sc_bitfields
mbed_official 146:f64d43ff0c18 70 {
mbed_official 146:f64d43ff0c18 71 uint32_t LDOK : 1; //!< [0] Load OK
mbed_official 146:f64d43ff0c18 72 uint32_t CONT : 1; //!< [1] Continuous Mode Enable
mbed_official 146:f64d43ff0c18 73 uint32_t MULT : 2; //!< [3:2] Multiplication Factor Select for
mbed_official 146:f64d43ff0c18 74 //! Prescaler
mbed_official 146:f64d43ff0c18 75 uint32_t RESERVED0 : 1; //!< [4]
mbed_official 146:f64d43ff0c18 76 uint32_t PDBIE : 1; //!< [5] PDB Interrupt Enable
mbed_official 146:f64d43ff0c18 77 uint32_t PDBIF : 1; //!< [6] PDB Interrupt Flag
mbed_official 146:f64d43ff0c18 78 uint32_t PDBEN : 1; //!< [7] PDB Enable
mbed_official 146:f64d43ff0c18 79 uint32_t TRGSEL : 4; //!< [11:8] Trigger Input Source Select
mbed_official 146:f64d43ff0c18 80 uint32_t PRESCALER : 3; //!< [14:12] Prescaler Divider Select
mbed_official 146:f64d43ff0c18 81 uint32_t DMAEN : 1; //!< [15] DMA Enable
mbed_official 146:f64d43ff0c18 82 uint32_t SWTRIG : 1; //!< [16] Software Trigger
mbed_official 146:f64d43ff0c18 83 uint32_t PDBEIE : 1; //!< [17] PDB Sequence Error Interrupt Enable
mbed_official 146:f64d43ff0c18 84 uint32_t LDMOD : 2; //!< [19:18] Load Mode Select
mbed_official 146:f64d43ff0c18 85 uint32_t RESERVED1 : 12; //!< [31:20]
mbed_official 146:f64d43ff0c18 86 } B;
mbed_official 146:f64d43ff0c18 87 } hw_pdb_sc_t;
mbed_official 146:f64d43ff0c18 88 #endif
mbed_official 146:f64d43ff0c18 89
mbed_official 146:f64d43ff0c18 90 /*!
mbed_official 146:f64d43ff0c18 91 * @name Constants and macros for entire PDB_SC register
mbed_official 146:f64d43ff0c18 92 */
mbed_official 146:f64d43ff0c18 93 //@{
mbed_official 146:f64d43ff0c18 94 #define HW_PDB_SC_ADDR (REGS_PDB_BASE + 0x0U)
mbed_official 146:f64d43ff0c18 95
mbed_official 146:f64d43ff0c18 96 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 97 #define HW_PDB_SC (*(__IO hw_pdb_sc_t *) HW_PDB_SC_ADDR)
mbed_official 146:f64d43ff0c18 98 #define HW_PDB_SC_RD() (HW_PDB_SC.U)
mbed_official 146:f64d43ff0c18 99 #define HW_PDB_SC_WR(v) (HW_PDB_SC.U = (v))
mbed_official 146:f64d43ff0c18 100 #define HW_PDB_SC_SET(v) (HW_PDB_SC_WR(HW_PDB_SC_RD() | (v)))
mbed_official 146:f64d43ff0c18 101 #define HW_PDB_SC_CLR(v) (HW_PDB_SC_WR(HW_PDB_SC_RD() & ~(v)))
mbed_official 146:f64d43ff0c18 102 #define HW_PDB_SC_TOG(v) (HW_PDB_SC_WR(HW_PDB_SC_RD() ^ (v)))
mbed_official 146:f64d43ff0c18 103 #endif
mbed_official 146:f64d43ff0c18 104 //@}
mbed_official 146:f64d43ff0c18 105
mbed_official 146:f64d43ff0c18 106 /*
mbed_official 146:f64d43ff0c18 107 * Constants & macros for individual PDB_SC bitfields
mbed_official 146:f64d43ff0c18 108 */
mbed_official 146:f64d43ff0c18 109
mbed_official 146:f64d43ff0c18 110 /*!
mbed_official 146:f64d43ff0c18 111 * @name Register PDB_SC, field LDOK[0] (RW)
mbed_official 146:f64d43ff0c18 112 *
mbed_official 146:f64d43ff0c18 113 * Writing 1 to this bit updates the internal registers of MOD, IDLY, CHnDLYm,
mbed_official 146:f64d43ff0c18 114 * DACINTx,and POyDLY with the values written to their buffers. The MOD, IDLY,
mbed_official 146:f64d43ff0c18 115 * CHnDLYm, DACINTx, and POyDLY will take effect according to the LDMOD. After 1 is
mbed_official 146:f64d43ff0c18 116 * written to the LDOK field, the values in the buffers of above registers are
mbed_official 146:f64d43ff0c18 117 * not effective and the buffers cannot be written until the values in buffers are
mbed_official 146:f64d43ff0c18 118 * loaded into their internal registers. LDOK can be written only when PDBEN is
mbed_official 146:f64d43ff0c18 119 * set or it can be written at the same time with PDBEN being written to 1. It is
mbed_official 146:f64d43ff0c18 120 * automatically cleared when the values in buffers are loaded into the internal
mbed_official 146:f64d43ff0c18 121 * registers or the PDBEN is cleared. Writing 0 to it has no effect.
mbed_official 146:f64d43ff0c18 122 */
mbed_official 146:f64d43ff0c18 123 //@{
mbed_official 146:f64d43ff0c18 124 #define BP_PDB_SC_LDOK (0U) //!< Bit position for PDB_SC_LDOK.
mbed_official 146:f64d43ff0c18 125 #define BM_PDB_SC_LDOK (0x00000001U) //!< Bit mask for PDB_SC_LDOK.
mbed_official 146:f64d43ff0c18 126 #define BS_PDB_SC_LDOK (1U) //!< Bit field size in bits for PDB_SC_LDOK.
mbed_official 146:f64d43ff0c18 127
mbed_official 146:f64d43ff0c18 128 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 129 //! @brief Read current value of the PDB_SC_LDOK field.
mbed_official 146:f64d43ff0c18 130 #define BR_PDB_SC_LDOK (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_LDOK))
mbed_official 146:f64d43ff0c18 131 #endif
mbed_official 146:f64d43ff0c18 132
mbed_official 146:f64d43ff0c18 133 //! @brief Format value for bitfield PDB_SC_LDOK.
mbed_official 146:f64d43ff0c18 134 #define BF_PDB_SC_LDOK(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_LDOK), uint32_t) & BM_PDB_SC_LDOK)
mbed_official 146:f64d43ff0c18 135
mbed_official 146:f64d43ff0c18 136 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 137 //! @brief Set the LDOK field to a new value.
mbed_official 146:f64d43ff0c18 138 #define BW_PDB_SC_LDOK(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_LDOK) = (v))
mbed_official 146:f64d43ff0c18 139 #endif
mbed_official 146:f64d43ff0c18 140 //@}
mbed_official 146:f64d43ff0c18 141
mbed_official 146:f64d43ff0c18 142 /*!
mbed_official 146:f64d43ff0c18 143 * @name Register PDB_SC, field CONT[1] (RW)
mbed_official 146:f64d43ff0c18 144 *
mbed_official 146:f64d43ff0c18 145 * Enables the PDB operation in Continuous mode.
mbed_official 146:f64d43ff0c18 146 *
mbed_official 146:f64d43ff0c18 147 * Values:
mbed_official 146:f64d43ff0c18 148 * - 0 - PDB operation in One-Shot mode
mbed_official 146:f64d43ff0c18 149 * - 1 - PDB operation in Continuous mode
mbed_official 146:f64d43ff0c18 150 */
mbed_official 146:f64d43ff0c18 151 //@{
mbed_official 146:f64d43ff0c18 152 #define BP_PDB_SC_CONT (1U) //!< Bit position for PDB_SC_CONT.
mbed_official 146:f64d43ff0c18 153 #define BM_PDB_SC_CONT (0x00000002U) //!< Bit mask for PDB_SC_CONT.
mbed_official 146:f64d43ff0c18 154 #define BS_PDB_SC_CONT (1U) //!< Bit field size in bits for PDB_SC_CONT.
mbed_official 146:f64d43ff0c18 155
mbed_official 146:f64d43ff0c18 156 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 157 //! @brief Read current value of the PDB_SC_CONT field.
mbed_official 146:f64d43ff0c18 158 #define BR_PDB_SC_CONT (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_CONT))
mbed_official 146:f64d43ff0c18 159 #endif
mbed_official 146:f64d43ff0c18 160
mbed_official 146:f64d43ff0c18 161 //! @brief Format value for bitfield PDB_SC_CONT.
mbed_official 146:f64d43ff0c18 162 #define BF_PDB_SC_CONT(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_CONT), uint32_t) & BM_PDB_SC_CONT)
mbed_official 146:f64d43ff0c18 163
mbed_official 146:f64d43ff0c18 164 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 165 //! @brief Set the CONT field to a new value.
mbed_official 146:f64d43ff0c18 166 #define BW_PDB_SC_CONT(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_CONT) = (v))
mbed_official 146:f64d43ff0c18 167 #endif
mbed_official 146:f64d43ff0c18 168 //@}
mbed_official 146:f64d43ff0c18 169
mbed_official 146:f64d43ff0c18 170 /*!
mbed_official 146:f64d43ff0c18 171 * @name Register PDB_SC, field MULT[3:2] (RW)
mbed_official 146:f64d43ff0c18 172 *
mbed_official 146:f64d43ff0c18 173 * Selects the multiplication factor of the prescaler divider for the counter
mbed_official 146:f64d43ff0c18 174 * clock.
mbed_official 146:f64d43ff0c18 175 *
mbed_official 146:f64d43ff0c18 176 * Values:
mbed_official 146:f64d43ff0c18 177 * - 00 - Multiplication factor is 1.
mbed_official 146:f64d43ff0c18 178 * - 01 - Multiplication factor is 10.
mbed_official 146:f64d43ff0c18 179 * - 10 - Multiplication factor is 20.
mbed_official 146:f64d43ff0c18 180 * - 11 - Multiplication factor is 40.
mbed_official 146:f64d43ff0c18 181 */
mbed_official 146:f64d43ff0c18 182 //@{
mbed_official 146:f64d43ff0c18 183 #define BP_PDB_SC_MULT (2U) //!< Bit position for PDB_SC_MULT.
mbed_official 146:f64d43ff0c18 184 #define BM_PDB_SC_MULT (0x0000000CU) //!< Bit mask for PDB_SC_MULT.
mbed_official 146:f64d43ff0c18 185 #define BS_PDB_SC_MULT (2U) //!< Bit field size in bits for PDB_SC_MULT.
mbed_official 146:f64d43ff0c18 186
mbed_official 146:f64d43ff0c18 187 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 188 //! @brief Read current value of the PDB_SC_MULT field.
mbed_official 146:f64d43ff0c18 189 #define BR_PDB_SC_MULT (HW_PDB_SC.B.MULT)
mbed_official 146:f64d43ff0c18 190 #endif
mbed_official 146:f64d43ff0c18 191
mbed_official 146:f64d43ff0c18 192 //! @brief Format value for bitfield PDB_SC_MULT.
mbed_official 146:f64d43ff0c18 193 #define BF_PDB_SC_MULT(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_MULT), uint32_t) & BM_PDB_SC_MULT)
mbed_official 146:f64d43ff0c18 194
mbed_official 146:f64d43ff0c18 195 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 196 //! @brief Set the MULT field to a new value.
mbed_official 146:f64d43ff0c18 197 #define BW_PDB_SC_MULT(v) (HW_PDB_SC_WR((HW_PDB_SC_RD() & ~BM_PDB_SC_MULT) | BF_PDB_SC_MULT(v)))
mbed_official 146:f64d43ff0c18 198 #endif
mbed_official 146:f64d43ff0c18 199 //@}
mbed_official 146:f64d43ff0c18 200
mbed_official 146:f64d43ff0c18 201 /*!
mbed_official 146:f64d43ff0c18 202 * @name Register PDB_SC, field PDBIE[5] (RW)
mbed_official 146:f64d43ff0c18 203 *
mbed_official 146:f64d43ff0c18 204 * Enables the PDB interrupt. When this field is set and DMAEN is cleared, PDBIF
mbed_official 146:f64d43ff0c18 205 * generates a PDB interrupt.
mbed_official 146:f64d43ff0c18 206 *
mbed_official 146:f64d43ff0c18 207 * Values:
mbed_official 146:f64d43ff0c18 208 * - 0 - PDB interrupt disabled.
mbed_official 146:f64d43ff0c18 209 * - 1 - PDB interrupt enabled.
mbed_official 146:f64d43ff0c18 210 */
mbed_official 146:f64d43ff0c18 211 //@{
mbed_official 146:f64d43ff0c18 212 #define BP_PDB_SC_PDBIE (5U) //!< Bit position for PDB_SC_PDBIE.
mbed_official 146:f64d43ff0c18 213 #define BM_PDB_SC_PDBIE (0x00000020U) //!< Bit mask for PDB_SC_PDBIE.
mbed_official 146:f64d43ff0c18 214 #define BS_PDB_SC_PDBIE (1U) //!< Bit field size in bits for PDB_SC_PDBIE.
mbed_official 146:f64d43ff0c18 215
mbed_official 146:f64d43ff0c18 216 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 217 //! @brief Read current value of the PDB_SC_PDBIE field.
mbed_official 146:f64d43ff0c18 218 #define BR_PDB_SC_PDBIE (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBIE))
mbed_official 146:f64d43ff0c18 219 #endif
mbed_official 146:f64d43ff0c18 220
mbed_official 146:f64d43ff0c18 221 //! @brief Format value for bitfield PDB_SC_PDBIE.
mbed_official 146:f64d43ff0c18 222 #define BF_PDB_SC_PDBIE(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_PDBIE), uint32_t) & BM_PDB_SC_PDBIE)
mbed_official 146:f64d43ff0c18 223
mbed_official 146:f64d43ff0c18 224 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 225 //! @brief Set the PDBIE field to a new value.
mbed_official 146:f64d43ff0c18 226 #define BW_PDB_SC_PDBIE(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBIE) = (v))
mbed_official 146:f64d43ff0c18 227 #endif
mbed_official 146:f64d43ff0c18 228 //@}
mbed_official 146:f64d43ff0c18 229
mbed_official 146:f64d43ff0c18 230 /*!
mbed_official 146:f64d43ff0c18 231 * @name Register PDB_SC, field PDBIF[6] (RW)
mbed_official 146:f64d43ff0c18 232 *
mbed_official 146:f64d43ff0c18 233 * This field is set when the counter value is equal to the IDLY register.
mbed_official 146:f64d43ff0c18 234 * Writing zero clears this field.
mbed_official 146:f64d43ff0c18 235 */
mbed_official 146:f64d43ff0c18 236 //@{
mbed_official 146:f64d43ff0c18 237 #define BP_PDB_SC_PDBIF (6U) //!< Bit position for PDB_SC_PDBIF.
mbed_official 146:f64d43ff0c18 238 #define BM_PDB_SC_PDBIF (0x00000040U) //!< Bit mask for PDB_SC_PDBIF.
mbed_official 146:f64d43ff0c18 239 #define BS_PDB_SC_PDBIF (1U) //!< Bit field size in bits for PDB_SC_PDBIF.
mbed_official 146:f64d43ff0c18 240
mbed_official 146:f64d43ff0c18 241 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 242 //! @brief Read current value of the PDB_SC_PDBIF field.
mbed_official 146:f64d43ff0c18 243 #define BR_PDB_SC_PDBIF (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBIF))
mbed_official 146:f64d43ff0c18 244 #endif
mbed_official 146:f64d43ff0c18 245
mbed_official 146:f64d43ff0c18 246 //! @brief Format value for bitfield PDB_SC_PDBIF.
mbed_official 146:f64d43ff0c18 247 #define BF_PDB_SC_PDBIF(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_PDBIF), uint32_t) & BM_PDB_SC_PDBIF)
mbed_official 146:f64d43ff0c18 248
mbed_official 146:f64d43ff0c18 249 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 250 //! @brief Set the PDBIF field to a new value.
mbed_official 146:f64d43ff0c18 251 #define BW_PDB_SC_PDBIF(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBIF) = (v))
mbed_official 146:f64d43ff0c18 252 #endif
mbed_official 146:f64d43ff0c18 253 //@}
mbed_official 146:f64d43ff0c18 254
mbed_official 146:f64d43ff0c18 255 /*!
mbed_official 146:f64d43ff0c18 256 * @name Register PDB_SC, field PDBEN[7] (RW)
mbed_official 146:f64d43ff0c18 257 *
mbed_official 146:f64d43ff0c18 258 * Values:
mbed_official 146:f64d43ff0c18 259 * - 0 - PDB disabled. Counter is off.
mbed_official 146:f64d43ff0c18 260 * - 1 - PDB enabled.
mbed_official 146:f64d43ff0c18 261 */
mbed_official 146:f64d43ff0c18 262 //@{
mbed_official 146:f64d43ff0c18 263 #define BP_PDB_SC_PDBEN (7U) //!< Bit position for PDB_SC_PDBEN.
mbed_official 146:f64d43ff0c18 264 #define BM_PDB_SC_PDBEN (0x00000080U) //!< Bit mask for PDB_SC_PDBEN.
mbed_official 146:f64d43ff0c18 265 #define BS_PDB_SC_PDBEN (1U) //!< Bit field size in bits for PDB_SC_PDBEN.
mbed_official 146:f64d43ff0c18 266
mbed_official 146:f64d43ff0c18 267 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 268 //! @brief Read current value of the PDB_SC_PDBEN field.
mbed_official 146:f64d43ff0c18 269 #define BR_PDB_SC_PDBEN (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBEN))
mbed_official 146:f64d43ff0c18 270 #endif
mbed_official 146:f64d43ff0c18 271
mbed_official 146:f64d43ff0c18 272 //! @brief Format value for bitfield PDB_SC_PDBEN.
mbed_official 146:f64d43ff0c18 273 #define BF_PDB_SC_PDBEN(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_PDBEN), uint32_t) & BM_PDB_SC_PDBEN)
mbed_official 146:f64d43ff0c18 274
mbed_official 146:f64d43ff0c18 275 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 276 //! @brief Set the PDBEN field to a new value.
mbed_official 146:f64d43ff0c18 277 #define BW_PDB_SC_PDBEN(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBEN) = (v))
mbed_official 146:f64d43ff0c18 278 #endif
mbed_official 146:f64d43ff0c18 279 //@}
mbed_official 146:f64d43ff0c18 280
mbed_official 146:f64d43ff0c18 281 /*!
mbed_official 146:f64d43ff0c18 282 * @name Register PDB_SC, field TRGSEL[11:8] (RW)
mbed_official 146:f64d43ff0c18 283 *
mbed_official 146:f64d43ff0c18 284 * Selects the trigger input source for the PDB. The trigger input source can be
mbed_official 146:f64d43ff0c18 285 * internal or external (EXTRG pin), or the software trigger. Refer to chip
mbed_official 146:f64d43ff0c18 286 * configuration details for the actual PDB input trigger connections.
mbed_official 146:f64d43ff0c18 287 *
mbed_official 146:f64d43ff0c18 288 * Values:
mbed_official 146:f64d43ff0c18 289 * - 0000 - Trigger-In 0 is selected.
mbed_official 146:f64d43ff0c18 290 * - 0001 - Trigger-In 1 is selected.
mbed_official 146:f64d43ff0c18 291 * - 0010 - Trigger-In 2 is selected.
mbed_official 146:f64d43ff0c18 292 * - 0011 - Trigger-In 3 is selected.
mbed_official 146:f64d43ff0c18 293 * - 0100 - Trigger-In 4 is selected.
mbed_official 146:f64d43ff0c18 294 * - 0101 - Trigger-In 5 is selected.
mbed_official 146:f64d43ff0c18 295 * - 0110 - Trigger-In 6 is selected.
mbed_official 146:f64d43ff0c18 296 * - 0111 - Trigger-In 7 is selected.
mbed_official 146:f64d43ff0c18 297 * - 1000 - Trigger-In 8 is selected.
mbed_official 146:f64d43ff0c18 298 * - 1001 - Trigger-In 9 is selected.
mbed_official 146:f64d43ff0c18 299 * - 1010 - Trigger-In 10 is selected.
mbed_official 146:f64d43ff0c18 300 * - 1011 - Trigger-In 11 is selected.
mbed_official 146:f64d43ff0c18 301 * - 1100 - Trigger-In 12 is selected.
mbed_official 146:f64d43ff0c18 302 * - 1101 - Trigger-In 13 is selected.
mbed_official 146:f64d43ff0c18 303 * - 1110 - Trigger-In 14 is selected.
mbed_official 146:f64d43ff0c18 304 * - 1111 - Software trigger is selected.
mbed_official 146:f64d43ff0c18 305 */
mbed_official 146:f64d43ff0c18 306 //@{
mbed_official 146:f64d43ff0c18 307 #define BP_PDB_SC_TRGSEL (8U) //!< Bit position for PDB_SC_TRGSEL.
mbed_official 146:f64d43ff0c18 308 #define BM_PDB_SC_TRGSEL (0x00000F00U) //!< Bit mask for PDB_SC_TRGSEL.
mbed_official 146:f64d43ff0c18 309 #define BS_PDB_SC_TRGSEL (4U) //!< Bit field size in bits for PDB_SC_TRGSEL.
mbed_official 146:f64d43ff0c18 310
mbed_official 146:f64d43ff0c18 311 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 312 //! @brief Read current value of the PDB_SC_TRGSEL field.
mbed_official 146:f64d43ff0c18 313 #define BR_PDB_SC_TRGSEL (HW_PDB_SC.B.TRGSEL)
mbed_official 146:f64d43ff0c18 314 #endif
mbed_official 146:f64d43ff0c18 315
mbed_official 146:f64d43ff0c18 316 //! @brief Format value for bitfield PDB_SC_TRGSEL.
mbed_official 146:f64d43ff0c18 317 #define BF_PDB_SC_TRGSEL(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_TRGSEL), uint32_t) & BM_PDB_SC_TRGSEL)
mbed_official 146:f64d43ff0c18 318
mbed_official 146:f64d43ff0c18 319 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 320 //! @brief Set the TRGSEL field to a new value.
mbed_official 146:f64d43ff0c18 321 #define BW_PDB_SC_TRGSEL(v) (HW_PDB_SC_WR((HW_PDB_SC_RD() & ~BM_PDB_SC_TRGSEL) | BF_PDB_SC_TRGSEL(v)))
mbed_official 146:f64d43ff0c18 322 #endif
mbed_official 146:f64d43ff0c18 323 //@}
mbed_official 146:f64d43ff0c18 324
mbed_official 146:f64d43ff0c18 325 /*!
mbed_official 146:f64d43ff0c18 326 * @name Register PDB_SC, field PRESCALER[14:12] (RW)
mbed_official 146:f64d43ff0c18 327 *
mbed_official 146:f64d43ff0c18 328 * Values:
mbed_official 146:f64d43ff0c18 329 * - 000 - Counting uses the peripheral clock divided by multiplication factor
mbed_official 146:f64d43ff0c18 330 * selected by MULT.
mbed_official 146:f64d43ff0c18 331 * - 001 - Counting uses the peripheral clock divided by twice of the
mbed_official 146:f64d43ff0c18 332 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 333 * - 010 - Counting uses the peripheral clock divided by four times of the
mbed_official 146:f64d43ff0c18 334 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 335 * - 011 - Counting uses the peripheral clock divided by eight times of the
mbed_official 146:f64d43ff0c18 336 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 337 * - 100 - Counting uses the peripheral clock divided by 16 times of the
mbed_official 146:f64d43ff0c18 338 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 339 * - 101 - Counting uses the peripheral clock divided by 32 times of the
mbed_official 146:f64d43ff0c18 340 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 341 * - 110 - Counting uses the peripheral clock divided by 64 times of the
mbed_official 146:f64d43ff0c18 342 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 343 * - 111 - Counting uses the peripheral clock divided by 128 times of the
mbed_official 146:f64d43ff0c18 344 * multiplication factor selected by MULT.
mbed_official 146:f64d43ff0c18 345 */
mbed_official 146:f64d43ff0c18 346 //@{
mbed_official 146:f64d43ff0c18 347 #define BP_PDB_SC_PRESCALER (12U) //!< Bit position for PDB_SC_PRESCALER.
mbed_official 146:f64d43ff0c18 348 #define BM_PDB_SC_PRESCALER (0x00007000U) //!< Bit mask for PDB_SC_PRESCALER.
mbed_official 146:f64d43ff0c18 349 #define BS_PDB_SC_PRESCALER (3U) //!< Bit field size in bits for PDB_SC_PRESCALER.
mbed_official 146:f64d43ff0c18 350
mbed_official 146:f64d43ff0c18 351 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 352 //! @brief Read current value of the PDB_SC_PRESCALER field.
mbed_official 146:f64d43ff0c18 353 #define BR_PDB_SC_PRESCALER (HW_PDB_SC.B.PRESCALER)
mbed_official 146:f64d43ff0c18 354 #endif
mbed_official 146:f64d43ff0c18 355
mbed_official 146:f64d43ff0c18 356 //! @brief Format value for bitfield PDB_SC_PRESCALER.
mbed_official 146:f64d43ff0c18 357 #define BF_PDB_SC_PRESCALER(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_PRESCALER), uint32_t) & BM_PDB_SC_PRESCALER)
mbed_official 146:f64d43ff0c18 358
mbed_official 146:f64d43ff0c18 359 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 360 //! @brief Set the PRESCALER field to a new value.
mbed_official 146:f64d43ff0c18 361 #define BW_PDB_SC_PRESCALER(v) (HW_PDB_SC_WR((HW_PDB_SC_RD() & ~BM_PDB_SC_PRESCALER) | BF_PDB_SC_PRESCALER(v)))
mbed_official 146:f64d43ff0c18 362 #endif
mbed_official 146:f64d43ff0c18 363 //@}
mbed_official 146:f64d43ff0c18 364
mbed_official 146:f64d43ff0c18 365 /*!
mbed_official 146:f64d43ff0c18 366 * @name Register PDB_SC, field DMAEN[15] (RW)
mbed_official 146:f64d43ff0c18 367 *
mbed_official 146:f64d43ff0c18 368 * When DMA is enabled, the PDBIF flag generates a DMA request instead of an
mbed_official 146:f64d43ff0c18 369 * interrupt.
mbed_official 146:f64d43ff0c18 370 *
mbed_official 146:f64d43ff0c18 371 * Values:
mbed_official 146:f64d43ff0c18 372 * - 0 - DMA disabled.
mbed_official 146:f64d43ff0c18 373 * - 1 - DMA enabled.
mbed_official 146:f64d43ff0c18 374 */
mbed_official 146:f64d43ff0c18 375 //@{
mbed_official 146:f64d43ff0c18 376 #define BP_PDB_SC_DMAEN (15U) //!< Bit position for PDB_SC_DMAEN.
mbed_official 146:f64d43ff0c18 377 #define BM_PDB_SC_DMAEN (0x00008000U) //!< Bit mask for PDB_SC_DMAEN.
mbed_official 146:f64d43ff0c18 378 #define BS_PDB_SC_DMAEN (1U) //!< Bit field size in bits for PDB_SC_DMAEN.
mbed_official 146:f64d43ff0c18 379
mbed_official 146:f64d43ff0c18 380 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 381 //! @brief Read current value of the PDB_SC_DMAEN field.
mbed_official 146:f64d43ff0c18 382 #define BR_PDB_SC_DMAEN (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_DMAEN))
mbed_official 146:f64d43ff0c18 383 #endif
mbed_official 146:f64d43ff0c18 384
mbed_official 146:f64d43ff0c18 385 //! @brief Format value for bitfield PDB_SC_DMAEN.
mbed_official 146:f64d43ff0c18 386 #define BF_PDB_SC_DMAEN(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_DMAEN), uint32_t) & BM_PDB_SC_DMAEN)
mbed_official 146:f64d43ff0c18 387
mbed_official 146:f64d43ff0c18 388 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 389 //! @brief Set the DMAEN field to a new value.
mbed_official 146:f64d43ff0c18 390 #define BW_PDB_SC_DMAEN(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_DMAEN) = (v))
mbed_official 146:f64d43ff0c18 391 #endif
mbed_official 146:f64d43ff0c18 392 //@}
mbed_official 146:f64d43ff0c18 393
mbed_official 146:f64d43ff0c18 394 /*!
mbed_official 146:f64d43ff0c18 395 * @name Register PDB_SC, field SWTRIG[16] (WORZ)
mbed_official 146:f64d43ff0c18 396 *
mbed_official 146:f64d43ff0c18 397 * When PDB is enabled and the software trigger is selected as the trigger input
mbed_official 146:f64d43ff0c18 398 * source, writing 1 to this field resets and restarts the counter. Writing 0 to
mbed_official 146:f64d43ff0c18 399 * this field has no effect. Reading this field results 0.
mbed_official 146:f64d43ff0c18 400 */
mbed_official 146:f64d43ff0c18 401 //@{
mbed_official 146:f64d43ff0c18 402 #define BP_PDB_SC_SWTRIG (16U) //!< Bit position for PDB_SC_SWTRIG.
mbed_official 146:f64d43ff0c18 403 #define BM_PDB_SC_SWTRIG (0x00010000U) //!< Bit mask for PDB_SC_SWTRIG.
mbed_official 146:f64d43ff0c18 404 #define BS_PDB_SC_SWTRIG (1U) //!< Bit field size in bits for PDB_SC_SWTRIG.
mbed_official 146:f64d43ff0c18 405
mbed_official 146:f64d43ff0c18 406 //! @brief Format value for bitfield PDB_SC_SWTRIG.
mbed_official 146:f64d43ff0c18 407 #define BF_PDB_SC_SWTRIG(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_SWTRIG), uint32_t) & BM_PDB_SC_SWTRIG)
mbed_official 146:f64d43ff0c18 408
mbed_official 146:f64d43ff0c18 409 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 410 //! @brief Set the SWTRIG field to a new value.
mbed_official 146:f64d43ff0c18 411 #define BW_PDB_SC_SWTRIG(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_SWTRIG) = (v))
mbed_official 146:f64d43ff0c18 412 #endif
mbed_official 146:f64d43ff0c18 413 //@}
mbed_official 146:f64d43ff0c18 414
mbed_official 146:f64d43ff0c18 415 /*!
mbed_official 146:f64d43ff0c18 416 * @name Register PDB_SC, field PDBEIE[17] (RW)
mbed_official 146:f64d43ff0c18 417 *
mbed_official 146:f64d43ff0c18 418 * Enables the PDB sequence error interrupt. When this field is set, any of the
mbed_official 146:f64d43ff0c18 419 * PDB channel sequence error flags generates a PDB sequence error interrupt.
mbed_official 146:f64d43ff0c18 420 *
mbed_official 146:f64d43ff0c18 421 * Values:
mbed_official 146:f64d43ff0c18 422 * - 0 - PDB sequence error interrupt disabled.
mbed_official 146:f64d43ff0c18 423 * - 1 - PDB sequence error interrupt enabled.
mbed_official 146:f64d43ff0c18 424 */
mbed_official 146:f64d43ff0c18 425 //@{
mbed_official 146:f64d43ff0c18 426 #define BP_PDB_SC_PDBEIE (17U) //!< Bit position for PDB_SC_PDBEIE.
mbed_official 146:f64d43ff0c18 427 #define BM_PDB_SC_PDBEIE (0x00020000U) //!< Bit mask for PDB_SC_PDBEIE.
mbed_official 146:f64d43ff0c18 428 #define BS_PDB_SC_PDBEIE (1U) //!< Bit field size in bits for PDB_SC_PDBEIE.
mbed_official 146:f64d43ff0c18 429
mbed_official 146:f64d43ff0c18 430 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 431 //! @brief Read current value of the PDB_SC_PDBEIE field.
mbed_official 146:f64d43ff0c18 432 #define BR_PDB_SC_PDBEIE (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBEIE))
mbed_official 146:f64d43ff0c18 433 #endif
mbed_official 146:f64d43ff0c18 434
mbed_official 146:f64d43ff0c18 435 //! @brief Format value for bitfield PDB_SC_PDBEIE.
mbed_official 146:f64d43ff0c18 436 #define BF_PDB_SC_PDBEIE(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_PDBEIE), uint32_t) & BM_PDB_SC_PDBEIE)
mbed_official 146:f64d43ff0c18 437
mbed_official 146:f64d43ff0c18 438 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 439 //! @brief Set the PDBEIE field to a new value.
mbed_official 146:f64d43ff0c18 440 #define BW_PDB_SC_PDBEIE(v) (BITBAND_ACCESS32(HW_PDB_SC_ADDR, BP_PDB_SC_PDBEIE) = (v))
mbed_official 146:f64d43ff0c18 441 #endif
mbed_official 146:f64d43ff0c18 442 //@}
mbed_official 146:f64d43ff0c18 443
mbed_official 146:f64d43ff0c18 444 /*!
mbed_official 146:f64d43ff0c18 445 * @name Register PDB_SC, field LDMOD[19:18] (RW)
mbed_official 146:f64d43ff0c18 446 *
mbed_official 146:f64d43ff0c18 447 * Selects the mode to load the MOD, IDLY, CHnDLYm, INTx, and POyDLY registers,
mbed_official 146:f64d43ff0c18 448 * after 1 is written to LDOK.
mbed_official 146:f64d43ff0c18 449 *
mbed_official 146:f64d43ff0c18 450 * Values:
mbed_official 146:f64d43ff0c18 451 * - 00 - The internal registers are loaded with the values from their buffers
mbed_official 146:f64d43ff0c18 452 * immediately after 1 is written to LDOK.
mbed_official 146:f64d43ff0c18 453 * - 01 - The internal registers are loaded with the values from their buffers
mbed_official 146:f64d43ff0c18 454 * when the PDB counter reaches the MOD register value after 1 is written to
mbed_official 146:f64d43ff0c18 455 * LDOK.
mbed_official 146:f64d43ff0c18 456 * - 10 - The internal registers are loaded with the values from their buffers
mbed_official 146:f64d43ff0c18 457 * when a trigger input event is detected after 1 is written to LDOK.
mbed_official 146:f64d43ff0c18 458 * - 11 - The internal registers are loaded with the values from their buffers
mbed_official 146:f64d43ff0c18 459 * when either the PDB counter reaches the MOD register value or a trigger
mbed_official 146:f64d43ff0c18 460 * input event is detected, after 1 is written to LDOK.
mbed_official 146:f64d43ff0c18 461 */
mbed_official 146:f64d43ff0c18 462 //@{
mbed_official 146:f64d43ff0c18 463 #define BP_PDB_SC_LDMOD (18U) //!< Bit position for PDB_SC_LDMOD.
mbed_official 146:f64d43ff0c18 464 #define BM_PDB_SC_LDMOD (0x000C0000U) //!< Bit mask for PDB_SC_LDMOD.
mbed_official 146:f64d43ff0c18 465 #define BS_PDB_SC_LDMOD (2U) //!< Bit field size in bits for PDB_SC_LDMOD.
mbed_official 146:f64d43ff0c18 466
mbed_official 146:f64d43ff0c18 467 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 468 //! @brief Read current value of the PDB_SC_LDMOD field.
mbed_official 146:f64d43ff0c18 469 #define BR_PDB_SC_LDMOD (HW_PDB_SC.B.LDMOD)
mbed_official 146:f64d43ff0c18 470 #endif
mbed_official 146:f64d43ff0c18 471
mbed_official 146:f64d43ff0c18 472 //! @brief Format value for bitfield PDB_SC_LDMOD.
mbed_official 146:f64d43ff0c18 473 #define BF_PDB_SC_LDMOD(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_SC_LDMOD), uint32_t) & BM_PDB_SC_LDMOD)
mbed_official 146:f64d43ff0c18 474
mbed_official 146:f64d43ff0c18 475 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 476 //! @brief Set the LDMOD field to a new value.
mbed_official 146:f64d43ff0c18 477 #define BW_PDB_SC_LDMOD(v) (HW_PDB_SC_WR((HW_PDB_SC_RD() & ~BM_PDB_SC_LDMOD) | BF_PDB_SC_LDMOD(v)))
mbed_official 146:f64d43ff0c18 478 #endif
mbed_official 146:f64d43ff0c18 479 //@}
mbed_official 146:f64d43ff0c18 480
mbed_official 146:f64d43ff0c18 481 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 482 // HW_PDB_MOD - Modulus register
mbed_official 146:f64d43ff0c18 483 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 484
mbed_official 146:f64d43ff0c18 485 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 486 /*!
mbed_official 146:f64d43ff0c18 487 * @brief HW_PDB_MOD - Modulus register (RW)
mbed_official 146:f64d43ff0c18 488 *
mbed_official 146:f64d43ff0c18 489 * Reset value: 0x0000FFFFU
mbed_official 146:f64d43ff0c18 490 */
mbed_official 146:f64d43ff0c18 491 typedef union _hw_pdb_mod
mbed_official 146:f64d43ff0c18 492 {
mbed_official 146:f64d43ff0c18 493 uint32_t U;
mbed_official 146:f64d43ff0c18 494 struct _hw_pdb_mod_bitfields
mbed_official 146:f64d43ff0c18 495 {
mbed_official 146:f64d43ff0c18 496 uint32_t MOD : 16; //!< [15:0] PDB Modulus
mbed_official 146:f64d43ff0c18 497 uint32_t RESERVED0 : 16; //!< [31:16]
mbed_official 146:f64d43ff0c18 498 } B;
mbed_official 146:f64d43ff0c18 499 } hw_pdb_mod_t;
mbed_official 146:f64d43ff0c18 500 #endif
mbed_official 146:f64d43ff0c18 501
mbed_official 146:f64d43ff0c18 502 /*!
mbed_official 146:f64d43ff0c18 503 * @name Constants and macros for entire PDB_MOD register
mbed_official 146:f64d43ff0c18 504 */
mbed_official 146:f64d43ff0c18 505 //@{
mbed_official 146:f64d43ff0c18 506 #define HW_PDB_MOD_ADDR (REGS_PDB_BASE + 0x4U)
mbed_official 146:f64d43ff0c18 507
mbed_official 146:f64d43ff0c18 508 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 509 #define HW_PDB_MOD (*(__IO hw_pdb_mod_t *) HW_PDB_MOD_ADDR)
mbed_official 146:f64d43ff0c18 510 #define HW_PDB_MOD_RD() (HW_PDB_MOD.U)
mbed_official 146:f64d43ff0c18 511 #define HW_PDB_MOD_WR(v) (HW_PDB_MOD.U = (v))
mbed_official 146:f64d43ff0c18 512 #define HW_PDB_MOD_SET(v) (HW_PDB_MOD_WR(HW_PDB_MOD_RD() | (v)))
mbed_official 146:f64d43ff0c18 513 #define HW_PDB_MOD_CLR(v) (HW_PDB_MOD_WR(HW_PDB_MOD_RD() & ~(v)))
mbed_official 146:f64d43ff0c18 514 #define HW_PDB_MOD_TOG(v) (HW_PDB_MOD_WR(HW_PDB_MOD_RD() ^ (v)))
mbed_official 146:f64d43ff0c18 515 #endif
mbed_official 146:f64d43ff0c18 516 //@}
mbed_official 146:f64d43ff0c18 517
mbed_official 146:f64d43ff0c18 518 /*
mbed_official 146:f64d43ff0c18 519 * Constants & macros for individual PDB_MOD bitfields
mbed_official 146:f64d43ff0c18 520 */
mbed_official 146:f64d43ff0c18 521
mbed_official 146:f64d43ff0c18 522 /*!
mbed_official 146:f64d43ff0c18 523 * @name Register PDB_MOD, field MOD[15:0] (RW)
mbed_official 146:f64d43ff0c18 524 *
mbed_official 146:f64d43ff0c18 525 * Specifies the period of the counter. When the counter reaches this value, it
mbed_official 146:f64d43ff0c18 526 * will be reset back to zero. If the PDB is in Continuous mode, the count begins
mbed_official 146:f64d43ff0c18 527 * anew. Reading this field returns the value of the internal register that is
mbed_official 146:f64d43ff0c18 528 * effective for the current cycle of PDB.
mbed_official 146:f64d43ff0c18 529 */
mbed_official 146:f64d43ff0c18 530 //@{
mbed_official 146:f64d43ff0c18 531 #define BP_PDB_MOD_MOD (0U) //!< Bit position for PDB_MOD_MOD.
mbed_official 146:f64d43ff0c18 532 #define BM_PDB_MOD_MOD (0x0000FFFFU) //!< Bit mask for PDB_MOD_MOD.
mbed_official 146:f64d43ff0c18 533 #define BS_PDB_MOD_MOD (16U) //!< Bit field size in bits for PDB_MOD_MOD.
mbed_official 146:f64d43ff0c18 534
mbed_official 146:f64d43ff0c18 535 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 536 //! @brief Read current value of the PDB_MOD_MOD field.
mbed_official 146:f64d43ff0c18 537 #define BR_PDB_MOD_MOD (HW_PDB_MOD.B.MOD)
mbed_official 146:f64d43ff0c18 538 #endif
mbed_official 146:f64d43ff0c18 539
mbed_official 146:f64d43ff0c18 540 //! @brief Format value for bitfield PDB_MOD_MOD.
mbed_official 146:f64d43ff0c18 541 #define BF_PDB_MOD_MOD(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_MOD_MOD), uint32_t) & BM_PDB_MOD_MOD)
mbed_official 146:f64d43ff0c18 542
mbed_official 146:f64d43ff0c18 543 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 544 //! @brief Set the MOD field to a new value.
mbed_official 146:f64d43ff0c18 545 #define BW_PDB_MOD_MOD(v) (HW_PDB_MOD_WR((HW_PDB_MOD_RD() & ~BM_PDB_MOD_MOD) | BF_PDB_MOD_MOD(v)))
mbed_official 146:f64d43ff0c18 546 #endif
mbed_official 146:f64d43ff0c18 547 //@}
mbed_official 146:f64d43ff0c18 548
mbed_official 146:f64d43ff0c18 549 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 550 // HW_PDB_CNT - Counter register
mbed_official 146:f64d43ff0c18 551 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 552
mbed_official 146:f64d43ff0c18 553 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 554 /*!
mbed_official 146:f64d43ff0c18 555 * @brief HW_PDB_CNT - Counter register (RO)
mbed_official 146:f64d43ff0c18 556 *
mbed_official 146:f64d43ff0c18 557 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 558 */
mbed_official 146:f64d43ff0c18 559 typedef union _hw_pdb_cnt
mbed_official 146:f64d43ff0c18 560 {
mbed_official 146:f64d43ff0c18 561 uint32_t U;
mbed_official 146:f64d43ff0c18 562 struct _hw_pdb_cnt_bitfields
mbed_official 146:f64d43ff0c18 563 {
mbed_official 146:f64d43ff0c18 564 uint32_t CNT : 16; //!< [15:0] PDB Counter
mbed_official 146:f64d43ff0c18 565 uint32_t RESERVED0 : 16; //!< [31:16]
mbed_official 146:f64d43ff0c18 566 } B;
mbed_official 146:f64d43ff0c18 567 } hw_pdb_cnt_t;
mbed_official 146:f64d43ff0c18 568 #endif
mbed_official 146:f64d43ff0c18 569
mbed_official 146:f64d43ff0c18 570 /*!
mbed_official 146:f64d43ff0c18 571 * @name Constants and macros for entire PDB_CNT register
mbed_official 146:f64d43ff0c18 572 */
mbed_official 146:f64d43ff0c18 573 //@{
mbed_official 146:f64d43ff0c18 574 #define HW_PDB_CNT_ADDR (REGS_PDB_BASE + 0x8U)
mbed_official 146:f64d43ff0c18 575
mbed_official 146:f64d43ff0c18 576 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 577 #define HW_PDB_CNT (*(__I hw_pdb_cnt_t *) HW_PDB_CNT_ADDR)
mbed_official 146:f64d43ff0c18 578 #define HW_PDB_CNT_RD() (HW_PDB_CNT.U)
mbed_official 146:f64d43ff0c18 579 #endif
mbed_official 146:f64d43ff0c18 580 //@}
mbed_official 146:f64d43ff0c18 581
mbed_official 146:f64d43ff0c18 582 /*
mbed_official 146:f64d43ff0c18 583 * Constants & macros for individual PDB_CNT bitfields
mbed_official 146:f64d43ff0c18 584 */
mbed_official 146:f64d43ff0c18 585
mbed_official 146:f64d43ff0c18 586 /*!
mbed_official 146:f64d43ff0c18 587 * @name Register PDB_CNT, field CNT[15:0] (RO)
mbed_official 146:f64d43ff0c18 588 *
mbed_official 146:f64d43ff0c18 589 * Contains the current value of the counter.
mbed_official 146:f64d43ff0c18 590 */
mbed_official 146:f64d43ff0c18 591 //@{
mbed_official 146:f64d43ff0c18 592 #define BP_PDB_CNT_CNT (0U) //!< Bit position for PDB_CNT_CNT.
mbed_official 146:f64d43ff0c18 593 #define BM_PDB_CNT_CNT (0x0000FFFFU) //!< Bit mask for PDB_CNT_CNT.
mbed_official 146:f64d43ff0c18 594 #define BS_PDB_CNT_CNT (16U) //!< Bit field size in bits for PDB_CNT_CNT.
mbed_official 146:f64d43ff0c18 595
mbed_official 146:f64d43ff0c18 596 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 597 //! @brief Read current value of the PDB_CNT_CNT field.
mbed_official 146:f64d43ff0c18 598 #define BR_PDB_CNT_CNT (HW_PDB_CNT.B.CNT)
mbed_official 146:f64d43ff0c18 599 #endif
mbed_official 146:f64d43ff0c18 600 //@}
mbed_official 146:f64d43ff0c18 601
mbed_official 146:f64d43ff0c18 602 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 603 // HW_PDB_IDLY - Interrupt Delay register
mbed_official 146:f64d43ff0c18 604 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 605
mbed_official 146:f64d43ff0c18 606 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 607 /*!
mbed_official 146:f64d43ff0c18 608 * @brief HW_PDB_IDLY - Interrupt Delay register (RW)
mbed_official 146:f64d43ff0c18 609 *
mbed_official 146:f64d43ff0c18 610 * Reset value: 0x0000FFFFU
mbed_official 146:f64d43ff0c18 611 */
mbed_official 146:f64d43ff0c18 612 typedef union _hw_pdb_idly
mbed_official 146:f64d43ff0c18 613 {
mbed_official 146:f64d43ff0c18 614 uint32_t U;
mbed_official 146:f64d43ff0c18 615 struct _hw_pdb_idly_bitfields
mbed_official 146:f64d43ff0c18 616 {
mbed_official 146:f64d43ff0c18 617 uint32_t IDLY : 16; //!< [15:0] PDB Interrupt Delay
mbed_official 146:f64d43ff0c18 618 uint32_t RESERVED0 : 16; //!< [31:16]
mbed_official 146:f64d43ff0c18 619 } B;
mbed_official 146:f64d43ff0c18 620 } hw_pdb_idly_t;
mbed_official 146:f64d43ff0c18 621 #endif
mbed_official 146:f64d43ff0c18 622
mbed_official 146:f64d43ff0c18 623 /*!
mbed_official 146:f64d43ff0c18 624 * @name Constants and macros for entire PDB_IDLY register
mbed_official 146:f64d43ff0c18 625 */
mbed_official 146:f64d43ff0c18 626 //@{
mbed_official 146:f64d43ff0c18 627 #define HW_PDB_IDLY_ADDR (REGS_PDB_BASE + 0xCU)
mbed_official 146:f64d43ff0c18 628
mbed_official 146:f64d43ff0c18 629 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 630 #define HW_PDB_IDLY (*(__IO hw_pdb_idly_t *) HW_PDB_IDLY_ADDR)
mbed_official 146:f64d43ff0c18 631 #define HW_PDB_IDLY_RD() (HW_PDB_IDLY.U)
mbed_official 146:f64d43ff0c18 632 #define HW_PDB_IDLY_WR(v) (HW_PDB_IDLY.U = (v))
mbed_official 146:f64d43ff0c18 633 #define HW_PDB_IDLY_SET(v) (HW_PDB_IDLY_WR(HW_PDB_IDLY_RD() | (v)))
mbed_official 146:f64d43ff0c18 634 #define HW_PDB_IDLY_CLR(v) (HW_PDB_IDLY_WR(HW_PDB_IDLY_RD() & ~(v)))
mbed_official 146:f64d43ff0c18 635 #define HW_PDB_IDLY_TOG(v) (HW_PDB_IDLY_WR(HW_PDB_IDLY_RD() ^ (v)))
mbed_official 146:f64d43ff0c18 636 #endif
mbed_official 146:f64d43ff0c18 637 //@}
mbed_official 146:f64d43ff0c18 638
mbed_official 146:f64d43ff0c18 639 /*
mbed_official 146:f64d43ff0c18 640 * Constants & macros for individual PDB_IDLY bitfields
mbed_official 146:f64d43ff0c18 641 */
mbed_official 146:f64d43ff0c18 642
mbed_official 146:f64d43ff0c18 643 /*!
mbed_official 146:f64d43ff0c18 644 * @name Register PDB_IDLY, field IDLY[15:0] (RW)
mbed_official 146:f64d43ff0c18 645 *
mbed_official 146:f64d43ff0c18 646 * Specifies the delay value to schedule the PDB interrupt. It can be used to
mbed_official 146:f64d43ff0c18 647 * schedule an independent interrupt at some point in the PDB cycle. If enabled, a
mbed_official 146:f64d43ff0c18 648 * PDB interrupt is generated, when the counter is equal to the IDLY. Reading
mbed_official 146:f64d43ff0c18 649 * this field returns the value of internal register that is effective for the
mbed_official 146:f64d43ff0c18 650 * current cycle of the PDB.
mbed_official 146:f64d43ff0c18 651 */
mbed_official 146:f64d43ff0c18 652 //@{
mbed_official 146:f64d43ff0c18 653 #define BP_PDB_IDLY_IDLY (0U) //!< Bit position for PDB_IDLY_IDLY.
mbed_official 146:f64d43ff0c18 654 #define BM_PDB_IDLY_IDLY (0x0000FFFFU) //!< Bit mask for PDB_IDLY_IDLY.
mbed_official 146:f64d43ff0c18 655 #define BS_PDB_IDLY_IDLY (16U) //!< Bit field size in bits for PDB_IDLY_IDLY.
mbed_official 146:f64d43ff0c18 656
mbed_official 146:f64d43ff0c18 657 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 658 //! @brief Read current value of the PDB_IDLY_IDLY field.
mbed_official 146:f64d43ff0c18 659 #define BR_PDB_IDLY_IDLY (HW_PDB_IDLY.B.IDLY)
mbed_official 146:f64d43ff0c18 660 #endif
mbed_official 146:f64d43ff0c18 661
mbed_official 146:f64d43ff0c18 662 //! @brief Format value for bitfield PDB_IDLY_IDLY.
mbed_official 146:f64d43ff0c18 663 #define BF_PDB_IDLY_IDLY(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_IDLY_IDLY), uint32_t) & BM_PDB_IDLY_IDLY)
mbed_official 146:f64d43ff0c18 664
mbed_official 146:f64d43ff0c18 665 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 666 //! @brief Set the IDLY field to a new value.
mbed_official 146:f64d43ff0c18 667 #define BW_PDB_IDLY_IDLY(v) (HW_PDB_IDLY_WR((HW_PDB_IDLY_RD() & ~BM_PDB_IDLY_IDLY) | BF_PDB_IDLY_IDLY(v)))
mbed_official 146:f64d43ff0c18 668 #endif
mbed_official 146:f64d43ff0c18 669 //@}
mbed_official 146:f64d43ff0c18 670
mbed_official 146:f64d43ff0c18 671 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 672 // HW_PDB_CHnC1 - Channel n Control register 1
mbed_official 146:f64d43ff0c18 673 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 674
mbed_official 146:f64d43ff0c18 675 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 676 /*!
mbed_official 146:f64d43ff0c18 677 * @brief HW_PDB_CHnC1 - Channel n Control register 1 (RW)
mbed_official 146:f64d43ff0c18 678 *
mbed_official 146:f64d43ff0c18 679 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 680 *
mbed_official 146:f64d43ff0c18 681 * Each PDB channel has one control register, CHnC1. The bits in this register
mbed_official 146:f64d43ff0c18 682 * control the functionality of each PDB channel operation.
mbed_official 146:f64d43ff0c18 683 */
mbed_official 146:f64d43ff0c18 684 typedef union _hw_pdb_chnc1
mbed_official 146:f64d43ff0c18 685 {
mbed_official 146:f64d43ff0c18 686 uint32_t U;
mbed_official 146:f64d43ff0c18 687 struct _hw_pdb_chnc1_bitfields
mbed_official 146:f64d43ff0c18 688 {
mbed_official 146:f64d43ff0c18 689 uint32_t EN : 8; //!< [7:0] PDB Channel Pre-Trigger Enable
mbed_official 146:f64d43ff0c18 690 uint32_t TOS : 8; //!< [15:8] PDB Channel Pre-Trigger Output Select
mbed_official 146:f64d43ff0c18 691 uint32_t BB : 8; //!< [23:16] PDB Channel Pre-Trigger Back-to-Back
mbed_official 146:f64d43ff0c18 692 //! Operation Enable
mbed_official 146:f64d43ff0c18 693 uint32_t RESERVED0 : 8; //!< [31:24]
mbed_official 146:f64d43ff0c18 694 } B;
mbed_official 146:f64d43ff0c18 695 } hw_pdb_chnc1_t;
mbed_official 146:f64d43ff0c18 696 #endif
mbed_official 146:f64d43ff0c18 697
mbed_official 146:f64d43ff0c18 698 /*!
mbed_official 146:f64d43ff0c18 699 * @name Constants and macros for entire PDB_CHnC1 register
mbed_official 146:f64d43ff0c18 700 */
mbed_official 146:f64d43ff0c18 701 //@{
mbed_official 146:f64d43ff0c18 702 #define HW_PDB_CHnC1_COUNT (2U)
mbed_official 146:f64d43ff0c18 703
mbed_official 146:f64d43ff0c18 704 #define HW_PDB_CHnC1_ADDR(n) (REGS_PDB_BASE + 0x10U + (0x28U * n))
mbed_official 146:f64d43ff0c18 705
mbed_official 146:f64d43ff0c18 706 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 707 #define HW_PDB_CHnC1(n) (*(__IO hw_pdb_chnc1_t *) HW_PDB_CHnC1_ADDR(n))
mbed_official 146:f64d43ff0c18 708 #define HW_PDB_CHnC1_RD(n) (HW_PDB_CHnC1(n).U)
mbed_official 146:f64d43ff0c18 709 #define HW_PDB_CHnC1_WR(n, v) (HW_PDB_CHnC1(n).U = (v))
mbed_official 146:f64d43ff0c18 710 #define HW_PDB_CHnC1_SET(n, v) (HW_PDB_CHnC1_WR(n, HW_PDB_CHnC1_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 711 #define HW_PDB_CHnC1_CLR(n, v) (HW_PDB_CHnC1_WR(n, HW_PDB_CHnC1_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 712 #define HW_PDB_CHnC1_TOG(n, v) (HW_PDB_CHnC1_WR(n, HW_PDB_CHnC1_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 713 #endif
mbed_official 146:f64d43ff0c18 714 //@}
mbed_official 146:f64d43ff0c18 715
mbed_official 146:f64d43ff0c18 716 /*
mbed_official 146:f64d43ff0c18 717 * Constants & macros for individual PDB_CHnC1 bitfields
mbed_official 146:f64d43ff0c18 718 */
mbed_official 146:f64d43ff0c18 719
mbed_official 146:f64d43ff0c18 720 /*!
mbed_official 146:f64d43ff0c18 721 * @name Register PDB_CHnC1, field EN[7:0] (RW)
mbed_official 146:f64d43ff0c18 722 *
mbed_official 146:f64d43ff0c18 723 * These bits enable the PDB ADC pre-trigger outputs. Only lower M pre-trigger
mbed_official 146:f64d43ff0c18 724 * bits are implemented in this MCU.
mbed_official 146:f64d43ff0c18 725 *
mbed_official 146:f64d43ff0c18 726 * Values:
mbed_official 146:f64d43ff0c18 727 * - 0 - PDB channel's corresponding pre-trigger disabled.
mbed_official 146:f64d43ff0c18 728 * - 1 - PDB channel's corresponding pre-trigger enabled.
mbed_official 146:f64d43ff0c18 729 */
mbed_official 146:f64d43ff0c18 730 //@{
mbed_official 146:f64d43ff0c18 731 #define BP_PDB_CHnC1_EN (0U) //!< Bit position for PDB_CHnC1_EN.
mbed_official 146:f64d43ff0c18 732 #define BM_PDB_CHnC1_EN (0x000000FFU) //!< Bit mask for PDB_CHnC1_EN.
mbed_official 146:f64d43ff0c18 733 #define BS_PDB_CHnC1_EN (8U) //!< Bit field size in bits for PDB_CHnC1_EN.
mbed_official 146:f64d43ff0c18 734
mbed_official 146:f64d43ff0c18 735 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 736 //! @brief Read current value of the PDB_CHnC1_EN field.
mbed_official 146:f64d43ff0c18 737 #define BR_PDB_CHnC1_EN(n) (HW_PDB_CHnC1(n).B.EN)
mbed_official 146:f64d43ff0c18 738 #endif
mbed_official 146:f64d43ff0c18 739
mbed_official 146:f64d43ff0c18 740 //! @brief Format value for bitfield PDB_CHnC1_EN.
mbed_official 146:f64d43ff0c18 741 #define BF_PDB_CHnC1_EN(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnC1_EN), uint32_t) & BM_PDB_CHnC1_EN)
mbed_official 146:f64d43ff0c18 742
mbed_official 146:f64d43ff0c18 743 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 744 //! @brief Set the EN field to a new value.
mbed_official 146:f64d43ff0c18 745 #define BW_PDB_CHnC1_EN(n, v) (HW_PDB_CHnC1_WR(n, (HW_PDB_CHnC1_RD(n) & ~BM_PDB_CHnC1_EN) | BF_PDB_CHnC1_EN(v)))
mbed_official 146:f64d43ff0c18 746 #endif
mbed_official 146:f64d43ff0c18 747 //@}
mbed_official 146:f64d43ff0c18 748
mbed_official 146:f64d43ff0c18 749 /*!
mbed_official 146:f64d43ff0c18 750 * @name Register PDB_CHnC1, field TOS[15:8] (RW)
mbed_official 146:f64d43ff0c18 751 *
mbed_official 146:f64d43ff0c18 752 * Selects the PDB ADC pre-trigger outputs. Only lower M pre-trigger fields are
mbed_official 146:f64d43ff0c18 753 * implemented in this MCU.
mbed_official 146:f64d43ff0c18 754 *
mbed_official 146:f64d43ff0c18 755 * Values:
mbed_official 146:f64d43ff0c18 756 * - 0 - PDB channel's corresponding pre-trigger is in bypassed mode. The
mbed_official 146:f64d43ff0c18 757 * pre-trigger asserts one peripheral clock cycle after a rising edge is detected
mbed_official 146:f64d43ff0c18 758 * on selected trigger input source or software trigger is selected and SWTRIG
mbed_official 146:f64d43ff0c18 759 * is written with 1.
mbed_official 146:f64d43ff0c18 760 * - 1 - PDB channel's corresponding pre-trigger asserts when the counter
mbed_official 146:f64d43ff0c18 761 * reaches the channel delay register and one peripheral clock cycle after a rising
mbed_official 146:f64d43ff0c18 762 * edge is detected on selected trigger input source or software trigger is
mbed_official 146:f64d43ff0c18 763 * selected and SETRIG is written with 1.
mbed_official 146:f64d43ff0c18 764 */
mbed_official 146:f64d43ff0c18 765 //@{
mbed_official 146:f64d43ff0c18 766 #define BP_PDB_CHnC1_TOS (8U) //!< Bit position for PDB_CHnC1_TOS.
mbed_official 146:f64d43ff0c18 767 #define BM_PDB_CHnC1_TOS (0x0000FF00U) //!< Bit mask for PDB_CHnC1_TOS.
mbed_official 146:f64d43ff0c18 768 #define BS_PDB_CHnC1_TOS (8U) //!< Bit field size in bits for PDB_CHnC1_TOS.
mbed_official 146:f64d43ff0c18 769
mbed_official 146:f64d43ff0c18 770 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 771 //! @brief Read current value of the PDB_CHnC1_TOS field.
mbed_official 146:f64d43ff0c18 772 #define BR_PDB_CHnC1_TOS(n) (HW_PDB_CHnC1(n).B.TOS)
mbed_official 146:f64d43ff0c18 773 #endif
mbed_official 146:f64d43ff0c18 774
mbed_official 146:f64d43ff0c18 775 //! @brief Format value for bitfield PDB_CHnC1_TOS.
mbed_official 146:f64d43ff0c18 776 #define BF_PDB_CHnC1_TOS(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnC1_TOS), uint32_t) & BM_PDB_CHnC1_TOS)
mbed_official 146:f64d43ff0c18 777
mbed_official 146:f64d43ff0c18 778 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 779 //! @brief Set the TOS field to a new value.
mbed_official 146:f64d43ff0c18 780 #define BW_PDB_CHnC1_TOS(n, v) (HW_PDB_CHnC1_WR(n, (HW_PDB_CHnC1_RD(n) & ~BM_PDB_CHnC1_TOS) | BF_PDB_CHnC1_TOS(v)))
mbed_official 146:f64d43ff0c18 781 #endif
mbed_official 146:f64d43ff0c18 782 //@}
mbed_official 146:f64d43ff0c18 783
mbed_official 146:f64d43ff0c18 784 /*!
mbed_official 146:f64d43ff0c18 785 * @name Register PDB_CHnC1, field BB[23:16] (RW)
mbed_official 146:f64d43ff0c18 786 *
mbed_official 146:f64d43ff0c18 787 * These bits enable the PDB ADC pre-trigger operation as back-to-back mode.
mbed_official 146:f64d43ff0c18 788 * Only lower M pre-trigger bits are implemented in this MCU. Back-to-back operation
mbed_official 146:f64d43ff0c18 789 * enables the ADC conversions complete to trigger the next PDB channel
mbed_official 146:f64d43ff0c18 790 * pre-trigger and trigger output, so that the ADC conversions can be triggered on next
mbed_official 146:f64d43ff0c18 791 * set of configuration and results registers. Application code must only enable
mbed_official 146:f64d43ff0c18 792 * the back-to-back operation of the PDB pre-triggers at the leading of the
mbed_official 146:f64d43ff0c18 793 * back-to-back connection chain.
mbed_official 146:f64d43ff0c18 794 *
mbed_official 146:f64d43ff0c18 795 * Values:
mbed_official 146:f64d43ff0c18 796 * - 0 - PDB channel's corresponding pre-trigger back-to-back operation disabled.
mbed_official 146:f64d43ff0c18 797 * - 1 - PDB channel's corresponding pre-trigger back-to-back operation enabled.
mbed_official 146:f64d43ff0c18 798 */
mbed_official 146:f64d43ff0c18 799 //@{
mbed_official 146:f64d43ff0c18 800 #define BP_PDB_CHnC1_BB (16U) //!< Bit position for PDB_CHnC1_BB.
mbed_official 146:f64d43ff0c18 801 #define BM_PDB_CHnC1_BB (0x00FF0000U) //!< Bit mask for PDB_CHnC1_BB.
mbed_official 146:f64d43ff0c18 802 #define BS_PDB_CHnC1_BB (8U) //!< Bit field size in bits for PDB_CHnC1_BB.
mbed_official 146:f64d43ff0c18 803
mbed_official 146:f64d43ff0c18 804 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 805 //! @brief Read current value of the PDB_CHnC1_BB field.
mbed_official 146:f64d43ff0c18 806 #define BR_PDB_CHnC1_BB(n) (HW_PDB_CHnC1(n).B.BB)
mbed_official 146:f64d43ff0c18 807 #endif
mbed_official 146:f64d43ff0c18 808
mbed_official 146:f64d43ff0c18 809 //! @brief Format value for bitfield PDB_CHnC1_BB.
mbed_official 146:f64d43ff0c18 810 #define BF_PDB_CHnC1_BB(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnC1_BB), uint32_t) & BM_PDB_CHnC1_BB)
mbed_official 146:f64d43ff0c18 811
mbed_official 146:f64d43ff0c18 812 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 813 //! @brief Set the BB field to a new value.
mbed_official 146:f64d43ff0c18 814 #define BW_PDB_CHnC1_BB(n, v) (HW_PDB_CHnC1_WR(n, (HW_PDB_CHnC1_RD(n) & ~BM_PDB_CHnC1_BB) | BF_PDB_CHnC1_BB(v)))
mbed_official 146:f64d43ff0c18 815 #endif
mbed_official 146:f64d43ff0c18 816 //@}
mbed_official 146:f64d43ff0c18 817 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 818 // HW_PDB_CHnS - Channel n Status register
mbed_official 146:f64d43ff0c18 819 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 820
mbed_official 146:f64d43ff0c18 821 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 822 /*!
mbed_official 146:f64d43ff0c18 823 * @brief HW_PDB_CHnS - Channel n Status register (RW)
mbed_official 146:f64d43ff0c18 824 *
mbed_official 146:f64d43ff0c18 825 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 826 */
mbed_official 146:f64d43ff0c18 827 typedef union _hw_pdb_chns
mbed_official 146:f64d43ff0c18 828 {
mbed_official 146:f64d43ff0c18 829 uint32_t U;
mbed_official 146:f64d43ff0c18 830 struct _hw_pdb_chns_bitfields
mbed_official 146:f64d43ff0c18 831 {
mbed_official 146:f64d43ff0c18 832 uint32_t ERR : 8; //!< [7:0] PDB Channel Sequence Error Flags
mbed_official 146:f64d43ff0c18 833 uint32_t RESERVED0 : 8; //!< [15:8]
mbed_official 146:f64d43ff0c18 834 uint32_t CF : 8; //!< [23:16] PDB Channel Flags
mbed_official 146:f64d43ff0c18 835 uint32_t RESERVED1 : 8; //!< [31:24]
mbed_official 146:f64d43ff0c18 836 } B;
mbed_official 146:f64d43ff0c18 837 } hw_pdb_chns_t;
mbed_official 146:f64d43ff0c18 838 #endif
mbed_official 146:f64d43ff0c18 839
mbed_official 146:f64d43ff0c18 840 /*!
mbed_official 146:f64d43ff0c18 841 * @name Constants and macros for entire PDB_CHnS register
mbed_official 146:f64d43ff0c18 842 */
mbed_official 146:f64d43ff0c18 843 //@{
mbed_official 146:f64d43ff0c18 844 #define HW_PDB_CHnS_COUNT (2U)
mbed_official 146:f64d43ff0c18 845
mbed_official 146:f64d43ff0c18 846 #define HW_PDB_CHnS_ADDR(n) (REGS_PDB_BASE + 0x14U + (0x28U * n))
mbed_official 146:f64d43ff0c18 847
mbed_official 146:f64d43ff0c18 848 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 849 #define HW_PDB_CHnS(n) (*(__IO hw_pdb_chns_t *) HW_PDB_CHnS_ADDR(n))
mbed_official 146:f64d43ff0c18 850 #define HW_PDB_CHnS_RD(n) (HW_PDB_CHnS(n).U)
mbed_official 146:f64d43ff0c18 851 #define HW_PDB_CHnS_WR(n, v) (HW_PDB_CHnS(n).U = (v))
mbed_official 146:f64d43ff0c18 852 #define HW_PDB_CHnS_SET(n, v) (HW_PDB_CHnS_WR(n, HW_PDB_CHnS_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 853 #define HW_PDB_CHnS_CLR(n, v) (HW_PDB_CHnS_WR(n, HW_PDB_CHnS_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 854 #define HW_PDB_CHnS_TOG(n, v) (HW_PDB_CHnS_WR(n, HW_PDB_CHnS_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 855 #endif
mbed_official 146:f64d43ff0c18 856 //@}
mbed_official 146:f64d43ff0c18 857
mbed_official 146:f64d43ff0c18 858 /*
mbed_official 146:f64d43ff0c18 859 * Constants & macros for individual PDB_CHnS bitfields
mbed_official 146:f64d43ff0c18 860 */
mbed_official 146:f64d43ff0c18 861
mbed_official 146:f64d43ff0c18 862 /*!
mbed_official 146:f64d43ff0c18 863 * @name Register PDB_CHnS, field ERR[7:0] (RW)
mbed_official 146:f64d43ff0c18 864 *
mbed_official 146:f64d43ff0c18 865 * Only the lower M bits are implemented in this MCU.
mbed_official 146:f64d43ff0c18 866 *
mbed_official 146:f64d43ff0c18 867 * Values:
mbed_official 146:f64d43ff0c18 868 * - 0 - Sequence error not detected on PDB channel's corresponding pre-trigger.
mbed_official 146:f64d43ff0c18 869 * - 1 - Sequence error detected on PDB channel's corresponding pre-trigger.
mbed_official 146:f64d43ff0c18 870 * ADCn block can be triggered for a conversion by one pre-trigger from PDB
mbed_official 146:f64d43ff0c18 871 * channel n. When one conversion, which is triggered by one of the pre-triggers
mbed_official 146:f64d43ff0c18 872 * from PDB channel n, is in progress, new trigger from PDB channel's
mbed_official 146:f64d43ff0c18 873 * corresponding pre-trigger m cannot be accepted by ADCn, and ERR[m] is set.
mbed_official 146:f64d43ff0c18 874 * Writing 0's to clear the sequence error flags.
mbed_official 146:f64d43ff0c18 875 */
mbed_official 146:f64d43ff0c18 876 //@{
mbed_official 146:f64d43ff0c18 877 #define BP_PDB_CHnS_ERR (0U) //!< Bit position for PDB_CHnS_ERR.
mbed_official 146:f64d43ff0c18 878 #define BM_PDB_CHnS_ERR (0x000000FFU) //!< Bit mask for PDB_CHnS_ERR.
mbed_official 146:f64d43ff0c18 879 #define BS_PDB_CHnS_ERR (8U) //!< Bit field size in bits for PDB_CHnS_ERR.
mbed_official 146:f64d43ff0c18 880
mbed_official 146:f64d43ff0c18 881 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 882 //! @brief Read current value of the PDB_CHnS_ERR field.
mbed_official 146:f64d43ff0c18 883 #define BR_PDB_CHnS_ERR(n) (HW_PDB_CHnS(n).B.ERR)
mbed_official 146:f64d43ff0c18 884 #endif
mbed_official 146:f64d43ff0c18 885
mbed_official 146:f64d43ff0c18 886 //! @brief Format value for bitfield PDB_CHnS_ERR.
mbed_official 146:f64d43ff0c18 887 #define BF_PDB_CHnS_ERR(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnS_ERR), uint32_t) & BM_PDB_CHnS_ERR)
mbed_official 146:f64d43ff0c18 888
mbed_official 146:f64d43ff0c18 889 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 890 //! @brief Set the ERR field to a new value.
mbed_official 146:f64d43ff0c18 891 #define BW_PDB_CHnS_ERR(n, v) (HW_PDB_CHnS_WR(n, (HW_PDB_CHnS_RD(n) & ~BM_PDB_CHnS_ERR) | BF_PDB_CHnS_ERR(v)))
mbed_official 146:f64d43ff0c18 892 #endif
mbed_official 146:f64d43ff0c18 893 //@}
mbed_official 146:f64d43ff0c18 894
mbed_official 146:f64d43ff0c18 895 /*!
mbed_official 146:f64d43ff0c18 896 * @name Register PDB_CHnS, field CF[23:16] (RW)
mbed_official 146:f64d43ff0c18 897 *
mbed_official 146:f64d43ff0c18 898 * The CF[m] bit is set when the PDB counter matches the CHnDLYm. Write 0 to
mbed_official 146:f64d43ff0c18 899 * clear these bits.
mbed_official 146:f64d43ff0c18 900 */
mbed_official 146:f64d43ff0c18 901 //@{
mbed_official 146:f64d43ff0c18 902 #define BP_PDB_CHnS_CF (16U) //!< Bit position for PDB_CHnS_CF.
mbed_official 146:f64d43ff0c18 903 #define BM_PDB_CHnS_CF (0x00FF0000U) //!< Bit mask for PDB_CHnS_CF.
mbed_official 146:f64d43ff0c18 904 #define BS_PDB_CHnS_CF (8U) //!< Bit field size in bits for PDB_CHnS_CF.
mbed_official 146:f64d43ff0c18 905
mbed_official 146:f64d43ff0c18 906 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 907 //! @brief Read current value of the PDB_CHnS_CF field.
mbed_official 146:f64d43ff0c18 908 #define BR_PDB_CHnS_CF(n) (HW_PDB_CHnS(n).B.CF)
mbed_official 146:f64d43ff0c18 909 #endif
mbed_official 146:f64d43ff0c18 910
mbed_official 146:f64d43ff0c18 911 //! @brief Format value for bitfield PDB_CHnS_CF.
mbed_official 146:f64d43ff0c18 912 #define BF_PDB_CHnS_CF(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnS_CF), uint32_t) & BM_PDB_CHnS_CF)
mbed_official 146:f64d43ff0c18 913
mbed_official 146:f64d43ff0c18 914 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 915 //! @brief Set the CF field to a new value.
mbed_official 146:f64d43ff0c18 916 #define BW_PDB_CHnS_CF(n, v) (HW_PDB_CHnS_WR(n, (HW_PDB_CHnS_RD(n) & ~BM_PDB_CHnS_CF) | BF_PDB_CHnS_CF(v)))
mbed_official 146:f64d43ff0c18 917 #endif
mbed_official 146:f64d43ff0c18 918 //@}
mbed_official 146:f64d43ff0c18 919 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 920 // HW_PDB_CHnDLY0 - Channel n Delay 0 register
mbed_official 146:f64d43ff0c18 921 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 922
mbed_official 146:f64d43ff0c18 923 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 924 /*!
mbed_official 146:f64d43ff0c18 925 * @brief HW_PDB_CHnDLY0 - Channel n Delay 0 register (RW)
mbed_official 146:f64d43ff0c18 926 *
mbed_official 146:f64d43ff0c18 927 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 928 */
mbed_official 146:f64d43ff0c18 929 typedef union _hw_pdb_chndly0
mbed_official 146:f64d43ff0c18 930 {
mbed_official 146:f64d43ff0c18 931 uint32_t U;
mbed_official 146:f64d43ff0c18 932 struct _hw_pdb_chndly0_bitfields
mbed_official 146:f64d43ff0c18 933 {
mbed_official 146:f64d43ff0c18 934 uint32_t DLY : 16; //!< [15:0] PDB Channel Delay
mbed_official 146:f64d43ff0c18 935 uint32_t RESERVED0 : 16; //!< [31:16]
mbed_official 146:f64d43ff0c18 936 } B;
mbed_official 146:f64d43ff0c18 937 } hw_pdb_chndly0_t;
mbed_official 146:f64d43ff0c18 938 #endif
mbed_official 146:f64d43ff0c18 939
mbed_official 146:f64d43ff0c18 940 /*!
mbed_official 146:f64d43ff0c18 941 * @name Constants and macros for entire PDB_CHnDLY0 register
mbed_official 146:f64d43ff0c18 942 */
mbed_official 146:f64d43ff0c18 943 //@{
mbed_official 146:f64d43ff0c18 944 #define HW_PDB_CHnDLY0_COUNT (2U)
mbed_official 146:f64d43ff0c18 945
mbed_official 146:f64d43ff0c18 946 #define HW_PDB_CHnDLY0_ADDR(n) (REGS_PDB_BASE + 0x18U + (0x28U * n))
mbed_official 146:f64d43ff0c18 947
mbed_official 146:f64d43ff0c18 948 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 949 #define HW_PDB_CHnDLY0(n) (*(__IO hw_pdb_chndly0_t *) HW_PDB_CHnDLY0_ADDR(n))
mbed_official 146:f64d43ff0c18 950 #define HW_PDB_CHnDLY0_RD(n) (HW_PDB_CHnDLY0(n).U)
mbed_official 146:f64d43ff0c18 951 #define HW_PDB_CHnDLY0_WR(n, v) (HW_PDB_CHnDLY0(n).U = (v))
mbed_official 146:f64d43ff0c18 952 #define HW_PDB_CHnDLY0_SET(n, v) (HW_PDB_CHnDLY0_WR(n, HW_PDB_CHnDLY0_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 953 #define HW_PDB_CHnDLY0_CLR(n, v) (HW_PDB_CHnDLY0_WR(n, HW_PDB_CHnDLY0_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 954 #define HW_PDB_CHnDLY0_TOG(n, v) (HW_PDB_CHnDLY0_WR(n, HW_PDB_CHnDLY0_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 955 #endif
mbed_official 146:f64d43ff0c18 956 //@}
mbed_official 146:f64d43ff0c18 957
mbed_official 146:f64d43ff0c18 958 /*
mbed_official 146:f64d43ff0c18 959 * Constants & macros for individual PDB_CHnDLY0 bitfields
mbed_official 146:f64d43ff0c18 960 */
mbed_official 146:f64d43ff0c18 961
mbed_official 146:f64d43ff0c18 962 /*!
mbed_official 146:f64d43ff0c18 963 * @name Register PDB_CHnDLY0, field DLY[15:0] (RW)
mbed_official 146:f64d43ff0c18 964 *
mbed_official 146:f64d43ff0c18 965 * Specifies the delay value for the channel's corresponding pre-trigger. The
mbed_official 146:f64d43ff0c18 966 * pre-trigger asserts when the counter is equal to DLY. Reading this field returns
mbed_official 146:f64d43ff0c18 967 * the value of internal register that is effective for the current PDB cycle.
mbed_official 146:f64d43ff0c18 968 */
mbed_official 146:f64d43ff0c18 969 //@{
mbed_official 146:f64d43ff0c18 970 #define BP_PDB_CHnDLY0_DLY (0U) //!< Bit position for PDB_CHnDLY0_DLY.
mbed_official 146:f64d43ff0c18 971 #define BM_PDB_CHnDLY0_DLY (0x0000FFFFU) //!< Bit mask for PDB_CHnDLY0_DLY.
mbed_official 146:f64d43ff0c18 972 #define BS_PDB_CHnDLY0_DLY (16U) //!< Bit field size in bits for PDB_CHnDLY0_DLY.
mbed_official 146:f64d43ff0c18 973
mbed_official 146:f64d43ff0c18 974 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 975 //! @brief Read current value of the PDB_CHnDLY0_DLY field.
mbed_official 146:f64d43ff0c18 976 #define BR_PDB_CHnDLY0_DLY(n) (HW_PDB_CHnDLY0(n).B.DLY)
mbed_official 146:f64d43ff0c18 977 #endif
mbed_official 146:f64d43ff0c18 978
mbed_official 146:f64d43ff0c18 979 //! @brief Format value for bitfield PDB_CHnDLY0_DLY.
mbed_official 146:f64d43ff0c18 980 #define BF_PDB_CHnDLY0_DLY(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnDLY0_DLY), uint32_t) & BM_PDB_CHnDLY0_DLY)
mbed_official 146:f64d43ff0c18 981
mbed_official 146:f64d43ff0c18 982 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 983 //! @brief Set the DLY field to a new value.
mbed_official 146:f64d43ff0c18 984 #define BW_PDB_CHnDLY0_DLY(n, v) (HW_PDB_CHnDLY0_WR(n, (HW_PDB_CHnDLY0_RD(n) & ~BM_PDB_CHnDLY0_DLY) | BF_PDB_CHnDLY0_DLY(v)))
mbed_official 146:f64d43ff0c18 985 #endif
mbed_official 146:f64d43ff0c18 986 //@}
mbed_official 146:f64d43ff0c18 987 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 988 // HW_PDB_CHnDLY1 - Channel n Delay 1 register
mbed_official 146:f64d43ff0c18 989 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 990
mbed_official 146:f64d43ff0c18 991 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 992 /*!
mbed_official 146:f64d43ff0c18 993 * @brief HW_PDB_CHnDLY1 - Channel n Delay 1 register (RW)
mbed_official 146:f64d43ff0c18 994 *
mbed_official 146:f64d43ff0c18 995 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 996 */
mbed_official 146:f64d43ff0c18 997 typedef union _hw_pdb_chndly1
mbed_official 146:f64d43ff0c18 998 {
mbed_official 146:f64d43ff0c18 999 uint32_t U;
mbed_official 146:f64d43ff0c18 1000 struct _hw_pdb_chndly1_bitfields
mbed_official 146:f64d43ff0c18 1001 {
mbed_official 146:f64d43ff0c18 1002 uint32_t DLY : 16; //!< [15:0] PDB Channel Delay
mbed_official 146:f64d43ff0c18 1003 uint32_t RESERVED0 : 16; //!< [31:16]
mbed_official 146:f64d43ff0c18 1004 } B;
mbed_official 146:f64d43ff0c18 1005 } hw_pdb_chndly1_t;
mbed_official 146:f64d43ff0c18 1006 #endif
mbed_official 146:f64d43ff0c18 1007
mbed_official 146:f64d43ff0c18 1008 /*!
mbed_official 146:f64d43ff0c18 1009 * @name Constants and macros for entire PDB_CHnDLY1 register
mbed_official 146:f64d43ff0c18 1010 */
mbed_official 146:f64d43ff0c18 1011 //@{
mbed_official 146:f64d43ff0c18 1012 #define HW_PDB_CHnDLY1_COUNT (2U)
mbed_official 146:f64d43ff0c18 1013
mbed_official 146:f64d43ff0c18 1014 #define HW_PDB_CHnDLY1_ADDR(n) (REGS_PDB_BASE + 0x1CU + (0x28U * n))
mbed_official 146:f64d43ff0c18 1015
mbed_official 146:f64d43ff0c18 1016 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1017 #define HW_PDB_CHnDLY1(n) (*(__IO hw_pdb_chndly1_t *) HW_PDB_CHnDLY1_ADDR(n))
mbed_official 146:f64d43ff0c18 1018 #define HW_PDB_CHnDLY1_RD(n) (HW_PDB_CHnDLY1(n).U)
mbed_official 146:f64d43ff0c18 1019 #define HW_PDB_CHnDLY1_WR(n, v) (HW_PDB_CHnDLY1(n).U = (v))
mbed_official 146:f64d43ff0c18 1020 #define HW_PDB_CHnDLY1_SET(n, v) (HW_PDB_CHnDLY1_WR(n, HW_PDB_CHnDLY1_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 1021 #define HW_PDB_CHnDLY1_CLR(n, v) (HW_PDB_CHnDLY1_WR(n, HW_PDB_CHnDLY1_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 1022 #define HW_PDB_CHnDLY1_TOG(n, v) (HW_PDB_CHnDLY1_WR(n, HW_PDB_CHnDLY1_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 1023 #endif
mbed_official 146:f64d43ff0c18 1024 //@}
mbed_official 146:f64d43ff0c18 1025
mbed_official 146:f64d43ff0c18 1026 /*
mbed_official 146:f64d43ff0c18 1027 * Constants & macros for individual PDB_CHnDLY1 bitfields
mbed_official 146:f64d43ff0c18 1028 */
mbed_official 146:f64d43ff0c18 1029
mbed_official 146:f64d43ff0c18 1030 /*!
mbed_official 146:f64d43ff0c18 1031 * @name Register PDB_CHnDLY1, field DLY[15:0] (RW)
mbed_official 146:f64d43ff0c18 1032 *
mbed_official 146:f64d43ff0c18 1033 * These bits specify the delay value for the channel's corresponding
mbed_official 146:f64d43ff0c18 1034 * pre-trigger. The pre-trigger asserts when the counter is equal to DLY. Reading these
mbed_official 146:f64d43ff0c18 1035 * bits returns the value of internal register that is effective for the current PDB
mbed_official 146:f64d43ff0c18 1036 * cycle.
mbed_official 146:f64d43ff0c18 1037 */
mbed_official 146:f64d43ff0c18 1038 //@{
mbed_official 146:f64d43ff0c18 1039 #define BP_PDB_CHnDLY1_DLY (0U) //!< Bit position for PDB_CHnDLY1_DLY.
mbed_official 146:f64d43ff0c18 1040 #define BM_PDB_CHnDLY1_DLY (0x0000FFFFU) //!< Bit mask for PDB_CHnDLY1_DLY.
mbed_official 146:f64d43ff0c18 1041 #define BS_PDB_CHnDLY1_DLY (16U) //!< Bit field size in bits for PDB_CHnDLY1_DLY.
mbed_official 146:f64d43ff0c18 1042
mbed_official 146:f64d43ff0c18 1043 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1044 //! @brief Read current value of the PDB_CHnDLY1_DLY field.
mbed_official 146:f64d43ff0c18 1045 #define BR_PDB_CHnDLY1_DLY(n) (HW_PDB_CHnDLY1(n).B.DLY)
mbed_official 146:f64d43ff0c18 1046 #endif
mbed_official 146:f64d43ff0c18 1047
mbed_official 146:f64d43ff0c18 1048 //! @brief Format value for bitfield PDB_CHnDLY1_DLY.
mbed_official 146:f64d43ff0c18 1049 #define BF_PDB_CHnDLY1_DLY(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_CHnDLY1_DLY), uint32_t) & BM_PDB_CHnDLY1_DLY)
mbed_official 146:f64d43ff0c18 1050
mbed_official 146:f64d43ff0c18 1051 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1052 //! @brief Set the DLY field to a new value.
mbed_official 146:f64d43ff0c18 1053 #define BW_PDB_CHnDLY1_DLY(n, v) (HW_PDB_CHnDLY1_WR(n, (HW_PDB_CHnDLY1_RD(n) & ~BM_PDB_CHnDLY1_DLY) | BF_PDB_CHnDLY1_DLY(v)))
mbed_official 146:f64d43ff0c18 1054 #endif
mbed_official 146:f64d43ff0c18 1055 //@}
mbed_official 146:f64d43ff0c18 1056
mbed_official 146:f64d43ff0c18 1057 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1058 // HW_PDB_DACINTCn - DAC Interval Trigger n Control register
mbed_official 146:f64d43ff0c18 1059 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1060
mbed_official 146:f64d43ff0c18 1061 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1062 /*!
mbed_official 146:f64d43ff0c18 1063 * @brief HW_PDB_DACINTCn - DAC Interval Trigger n Control register (RW)
mbed_official 146:f64d43ff0c18 1064 *
mbed_official 146:f64d43ff0c18 1065 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 1066 */
mbed_official 146:f64d43ff0c18 1067 typedef union _hw_pdb_dacintcn
mbed_official 146:f64d43ff0c18 1068 {
mbed_official 146:f64d43ff0c18 1069 uint32_t U;
mbed_official 146:f64d43ff0c18 1070 struct _hw_pdb_dacintcn_bitfields
mbed_official 146:f64d43ff0c18 1071 {
mbed_official 146:f64d43ff0c18 1072 uint32_t TOE : 1; //!< [0] DAC Interval Trigger Enable
mbed_official 146:f64d43ff0c18 1073 uint32_t EXT : 1; //!< [1] DAC External Trigger Input Enable
mbed_official 146:f64d43ff0c18 1074 uint32_t RESERVED0 : 30; //!< [31:2]
mbed_official 146:f64d43ff0c18 1075 } B;
mbed_official 146:f64d43ff0c18 1076 } hw_pdb_dacintcn_t;
mbed_official 146:f64d43ff0c18 1077 #endif
mbed_official 146:f64d43ff0c18 1078
mbed_official 146:f64d43ff0c18 1079 /*!
mbed_official 146:f64d43ff0c18 1080 * @name Constants and macros for entire PDB_DACINTCn register
mbed_official 146:f64d43ff0c18 1081 */
mbed_official 146:f64d43ff0c18 1082 //@{
mbed_official 146:f64d43ff0c18 1083 #define HW_PDB_DACINTCn_COUNT (2U)
mbed_official 146:f64d43ff0c18 1084
mbed_official 146:f64d43ff0c18 1085 #define HW_PDB_DACINTCn_ADDR(n) (REGS_PDB_BASE + 0x150U + (0x8U * n))
mbed_official 146:f64d43ff0c18 1086
mbed_official 146:f64d43ff0c18 1087 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1088 #define HW_PDB_DACINTCn(n) (*(__IO hw_pdb_dacintcn_t *) HW_PDB_DACINTCn_ADDR(n))
mbed_official 146:f64d43ff0c18 1089 #define HW_PDB_DACINTCn_RD(n) (HW_PDB_DACINTCn(n).U)
mbed_official 146:f64d43ff0c18 1090 #define HW_PDB_DACINTCn_WR(n, v) (HW_PDB_DACINTCn(n).U = (v))
mbed_official 146:f64d43ff0c18 1091 #define HW_PDB_DACINTCn_SET(n, v) (HW_PDB_DACINTCn_WR(n, HW_PDB_DACINTCn_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 1092 #define HW_PDB_DACINTCn_CLR(n, v) (HW_PDB_DACINTCn_WR(n, HW_PDB_DACINTCn_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 1093 #define HW_PDB_DACINTCn_TOG(n, v) (HW_PDB_DACINTCn_WR(n, HW_PDB_DACINTCn_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 1094 #endif
mbed_official 146:f64d43ff0c18 1095 //@}
mbed_official 146:f64d43ff0c18 1096
mbed_official 146:f64d43ff0c18 1097 /*
mbed_official 146:f64d43ff0c18 1098 * Constants & macros for individual PDB_DACINTCn bitfields
mbed_official 146:f64d43ff0c18 1099 */
mbed_official 146:f64d43ff0c18 1100
mbed_official 146:f64d43ff0c18 1101 /*!
mbed_official 146:f64d43ff0c18 1102 * @name Register PDB_DACINTCn, field TOE[0] (RW)
mbed_official 146:f64d43ff0c18 1103 *
mbed_official 146:f64d43ff0c18 1104 * This bit enables the DAC interval trigger.
mbed_official 146:f64d43ff0c18 1105 *
mbed_official 146:f64d43ff0c18 1106 * Values:
mbed_official 146:f64d43ff0c18 1107 * - 0 - DAC interval trigger disabled.
mbed_official 146:f64d43ff0c18 1108 * - 1 - DAC interval trigger enabled.
mbed_official 146:f64d43ff0c18 1109 */
mbed_official 146:f64d43ff0c18 1110 //@{
mbed_official 146:f64d43ff0c18 1111 #define BP_PDB_DACINTCn_TOE (0U) //!< Bit position for PDB_DACINTCn_TOE.
mbed_official 146:f64d43ff0c18 1112 #define BM_PDB_DACINTCn_TOE (0x00000001U) //!< Bit mask for PDB_DACINTCn_TOE.
mbed_official 146:f64d43ff0c18 1113 #define BS_PDB_DACINTCn_TOE (1U) //!< Bit field size in bits for PDB_DACINTCn_TOE.
mbed_official 146:f64d43ff0c18 1114
mbed_official 146:f64d43ff0c18 1115 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1116 //! @brief Read current value of the PDB_DACINTCn_TOE field.
mbed_official 146:f64d43ff0c18 1117 #define BR_PDB_DACINTCn_TOE(n) (BITBAND_ACCESS32(HW_PDB_DACINTCn_ADDR(n), BP_PDB_DACINTCn_TOE))
mbed_official 146:f64d43ff0c18 1118 #endif
mbed_official 146:f64d43ff0c18 1119
mbed_official 146:f64d43ff0c18 1120 //! @brief Format value for bitfield PDB_DACINTCn_TOE.
mbed_official 146:f64d43ff0c18 1121 #define BF_PDB_DACINTCn_TOE(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_DACINTCn_TOE), uint32_t) & BM_PDB_DACINTCn_TOE)
mbed_official 146:f64d43ff0c18 1122
mbed_official 146:f64d43ff0c18 1123 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1124 //! @brief Set the TOE field to a new value.
mbed_official 146:f64d43ff0c18 1125 #define BW_PDB_DACINTCn_TOE(n, v) (BITBAND_ACCESS32(HW_PDB_DACINTCn_ADDR(n), BP_PDB_DACINTCn_TOE) = (v))
mbed_official 146:f64d43ff0c18 1126 #endif
mbed_official 146:f64d43ff0c18 1127 //@}
mbed_official 146:f64d43ff0c18 1128
mbed_official 146:f64d43ff0c18 1129 /*!
mbed_official 146:f64d43ff0c18 1130 * @name Register PDB_DACINTCn, field EXT[1] (RW)
mbed_official 146:f64d43ff0c18 1131 *
mbed_official 146:f64d43ff0c18 1132 * Enables the external trigger for DAC interval counter.
mbed_official 146:f64d43ff0c18 1133 *
mbed_official 146:f64d43ff0c18 1134 * Values:
mbed_official 146:f64d43ff0c18 1135 * - 0 - DAC external trigger input disabled. DAC interval counter is reset and
mbed_official 146:f64d43ff0c18 1136 * counting starts when a rising edge is detected on selected trigger input
mbed_official 146:f64d43ff0c18 1137 * source or software trigger is selected and SWTRIG is written with 1.
mbed_official 146:f64d43ff0c18 1138 * - 1 - DAC external trigger input enabled. DAC interval counter is bypassed
mbed_official 146:f64d43ff0c18 1139 * and DAC external trigger input triggers the DAC interval trigger.
mbed_official 146:f64d43ff0c18 1140 */
mbed_official 146:f64d43ff0c18 1141 //@{
mbed_official 146:f64d43ff0c18 1142 #define BP_PDB_DACINTCn_EXT (1U) //!< Bit position for PDB_DACINTCn_EXT.
mbed_official 146:f64d43ff0c18 1143 #define BM_PDB_DACINTCn_EXT (0x00000002U) //!< Bit mask for PDB_DACINTCn_EXT.
mbed_official 146:f64d43ff0c18 1144 #define BS_PDB_DACINTCn_EXT (1U) //!< Bit field size in bits for PDB_DACINTCn_EXT.
mbed_official 146:f64d43ff0c18 1145
mbed_official 146:f64d43ff0c18 1146 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1147 //! @brief Read current value of the PDB_DACINTCn_EXT field.
mbed_official 146:f64d43ff0c18 1148 #define BR_PDB_DACINTCn_EXT(n) (BITBAND_ACCESS32(HW_PDB_DACINTCn_ADDR(n), BP_PDB_DACINTCn_EXT))
mbed_official 146:f64d43ff0c18 1149 #endif
mbed_official 146:f64d43ff0c18 1150
mbed_official 146:f64d43ff0c18 1151 //! @brief Format value for bitfield PDB_DACINTCn_EXT.
mbed_official 146:f64d43ff0c18 1152 #define BF_PDB_DACINTCn_EXT(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_DACINTCn_EXT), uint32_t) & BM_PDB_DACINTCn_EXT)
mbed_official 146:f64d43ff0c18 1153
mbed_official 146:f64d43ff0c18 1154 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1155 //! @brief Set the EXT field to a new value.
mbed_official 146:f64d43ff0c18 1156 #define BW_PDB_DACINTCn_EXT(n, v) (BITBAND_ACCESS32(HW_PDB_DACINTCn_ADDR(n), BP_PDB_DACINTCn_EXT) = (v))
mbed_official 146:f64d43ff0c18 1157 #endif
mbed_official 146:f64d43ff0c18 1158 //@}
mbed_official 146:f64d43ff0c18 1159 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1160 // HW_PDB_DACINTn - DAC Interval n register
mbed_official 146:f64d43ff0c18 1161 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1162
mbed_official 146:f64d43ff0c18 1163 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1164 /*!
mbed_official 146:f64d43ff0c18 1165 * @brief HW_PDB_DACINTn - DAC Interval n register (RW)
mbed_official 146:f64d43ff0c18 1166 *
mbed_official 146:f64d43ff0c18 1167 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 1168 */
mbed_official 146:f64d43ff0c18 1169 typedef union _hw_pdb_dacintn
mbed_official 146:f64d43ff0c18 1170 {
mbed_official 146:f64d43ff0c18 1171 uint32_t U;
mbed_official 146:f64d43ff0c18 1172 struct _hw_pdb_dacintn_bitfields
mbed_official 146:f64d43ff0c18 1173 {
mbed_official 146:f64d43ff0c18 1174 uint32_t INT : 16; //!< [15:0] DAC Interval
mbed_official 146:f64d43ff0c18 1175 uint32_t RESERVED0 : 16; //!< [31:16]
mbed_official 146:f64d43ff0c18 1176 } B;
mbed_official 146:f64d43ff0c18 1177 } hw_pdb_dacintn_t;
mbed_official 146:f64d43ff0c18 1178 #endif
mbed_official 146:f64d43ff0c18 1179
mbed_official 146:f64d43ff0c18 1180 /*!
mbed_official 146:f64d43ff0c18 1181 * @name Constants and macros for entire PDB_DACINTn register
mbed_official 146:f64d43ff0c18 1182 */
mbed_official 146:f64d43ff0c18 1183 //@{
mbed_official 146:f64d43ff0c18 1184 #define HW_PDB_DACINTn_COUNT (2U)
mbed_official 146:f64d43ff0c18 1185
mbed_official 146:f64d43ff0c18 1186 #define HW_PDB_DACINTn_ADDR(n) (REGS_PDB_BASE + 0x154U + (0x8U * n))
mbed_official 146:f64d43ff0c18 1187
mbed_official 146:f64d43ff0c18 1188 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1189 #define HW_PDB_DACINTn(n) (*(__IO hw_pdb_dacintn_t *) HW_PDB_DACINTn_ADDR(n))
mbed_official 146:f64d43ff0c18 1190 #define HW_PDB_DACINTn_RD(n) (HW_PDB_DACINTn(n).U)
mbed_official 146:f64d43ff0c18 1191 #define HW_PDB_DACINTn_WR(n, v) (HW_PDB_DACINTn(n).U = (v))
mbed_official 146:f64d43ff0c18 1192 #define HW_PDB_DACINTn_SET(n, v) (HW_PDB_DACINTn_WR(n, HW_PDB_DACINTn_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 1193 #define HW_PDB_DACINTn_CLR(n, v) (HW_PDB_DACINTn_WR(n, HW_PDB_DACINTn_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 1194 #define HW_PDB_DACINTn_TOG(n, v) (HW_PDB_DACINTn_WR(n, HW_PDB_DACINTn_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 1195 #endif
mbed_official 146:f64d43ff0c18 1196 //@}
mbed_official 146:f64d43ff0c18 1197
mbed_official 146:f64d43ff0c18 1198 /*
mbed_official 146:f64d43ff0c18 1199 * Constants & macros for individual PDB_DACINTn bitfields
mbed_official 146:f64d43ff0c18 1200 */
mbed_official 146:f64d43ff0c18 1201
mbed_official 146:f64d43ff0c18 1202 /*!
mbed_official 146:f64d43ff0c18 1203 * @name Register PDB_DACINTn, field INT[15:0] (RW)
mbed_official 146:f64d43ff0c18 1204 *
mbed_official 146:f64d43ff0c18 1205 * Specifies the interval value for DAC interval trigger. DAC interval trigger
mbed_official 146:f64d43ff0c18 1206 * triggers DAC[1:0] update when the DAC interval counter is equal to the DACINT.
mbed_official 146:f64d43ff0c18 1207 * Reading this field returns the value of internal register that is effective
mbed_official 146:f64d43ff0c18 1208 * for the current PDB cycle.
mbed_official 146:f64d43ff0c18 1209 */
mbed_official 146:f64d43ff0c18 1210 //@{
mbed_official 146:f64d43ff0c18 1211 #define BP_PDB_DACINTn_INT (0U) //!< Bit position for PDB_DACINTn_INT.
mbed_official 146:f64d43ff0c18 1212 #define BM_PDB_DACINTn_INT (0x0000FFFFU) //!< Bit mask for PDB_DACINTn_INT.
mbed_official 146:f64d43ff0c18 1213 #define BS_PDB_DACINTn_INT (16U) //!< Bit field size in bits for PDB_DACINTn_INT.
mbed_official 146:f64d43ff0c18 1214
mbed_official 146:f64d43ff0c18 1215 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1216 //! @brief Read current value of the PDB_DACINTn_INT field.
mbed_official 146:f64d43ff0c18 1217 #define BR_PDB_DACINTn_INT(n) (HW_PDB_DACINTn(n).B.INT)
mbed_official 146:f64d43ff0c18 1218 #endif
mbed_official 146:f64d43ff0c18 1219
mbed_official 146:f64d43ff0c18 1220 //! @brief Format value for bitfield PDB_DACINTn_INT.
mbed_official 146:f64d43ff0c18 1221 #define BF_PDB_DACINTn_INT(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_DACINTn_INT), uint32_t) & BM_PDB_DACINTn_INT)
mbed_official 146:f64d43ff0c18 1222
mbed_official 146:f64d43ff0c18 1223 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1224 //! @brief Set the INT field to a new value.
mbed_official 146:f64d43ff0c18 1225 #define BW_PDB_DACINTn_INT(n, v) (HW_PDB_DACINTn_WR(n, (HW_PDB_DACINTn_RD(n) & ~BM_PDB_DACINTn_INT) | BF_PDB_DACINTn_INT(v)))
mbed_official 146:f64d43ff0c18 1226 #endif
mbed_official 146:f64d43ff0c18 1227 //@}
mbed_official 146:f64d43ff0c18 1228
mbed_official 146:f64d43ff0c18 1229 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1230 // HW_PDB_POEN - Pulse-Out n Enable register
mbed_official 146:f64d43ff0c18 1231 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1232
mbed_official 146:f64d43ff0c18 1233 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1234 /*!
mbed_official 146:f64d43ff0c18 1235 * @brief HW_PDB_POEN - Pulse-Out n Enable register (RW)
mbed_official 146:f64d43ff0c18 1236 *
mbed_official 146:f64d43ff0c18 1237 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 1238 */
mbed_official 146:f64d43ff0c18 1239 typedef union _hw_pdb_poen
mbed_official 146:f64d43ff0c18 1240 {
mbed_official 146:f64d43ff0c18 1241 uint32_t U;
mbed_official 146:f64d43ff0c18 1242 struct _hw_pdb_poen_bitfields
mbed_official 146:f64d43ff0c18 1243 {
mbed_official 146:f64d43ff0c18 1244 uint32_t POEN : 8; //!< [7:0] PDB Pulse-Out Enable
mbed_official 146:f64d43ff0c18 1245 uint32_t RESERVED0 : 24; //!< [31:8]
mbed_official 146:f64d43ff0c18 1246 } B;
mbed_official 146:f64d43ff0c18 1247 } hw_pdb_poen_t;
mbed_official 146:f64d43ff0c18 1248 #endif
mbed_official 146:f64d43ff0c18 1249
mbed_official 146:f64d43ff0c18 1250 /*!
mbed_official 146:f64d43ff0c18 1251 * @name Constants and macros for entire PDB_POEN register
mbed_official 146:f64d43ff0c18 1252 */
mbed_official 146:f64d43ff0c18 1253 //@{
mbed_official 146:f64d43ff0c18 1254 #define HW_PDB_POEN_ADDR (REGS_PDB_BASE + 0x190U)
mbed_official 146:f64d43ff0c18 1255
mbed_official 146:f64d43ff0c18 1256 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1257 #define HW_PDB_POEN (*(__IO hw_pdb_poen_t *) HW_PDB_POEN_ADDR)
mbed_official 146:f64d43ff0c18 1258 #define HW_PDB_POEN_RD() (HW_PDB_POEN.U)
mbed_official 146:f64d43ff0c18 1259 #define HW_PDB_POEN_WR(v) (HW_PDB_POEN.U = (v))
mbed_official 146:f64d43ff0c18 1260 #define HW_PDB_POEN_SET(v) (HW_PDB_POEN_WR(HW_PDB_POEN_RD() | (v)))
mbed_official 146:f64d43ff0c18 1261 #define HW_PDB_POEN_CLR(v) (HW_PDB_POEN_WR(HW_PDB_POEN_RD() & ~(v)))
mbed_official 146:f64d43ff0c18 1262 #define HW_PDB_POEN_TOG(v) (HW_PDB_POEN_WR(HW_PDB_POEN_RD() ^ (v)))
mbed_official 146:f64d43ff0c18 1263 #endif
mbed_official 146:f64d43ff0c18 1264 //@}
mbed_official 146:f64d43ff0c18 1265
mbed_official 146:f64d43ff0c18 1266 /*
mbed_official 146:f64d43ff0c18 1267 * Constants & macros for individual PDB_POEN bitfields
mbed_official 146:f64d43ff0c18 1268 */
mbed_official 146:f64d43ff0c18 1269
mbed_official 146:f64d43ff0c18 1270 /*!
mbed_official 146:f64d43ff0c18 1271 * @name Register PDB_POEN, field POEN[7:0] (RW)
mbed_official 146:f64d43ff0c18 1272 *
mbed_official 146:f64d43ff0c18 1273 * Enables the pulse output. Only lower Y bits are implemented in this MCU.
mbed_official 146:f64d43ff0c18 1274 *
mbed_official 146:f64d43ff0c18 1275 * Values:
mbed_official 146:f64d43ff0c18 1276 * - 0 - PDB Pulse-Out disabled
mbed_official 146:f64d43ff0c18 1277 * - 1 - PDB Pulse-Out enabled
mbed_official 146:f64d43ff0c18 1278 */
mbed_official 146:f64d43ff0c18 1279 //@{
mbed_official 146:f64d43ff0c18 1280 #define BP_PDB_POEN_POEN (0U) //!< Bit position for PDB_POEN_POEN.
mbed_official 146:f64d43ff0c18 1281 #define BM_PDB_POEN_POEN (0x000000FFU) //!< Bit mask for PDB_POEN_POEN.
mbed_official 146:f64d43ff0c18 1282 #define BS_PDB_POEN_POEN (8U) //!< Bit field size in bits for PDB_POEN_POEN.
mbed_official 146:f64d43ff0c18 1283
mbed_official 146:f64d43ff0c18 1284 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1285 //! @brief Read current value of the PDB_POEN_POEN field.
mbed_official 146:f64d43ff0c18 1286 #define BR_PDB_POEN_POEN (HW_PDB_POEN.B.POEN)
mbed_official 146:f64d43ff0c18 1287 #endif
mbed_official 146:f64d43ff0c18 1288
mbed_official 146:f64d43ff0c18 1289 //! @brief Format value for bitfield PDB_POEN_POEN.
mbed_official 146:f64d43ff0c18 1290 #define BF_PDB_POEN_POEN(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_POEN_POEN), uint32_t) & BM_PDB_POEN_POEN)
mbed_official 146:f64d43ff0c18 1291
mbed_official 146:f64d43ff0c18 1292 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1293 //! @brief Set the POEN field to a new value.
mbed_official 146:f64d43ff0c18 1294 #define BW_PDB_POEN_POEN(v) (HW_PDB_POEN_WR((HW_PDB_POEN_RD() & ~BM_PDB_POEN_POEN) | BF_PDB_POEN_POEN(v)))
mbed_official 146:f64d43ff0c18 1295 #endif
mbed_official 146:f64d43ff0c18 1296 //@}
mbed_official 146:f64d43ff0c18 1297
mbed_official 146:f64d43ff0c18 1298 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1299 // HW_PDB_POnDLY - Pulse-Out n Delay register
mbed_official 146:f64d43ff0c18 1300 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1301
mbed_official 146:f64d43ff0c18 1302 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1303 /*!
mbed_official 146:f64d43ff0c18 1304 * @brief HW_PDB_POnDLY - Pulse-Out n Delay register (RW)
mbed_official 146:f64d43ff0c18 1305 *
mbed_official 146:f64d43ff0c18 1306 * Reset value: 0x00000000U
mbed_official 146:f64d43ff0c18 1307 */
mbed_official 146:f64d43ff0c18 1308 typedef union _hw_pdb_pondly
mbed_official 146:f64d43ff0c18 1309 {
mbed_official 146:f64d43ff0c18 1310 uint32_t U;
mbed_official 146:f64d43ff0c18 1311 struct _hw_pdb_pondly_bitfields
mbed_official 146:f64d43ff0c18 1312 {
mbed_official 146:f64d43ff0c18 1313 uint32_t DLY2 : 16; //!< [15:0] PDB Pulse-Out Delay 2
mbed_official 146:f64d43ff0c18 1314 uint32_t DLY1 : 16; //!< [31:16] PDB Pulse-Out Delay 1
mbed_official 146:f64d43ff0c18 1315 } B;
mbed_official 146:f64d43ff0c18 1316 } hw_pdb_pondly_t;
mbed_official 146:f64d43ff0c18 1317 #endif
mbed_official 146:f64d43ff0c18 1318
mbed_official 146:f64d43ff0c18 1319 /*!
mbed_official 146:f64d43ff0c18 1320 * @name Constants and macros for entire PDB_POnDLY register
mbed_official 146:f64d43ff0c18 1321 */
mbed_official 146:f64d43ff0c18 1322 //@{
mbed_official 146:f64d43ff0c18 1323 #define HW_PDB_POnDLY_COUNT (3U)
mbed_official 146:f64d43ff0c18 1324
mbed_official 146:f64d43ff0c18 1325 #define HW_PDB_POnDLY_ADDR(n) (REGS_PDB_BASE + 0x194U + (0x4U * n))
mbed_official 146:f64d43ff0c18 1326
mbed_official 146:f64d43ff0c18 1327 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1328 #define HW_PDB_POnDLY(n) (*(__IO hw_pdb_pondly_t *) HW_PDB_POnDLY_ADDR(n))
mbed_official 146:f64d43ff0c18 1329 #define HW_PDB_POnDLY_RD(n) (HW_PDB_POnDLY(n).U)
mbed_official 146:f64d43ff0c18 1330 #define HW_PDB_POnDLY_WR(n, v) (HW_PDB_POnDLY(n).U = (v))
mbed_official 146:f64d43ff0c18 1331 #define HW_PDB_POnDLY_SET(n, v) (HW_PDB_POnDLY_WR(n, HW_PDB_POnDLY_RD(n) | (v)))
mbed_official 146:f64d43ff0c18 1332 #define HW_PDB_POnDLY_CLR(n, v) (HW_PDB_POnDLY_WR(n, HW_PDB_POnDLY_RD(n) & ~(v)))
mbed_official 146:f64d43ff0c18 1333 #define HW_PDB_POnDLY_TOG(n, v) (HW_PDB_POnDLY_WR(n, HW_PDB_POnDLY_RD(n) ^ (v)))
mbed_official 146:f64d43ff0c18 1334 #endif
mbed_official 146:f64d43ff0c18 1335 //@}
mbed_official 146:f64d43ff0c18 1336
mbed_official 146:f64d43ff0c18 1337 /*
mbed_official 146:f64d43ff0c18 1338 * Constants & macros for individual PDB_POnDLY bitfields
mbed_official 146:f64d43ff0c18 1339 */
mbed_official 146:f64d43ff0c18 1340
mbed_official 146:f64d43ff0c18 1341 /*!
mbed_official 146:f64d43ff0c18 1342 * @name Register PDB_POnDLY, field DLY2[15:0] (RW)
mbed_official 146:f64d43ff0c18 1343 *
mbed_official 146:f64d43ff0c18 1344 * These bits specify the delay 2 value for the PDB Pulse-Out. Pulse-Out goes
mbed_official 146:f64d43ff0c18 1345 * low when the PDB counter is equal to the DLY2. Reading these bits returns the
mbed_official 146:f64d43ff0c18 1346 * value of internal register that is effective for the current PDB cycle.
mbed_official 146:f64d43ff0c18 1347 */
mbed_official 146:f64d43ff0c18 1348 //@{
mbed_official 146:f64d43ff0c18 1349 #define BP_PDB_POnDLY_DLY2 (0U) //!< Bit position for PDB_POnDLY_DLY2.
mbed_official 146:f64d43ff0c18 1350 #define BM_PDB_POnDLY_DLY2 (0x0000FFFFU) //!< Bit mask for PDB_POnDLY_DLY2.
mbed_official 146:f64d43ff0c18 1351 #define BS_PDB_POnDLY_DLY2 (16U) //!< Bit field size in bits for PDB_POnDLY_DLY2.
mbed_official 146:f64d43ff0c18 1352
mbed_official 146:f64d43ff0c18 1353 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1354 //! @brief Read current value of the PDB_POnDLY_DLY2 field.
mbed_official 146:f64d43ff0c18 1355 #define BR_PDB_POnDLY_DLY2(n) (HW_PDB_POnDLY(n).B.DLY2)
mbed_official 146:f64d43ff0c18 1356 #endif
mbed_official 146:f64d43ff0c18 1357
mbed_official 146:f64d43ff0c18 1358 //! @brief Format value for bitfield PDB_POnDLY_DLY2.
mbed_official 146:f64d43ff0c18 1359 #define BF_PDB_POnDLY_DLY2(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_POnDLY_DLY2), uint32_t) & BM_PDB_POnDLY_DLY2)
mbed_official 146:f64d43ff0c18 1360
mbed_official 146:f64d43ff0c18 1361 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1362 //! @brief Set the DLY2 field to a new value.
mbed_official 146:f64d43ff0c18 1363 #define BW_PDB_POnDLY_DLY2(n, v) (HW_PDB_POnDLY_WR(n, (HW_PDB_POnDLY_RD(n) & ~BM_PDB_POnDLY_DLY2) | BF_PDB_POnDLY_DLY2(v)))
mbed_official 146:f64d43ff0c18 1364 #endif
mbed_official 146:f64d43ff0c18 1365 //@}
mbed_official 146:f64d43ff0c18 1366
mbed_official 146:f64d43ff0c18 1367 /*!
mbed_official 146:f64d43ff0c18 1368 * @name Register PDB_POnDLY, field DLY1[31:16] (RW)
mbed_official 146:f64d43ff0c18 1369 *
mbed_official 146:f64d43ff0c18 1370 * These bits specify the delay 1 value for the PDB Pulse-Out. Pulse-Out goes
mbed_official 146:f64d43ff0c18 1371 * high when the PDB counter is equal to the DLY1. Reading these bits returns the
mbed_official 146:f64d43ff0c18 1372 * value of internal register that is effective for the current PDB cycle.
mbed_official 146:f64d43ff0c18 1373 */
mbed_official 146:f64d43ff0c18 1374 //@{
mbed_official 146:f64d43ff0c18 1375 #define BP_PDB_POnDLY_DLY1 (16U) //!< Bit position for PDB_POnDLY_DLY1.
mbed_official 146:f64d43ff0c18 1376 #define BM_PDB_POnDLY_DLY1 (0xFFFF0000U) //!< Bit mask for PDB_POnDLY_DLY1.
mbed_official 146:f64d43ff0c18 1377 #define BS_PDB_POnDLY_DLY1 (16U) //!< Bit field size in bits for PDB_POnDLY_DLY1.
mbed_official 146:f64d43ff0c18 1378
mbed_official 146:f64d43ff0c18 1379 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1380 //! @brief Read current value of the PDB_POnDLY_DLY1 field.
mbed_official 146:f64d43ff0c18 1381 #define BR_PDB_POnDLY_DLY1(n) (HW_PDB_POnDLY(n).B.DLY1)
mbed_official 146:f64d43ff0c18 1382 #endif
mbed_official 146:f64d43ff0c18 1383
mbed_official 146:f64d43ff0c18 1384 //! @brief Format value for bitfield PDB_POnDLY_DLY1.
mbed_official 146:f64d43ff0c18 1385 #define BF_PDB_POnDLY_DLY1(v) (__REG_VALUE_TYPE((__REG_VALUE_TYPE((v), uint32_t) << BP_PDB_POnDLY_DLY1), uint32_t) & BM_PDB_POnDLY_DLY1)
mbed_official 146:f64d43ff0c18 1386
mbed_official 146:f64d43ff0c18 1387 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1388 //! @brief Set the DLY1 field to a new value.
mbed_official 146:f64d43ff0c18 1389 #define BW_PDB_POnDLY_DLY1(n, v) (HW_PDB_POnDLY_WR(n, (HW_PDB_POnDLY_RD(n) & ~BM_PDB_POnDLY_DLY1) | BF_PDB_POnDLY_DLY1(v)))
mbed_official 146:f64d43ff0c18 1390 #endif
mbed_official 146:f64d43ff0c18 1391 //@}
mbed_official 146:f64d43ff0c18 1392
mbed_official 146:f64d43ff0c18 1393 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1394 // hw_pdb_t - module struct
mbed_official 146:f64d43ff0c18 1395 //-------------------------------------------------------------------------------------------
mbed_official 146:f64d43ff0c18 1396 /*!
mbed_official 146:f64d43ff0c18 1397 * @brief All PDB module registers.
mbed_official 146:f64d43ff0c18 1398 */
mbed_official 146:f64d43ff0c18 1399 #ifndef __LANGUAGE_ASM__
mbed_official 146:f64d43ff0c18 1400 #pragma pack(1)
mbed_official 146:f64d43ff0c18 1401 typedef struct _hw_pdb
mbed_official 146:f64d43ff0c18 1402 {
mbed_official 146:f64d43ff0c18 1403 __IO hw_pdb_sc_t SC; //!< [0x0] Status and Control register
mbed_official 146:f64d43ff0c18 1404 __IO hw_pdb_mod_t MOD; //!< [0x4] Modulus register
mbed_official 146:f64d43ff0c18 1405 __I hw_pdb_cnt_t CNT; //!< [0x8] Counter register
mbed_official 146:f64d43ff0c18 1406 __IO hw_pdb_idly_t IDLY; //!< [0xC] Interrupt Delay register
mbed_official 146:f64d43ff0c18 1407 struct {
mbed_official 146:f64d43ff0c18 1408 __IO hw_pdb_chnc1_t CHnC1; //!< [0x10] Channel n Control register 1
mbed_official 146:f64d43ff0c18 1409 __IO hw_pdb_chns_t CHnS; //!< [0x14] Channel n Status register
mbed_official 146:f64d43ff0c18 1410 __IO hw_pdb_chndly0_t CHnDLY0; //!< [0x18] Channel n Delay 0 register
mbed_official 146:f64d43ff0c18 1411 __IO hw_pdb_chndly1_t CHnDLY1; //!< [0x1C] Channel n Delay 1 register
mbed_official 146:f64d43ff0c18 1412 uint8_t _reserved0[24];
mbed_official 146:f64d43ff0c18 1413 } CH[2];
mbed_official 146:f64d43ff0c18 1414 uint8_t _reserved0[240];
mbed_official 146:f64d43ff0c18 1415 struct {
mbed_official 146:f64d43ff0c18 1416 __IO hw_pdb_dacintcn_t DACINTCn; //!< [0x150] DAC Interval Trigger n Control register
mbed_official 146:f64d43ff0c18 1417 __IO hw_pdb_dacintn_t DACINTn; //!< [0x154] DAC Interval n register
mbed_official 146:f64d43ff0c18 1418 } DAC[2];
mbed_official 146:f64d43ff0c18 1419 uint8_t _reserved1[48];
mbed_official 146:f64d43ff0c18 1420 __IO hw_pdb_poen_t POEN; //!< [0x190] Pulse-Out n Enable register
mbed_official 146:f64d43ff0c18 1421 __IO hw_pdb_pondly_t POnDLY[3]; //!< [0x194] Pulse-Out n Delay register
mbed_official 146:f64d43ff0c18 1422 } hw_pdb_t;
mbed_official 146:f64d43ff0c18 1423 #pragma pack()
mbed_official 146:f64d43ff0c18 1424
mbed_official 146:f64d43ff0c18 1425 //! @brief Macro to access all PDB registers.
mbed_official 146:f64d43ff0c18 1426 //! @return Reference (not a pointer) to the registers struct. To get a pointer to the struct,
mbed_official 146:f64d43ff0c18 1427 //! use the '&' operator, like <code>&HW_PDB</code>.
mbed_official 146:f64d43ff0c18 1428 #define HW_PDB (*(hw_pdb_t *) REGS_PDB_BASE)
mbed_official 146:f64d43ff0c18 1429 #endif
mbed_official 146:f64d43ff0c18 1430
mbed_official 146:f64d43ff0c18 1431 #endif // __HW_PDB_REGISTERS_H__
mbed_official 146:f64d43ff0c18 1432 // v22/130726/0.9
mbed_official 146:f64d43ff0c18 1433 // EOF