Loading...
Searching...
No Matches
cc26xx_cc13xx.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2016 Leon George
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
18
19#include <stdint.h>
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
28typedef volatile uint8_t reg8_t;
32typedef volatile uint16_t reg16_t;
36typedef volatile uint32_t reg32_t;
37
41typedef struct {
44} reg8_m4_t;
45
50
54typedef struct {
58
66typedef enum IRQn {
67 /****** Cortex-M4 Processor Exceptions Numbers ****************************/
78
79 /****** CC13x2 specific Interrupt Numbers *********************************/
92 I2S_IRQN = 12,
107 SW0_IRQN = 27,
114#ifdef CPU_VARIANT_X2
115 OSC_IRQN = 34,
116 AUX_TIMER2_IRQN = 35,
117 UART1_IRQN = 36,
118 BATMON_IRQN = 37,
119
120 IRQN_COUNT = (BATMON_IRQN + 1)
121#else
123#endif
124
126
131#define __MPU_PRESENT 1
132#define __NVIC_PRIO_BITS 3
133#define __Vendor_SysTickConfig 0
135
136#define RCOSC48M_FREQ 48000000
137#define RCOSC24M_FREQ 24000000
138
142#ifdef CPU_VARIANT_X2
143#include <core_cm4.h>
144#else
145#include <core_cm3.h>
146#endif
148
153#define FLASH_BASE 0x00000000
154#define PERIPH_BASE 0x40000000
155#define PERIPH_BASE_NONBUF 0x60000000
156#define ROM_HARD_API_BASE 0x10000048
157#define ROM_API_TABLE ((uint32_t *) 0x10000180)
159
164#define ADI_DIR 0x00000000
165#define ADI_SET 0x00000010
166#define ADI_CLR 0x00000020
167#define ADI_MASK4B 0x00000040
168#define ADI_MASK8B 0x00000060
169#define ADI_MASK16B 0x00000080
171
172#ifdef __cplusplus
173}
174#endif
175
volatile uint32_t reg32_t
Unsigned 32-bit register type.
reg16_t reg8_m8_t
Masked 8-bit register.
volatile uint16_t reg16_t
Unsigned 16-bit register type.
volatile uint8_t reg8_t
Unsigned 8-bit register type.
@ GPTIMER_0B_IRQN
32 Timer 0 subtimer B
@ UART0_IRQN
21 UART0 Rx and Tx
@ GPTIMER_2A_IRQN
35 Timer 2 subtimer A
@ AUX_ADC_IRQN
48 AUX ADC IRQ
@ GPTIMER_2B_IRQN
36 Timer 2 subtimer B
@ RF_CPE1_IRQN
18 RF Command and Packet Engine 1
@ AON_AUX_SWEV0_IRQN
22 Sensor Controller software event 0, through AON domain
@ GPTIMER_0A_IRQN
31 Timer 0 subtimer A
@ AUX_COMBO_IRQN
44 AUX combined event, directly to MCU domain
@ WATCHDOG_IRQN
30 Watchdog timer
@ AON_RTC_IRQN
20 AON RTC
@ PROG_IRQN
46 Dynamic Programmable interrupt (default source: PRCM)
@ GPTIMER_3A_IRQN
37 Timer 3 subtimer A
@ IRQN_COUNT
Number of peripheral IDs.
@ I2S_IRQN
28 I2S
@ FLASH_CTRL_IRQN
42 Flash controller
@ GPTIMER_3B_IRQN
38 Timer 3 subtimer B
@ UDMA_ERR_IRQN
41 uDMA Error
@ SSI1_IRQN
24 SSI1 Rx and Tx
@ AUX_COMPA_IRQN
47 AUX Comparator A
@ I2C_IRQN
17 I2C
@ RF_HW_IRQN
26 RF Core Hardware
@ RF_CPE0_IRQN
25 RF Command and Packet Engine 0
@ RF_CMD_ACK_IRQN
27 RF Core Command Acknowledge
@ UDMA_IRQN
40 uDMA Software
@ EDGE_DETECT_IRQN
16 AON edge detect
@ PKA_IRQN
19 PKA interrupt
@ SW0_IRQN
43 Software Event 0
@ GPTIMER_1B_IRQN
34 Timer 1 subtimer B
@ CRYPTO_IRQN
39 Crypto Core Result available
@ GPTIMER_1A_IRQN
33 Timer 1 subtimer A
@ AON_PRG0_IRQN
45 AON programmable 0
@ SSI0_IRQN
23 SSI0 Rx and Tx
@ AON_AUX_SWEV1_IRQN
29 Sensor Controller software event 1, through AON domain
@ TRNG_IRQN
49 TRNG event
enum IRQn IRQn_Type
Interrupt Number Definition.
IRQn
Interrupt Number Definition.
Definition cc2538.h:31
@ PendSV_IRQn
14 Cortex-M3 Pend SV Interrupt
Definition cc2538.h:41
@ MemoryManagement_IRQn
4 Cortex-M3 Memory Management Interrupt
Definition cc2538.h:36
@ SVCall_IRQn
11 Cortex-M3 SV Call Interrupt
Definition cc2538.h:39
@ UsageFault_IRQn
6 Cortex-M3 Usage Fault Interrupt
Definition cc2538.h:38
@ SysTick_IRQn
15 Cortex-M3 System Tick Interrupt
Definition cc2538.h:42
@ ResetHandler_IRQn
1 Reset Handler
Definition cc2538.h:33
@ BusFault_IRQn
5 Cortex-M3 Bus Fault Interrupt
Definition cc2538.h:37
@ DebugMonitor_IRQn
12 Cortex-M3 Debug Monitor Interrupt
Definition cc2538.h:40
@ HardFault_IRQn
3 Cortex-M3 Hard Fault Interrupt
Definition cc2538.h:35
@ NonMaskableInt_IRQn
2 Non Maskable Interrupt
Definition cc2538.h:34
Masked 32-bit register.
reg32_t HIGH
High 16-bit half.
reg32_t LOW
Low 16-bit half.
Masked 8-bit register.
reg8_t HIGH
High 4-bit half.
reg8_t LOW
Low 4-bit half.