| /* Copyright (c) 2016, 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: |
| * |
| * * Redistributions of source code must retain the above copyright notice, this |
| * list of conditions and the following disclaimer. |
| * |
| * * Redistributions in binary form 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. |
| * |
| * * 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. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER 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. |
| * |
| */ |
| |
| #ifndef _NRF52840_PERIPHERALS_H |
| #define _NRF52840_PERIPHERALS_H |
| |
| |
| /* Floating Point Unit */ |
| #define FPU_PRESENT |
| #define FPU_COUNT 1 |
| |
| /* Systick timer */ |
| #define SYSTICK_PRESENT |
| #define SYSTICK_COUNT 1 |
| |
| /* Software Interrupts */ |
| #define SWI_PRESENT |
| #define SWI_COUNT 6 |
| |
| /* Memory Watch Unit */ |
| #define MWU_PRESENT |
| #define MWU_COUNT 1 |
| |
| /* GPIO */ |
| #define GPIO_PRESENT |
| #define GPIO_COUNT 2 |
| |
| #define P0_PIN_NUM 32 |
| #define P1_PIN_NUM 16 |
| |
| /* ACL */ |
| #define ACL_PRESENT |
| |
| #define ACL_REGIONS_COUNT 8 |
| |
| /* Radio */ |
| #define RADIO_PRESENT |
| #define RADIO_COUNT 1 |
| |
| /* Accelerated Address Resolver */ |
| #define AAR_PRESENT |
| #define AAR_COUNT 1 |
| |
| #define AAR_MAX_IRK_NUM 16 |
| |
| /* AES Electronic CodeBook mode encryption */ |
| #define ECB_PRESENT |
| #define ECB_COUNT 1 |
| |
| /* AES CCM mode encryption */ |
| #define CCM_PRESENT |
| #define CCM_COUNT 1 |
| |
| /* NFC Tag */ |
| #define NFCT_PRESENT |
| #define NFCT_COUNT 1 |
| |
| /* Peripheral to Peripheral Interconnect */ |
| #define PPI_PRESENT |
| #define PPI_COUNT 1 |
| |
| #define PPI_CH_NUM 20 |
| #define PPI_GROUP_NUM 6 |
| #define PPI_FEATURE_FORKS_PRESENT |
| |
| /* Event Generator Unit */ |
| #define EGU_PRESENT |
| #define EGU_COUNT 6 |
| |
| #define EGU0_CH_NUM 16 |
| #define EGU1_CH_NUM 16 |
| #define EGU2_CH_NUM 16 |
| #define EGU3_CH_NUM 16 |
| #define EGU4_CH_NUM 16 |
| #define EGU5_CH_NUM 16 |
| |
| /* Timer/Counter */ |
| #define TIMER_PRESENT |
| #define TIMER_COUNT 5 |
| |
| #define TIMER0_MAX_SIZE 32 |
| #define TIMER1_MAX_SIZE 32 |
| #define TIMER2_MAX_SIZE 32 |
| #define TIMER3_MAX_SIZE 32 |
| #define TIMER4_MAX_SIZE 32 |
| |
| #define TIMER0_CC_NUM 4 |
| #define TIMER1_CC_NUM 4 |
| #define TIMER2_CC_NUM 4 |
| #define TIMER3_CC_NUM 6 |
| #define TIMER4_CC_NUM 6 |
| |
| /* Real Time Counter */ |
| #define RTC_PRESENT |
| #define RTC_COUNT 3 |
| |
| #define RTC0_CC_NUM 3 |
| #define RTC1_CC_NUM 4 |
| #define RTC2_CC_NUM 4 |
| |
| /* RNG */ |
| #define RNG_PRESENT |
| #define RNG_COUNT 1 |
| |
| /* Watchdog Timer */ |
| #define WDT_PRESENT |
| #define WDT_COUNT 1 |
| |
| /* Temperature Sensor */ |
| #define TEMP_PRESENT |
| #define TEMP_COUNT 1 |
| |
| /* Serial Peripheral Interface Master */ |
| #define SPI_PRESENT |
| #define SPI_COUNT 3 |
| |
| /* Serial Peripheral Interface Master with DMA */ |
| #define SPIM_PRESENT |
| #define SPIM_COUNT 4 |
| |
| #define SPIM0_MAX_DATARATE 8 |
| #define SPIM1_MAX_DATARATE 8 |
| #define SPIM2_MAX_DATARATE 8 |
| #define SPIM3_MAX_DATARATE 32 |
| |
| #define SPIM0_FEATURE_HARDWARE_CSN_PRESENT 0 |
| #define SPIM1_FEATURE_HARDWARE_CSN_PRESENT 0 |
| #define SPIM2_FEATURE_HARDWARE_CSN_PRESENT 0 |
| #define SPIM3_FEATURE_HARDWARE_CSN_PRESENT 1 |
| |
| /* Serial Peripheral Interface Slave with DMA*/ |
| #define SPIS_PRESENT |
| #define SPIS_COUNT 3 |
| |
| /* Two Wire Interface Master */ |
| #define TWI_PRESENT |
| #define TWI_COUNT 2 |
| |
| /* Two Wire Interface Master with DMA */ |
| #define TWIM_PRESENT |
| #define TWIM_COUNT 2 |
| |
| /* Two Wire Interface Slave with DMA */ |
| #define TWIS_PRESENT |
| #define TWIS_COUNT 2 |
| |
| /* Universal Asynchronous Receiver-Transmitter */ |
| #define UART_PRESENT |
| #define UART_COUNT 1 |
| |
| /* Universal Asynchronous Receiver-Transmitter with DMA */ |
| #define UARTE_PRESENT |
| #define UARTE_COUNT 2 |
| |
| /* Quadrature Decoder */ |
| #define QDEC_PRESENT |
| #define QDEC_COUNT 1 |
| |
| /* Successive Approximation Analog to Digital Converter */ |
| #define SAADC_PRESENT |
| #define SAADC_COUNT 1 |
| |
| /* GPIO Tasks and Events */ |
| #define GPIOTE_PRESENT |
| #define GPIOTE_COUNT 1 |
| |
| #define GPIOTE_CH_NUM 8 |
| |
| #define GPIOTE_FEATURE_SET_PRESENT |
| #define GPIOTE_FEATURE_CLR_PRESENT |
| |
| /* Low Power Comparator */ |
| #define LPCOMP_PRESENT |
| #define LPCOMP_COUNT 1 |
| |
| #define LPCOMP_REFSEL_RESOLUTION 16 |
| |
| #define LPCOMP_FEATURE_HYST_PRESENT |
| |
| /* Comparator */ |
| #define COMP_PRESENT |
| #define COMP_COUNT 1 |
| |
| /* Pulse Width Modulator */ |
| #define PWM_PRESENT |
| #define PWM_COUNT 4 |
| |
| #define PWM0_CH_NUM 4 |
| #define PWM1_CH_NUM 4 |
| #define PWM2_CH_NUM 4 |
| #define PWM3_CH_NUM 4 |
| |
| /* Pulse Density Modulator */ |
| #define PDM_PRESENT |
| #define PDM_COUNT 1 |
| |
| /* Inter-IC Sound Interface */ |
| #define I2S_PRESENT |
| #define I2S_COUNT 1 |
| |
| /* Universal Serial Bus Device */ |
| #define USBD_PRESENT |
| #define USBD_COUNT 1 |
| |
| /* ARM TrustZone Cryptocell 310 */ |
| #define CRYPTOCELL_PRESENT |
| #define CRYPTOCELL_COUNT 1 |
| |
| /* Quad SPI */ |
| #define QSPI_PRESENT |
| #define QSPI_COUNT 1 |
| |
| #endif // _NRF52840_PERIPHERALS_H |