163 lines
8.6 KiB
C
163 lines
8.6 KiB
C
|
/*
|
||
|
* Copyright (c) 2010 - 2018, Nordic Semiconductor ASA
|
||
|
*
|
||
|
* All rights reserved.
|
||
|
*
|
||
|
* Redistribution and use in source and binary forms, with or without modification,
|
||
|
* are permitted provided that the following conditions are met:
|
||
|
*
|
||
|
* 1. Redistributions of source code must retain the above copyright notice, this
|
||
|
* list of conditions and the following disclaimer.
|
||
|
*
|
||
|
* 2. Redistributions in binary form, except as embedded into a Nordic
|
||
|
* Semiconductor ASA integrated circuit in a product or a software update for
|
||
|
* such product, must reproduce the above copyright notice, this list of
|
||
|
* conditions and the following disclaimer in the documentation and/or other
|
||
|
* materials provided with the distribution.
|
||
|
*
|
||
|
* 3. Neither the name of Nordic Semiconductor ASA nor the names of its
|
||
|
* contributors may be used to endorse or promote products derived from this
|
||
|
* software without specific prior written permission.
|
||
|
*
|
||
|
* 4. This software, with or without modification, must only be used with a
|
||
|
* Nordic Semiconductor ASA integrated circuit.
|
||
|
*
|
||
|
* 5. Any software provided in binary form under this license must not be reverse
|
||
|
* engineered, decompiled, modified and/or disassembled.
|
||
|
*
|
||
|
* THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
|
||
|
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||
|
* OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||
|
* DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
|
||
|
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||
|
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||
|
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||
|
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||
|
*
|
||
|
* @file nrf52.h
|
||
|
* @brief CMSIS HeaderFile
|
||
|
* @version 1
|
||
|
* @date 08. February 2019
|
||
|
* @note Generated by SVDConv V3.3.18 on Friday, 08.02.2019 16:48:11
|
||
|
* from File 'nrf52.svd',
|
||
|
* last modified on Friday, 08.02.2019 15:48:07
|
||
|
*/
|
||
|
|
||
|
|
||
|
|
||
|
/** @addtogroup Nordic Semiconductor
|
||
|
* @{
|
||
|
*/
|
||
|
|
||
|
|
||
|
/** @addtogroup nrf52
|
||
|
* @{
|
||
|
*/
|
||
|
|
||
|
|
||
|
#ifndef NRF52_H
|
||
|
#define NRF52_H
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#include <stdint.h>
|
||
|
|
||
|
// define empty to make original WDT struct work
|
||
|
#define __OM
|
||
|
#define __IM
|
||
|
#define __IOM
|
||
|
|
||
|
/* =========================================================================================================================== */
|
||
|
/* ================ WDT ================ */
|
||
|
/* =========================================================================================================================== */
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @brief Watchdog Timer (WDT)
|
||
|
*/
|
||
|
|
||
|
typedef struct { /*!< (@ 0x40010000) WDT Structure */
|
||
|
__OM uint32_t TASKS_START; /*!< (@ 0x00000000) Start the watchdog */
|
||
|
__IM uint32_t RESERVED[63];
|
||
|
__IOM uint32_t EVENTS_TIMEOUT; /*!< (@ 0x00000100) Watchdog timeout */
|
||
|
__IM uint32_t RESERVED1[128];
|
||
|
__IOM uint32_t INTENSET; /*!< (@ 0x00000304) Enable interrupt */
|
||
|
__IOM uint32_t INTENCLR; /*!< (@ 0x00000308) Disable interrupt */
|
||
|
__IM uint32_t RESERVED2[61];
|
||
|
__IM uint32_t RUNSTATUS; /*!< (@ 0x00000400) Run status */
|
||
|
__IM uint32_t REQSTATUS; /*!< (@ 0x00000404) Request status */
|
||
|
__IM uint32_t RESERVED3[63];
|
||
|
__IOM uint32_t CRV; /*!< (@ 0x00000504) Counter reload value */
|
||
|
__IOM uint32_t RREN; /*!< (@ 0x00000508) Enable register for reload request registers */
|
||
|
__IOM uint32_t CONFIG; /*!< (@ 0x0000050C) Configuration register */
|
||
|
__IM uint32_t RESERVED4[60];
|
||
|
__OM uint32_t RR[8]; /*!< (@ 0x00000600) Description collection[0]: Reload request 0 */
|
||
|
} NRF_WDT_Type; /*!< Size = 1568 (0x620) */
|
||
|
|
||
|
// simulator specific pointer and initialization function
|
||
|
extern NRF_WDT_Type *NRF_WDT;
|
||
|
void init_NRF_WDT();
|
||
|
|
||
|
|
||
|
/* =========================================================================================================================== */
|
||
|
/* ================ POWER ================ */
|
||
|
/* =========================================================================================================================== */
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @brief Power control (POWER)
|
||
|
*/
|
||
|
|
||
|
typedef struct { /*!< (@ 0x40000000) POWER Structure */
|
||
|
// __IM uint32_t RESERVED[30];
|
||
|
// __OM uint32_t TASKS_CONSTLAT; /*!< (@ 0x00000078) Enable constant latency mode */
|
||
|
// __OM uint32_t TASKS_LOWPWR; /*!< (@ 0x0000007C) Enable low power mode (variable latency) */
|
||
|
// __IM uint32_t RESERVED1[34];
|
||
|
// __IOM uint32_t EVENTS_POFWARN; /*!< (@ 0x00000108) Power failure warning */
|
||
|
// __IM uint32_t RESERVED2[2];
|
||
|
// __IOM uint32_t EVENTS_SLEEPENTER; /*!< (@ 0x00000114) CPU entered WFI/WFE sleep */
|
||
|
// __IOM uint32_t EVENTS_SLEEPEXIT; /*!< (@ 0x00000118) CPU exited WFI/WFE sleep */
|
||
|
// __IM uint32_t RESERVED3[122];
|
||
|
// __IOM uint32_t INTENSET; /*!< (@ 0x00000304) Enable interrupt */
|
||
|
// __IOM uint32_t INTENCLR; /*!< (@ 0x00000308) Disable interrupt */
|
||
|
// __IM uint32_t RESERVED4[61];
|
||
|
__IOM uint32_t RESETREAS; /*!< (@ 0x00000400) Reset reason */
|
||
|
// __IM uint32_t RESERVED5[9];
|
||
|
// __IM uint32_t RAMSTATUS; /*!< (@ 0x00000428) Deprecated register - RAM status register */
|
||
|
// __IM uint32_t RESERVED6[53];
|
||
|
// __OM uint32_t SYSTEMOFF; /*!< (@ 0x00000500) System OFF register */
|
||
|
// __IM uint32_t RESERVED7[3];
|
||
|
// __IOM uint32_t POFCON; /*!< (@ 0x00000510) Power failure comparator configuration */
|
||
|
// __IM uint32_t RESERVED8[2];
|
||
|
// __IOM uint32_t GPREGRET; /*!< (@ 0x0000051C) General purpose retention register */
|
||
|
// __IOM uint32_t GPREGRET2; /*!< (@ 0x00000520) General purpose retention register */
|
||
|
// __IOM uint32_t RAMON; /*!< (@ 0x00000524) Deprecated register - RAM on/off register (this
|
||
|
// register is retained) */
|
||
|
// __IM uint32_t RESERVED9[11];
|
||
|
// __IOM uint32_t RAMONB; /*!< (@ 0x00000554) Deprecated register - RAM on/off register (this
|
||
|
// register is retained) */
|
||
|
// __IM uint32_t RESERVED10[8];
|
||
|
// __IOM uint32_t DCDCEN; /*!< (@ 0x00000578) DC/DC enable register */
|
||
|
// __IM uint32_t RESERVED11[225];
|
||
|
// __IOM POWER_RAM_Type RAM[8]; /*!< (@ 0x00000900) Unspecified */
|
||
|
} NRF_POWER_Type; /*!< Size = 2432 (0x980) */
|
||
|
|
||
|
// simulator specific pointer and initialization function
|
||
|
extern NRF_POWER_Type *NRF_POWER;
|
||
|
void init_NRF_POWER();
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif /* NRF52_H */
|
||
|
|
||
|
|
||
|
/** @} */ /* End of group nrf52 */
|
||
|
|
||
|
/** @} */ /* End of group Nordic Semiconductor */
|