GPS Device
Loading...
Searching...
No Matches
arm_cortex_m4.h
Go to the documentation of this file.
1
21
27
28#ifndef ARM_CORTEX_M4_HEADER__
29#define ARM_CORTEX_M4_HEADER__
30
31#include <stdint.h>
32
39#define ADDR_NVIC_ISER (0xE000E100U)
40#define ADDR_NVIC_ICER (0xE000E180U)
41#define ADDR_NVIC_ISPR (0xE000E200U)
42#define ADDR_NVIC_ICPR (0xE000E280U)
43#define ADDR_NVIC_IABR (0xE000E300U)
44#define ADDR_NVIC_IPR (0xE000E400U)
45#define ADDR_NVIC_STIR (0xE000EF00U)
46#define ADDR_SYSTICK (0xE000E010U)
48
55
63typedef struct {
64 uint32_t volatile NVIC_ISER_[8];
66#define NVIC_ISER ((NVIC_ISER_REGDEF_ts*)ADDR_NVIC_ISER)
67
74typedef struct {
75 uint32_t volatile NVIC_ICER_[8];
77#define NVIC_ICER ((NVIC_ICER_REGDEF_ts*)ADDR_NVIC_ICER)
78
85typedef struct {
86 uint32_t volatile NVIC_ISPR_[8];
88#define NVIC_ISPR ((NVIC_ISPR_REGDEF_ts*)ADDR_NVIC_ISPR)
89
96typedef struct {
97 uint32_t volatile NVIC_ICPR_[8];
99#define NVIC_ICPR ((NVIC_ICPR_REGDEF_ts*)ADDR_NVIC_ICPR)
100
108typedef struct {
109 uint32_t volatile NVIC_IABR_[8];
111#define NVIC_IABR ((NVIC_IABR_REGDEF_ts*)ADDR_NVIC_IABR)
112
121typedef struct {
122 uint32_t volatile NVIC_IPR_[60];
124#define NVIC_IPR ((NVIC_IPR_REGDEF_ts*)ADDR_NVIC_IPR)
125
134typedef struct {
135 uint32_t volatile NVIC_STIR_;
137#define NVIC_STIR ((NVIC_STIR_REGDEF_ts*)ADDR_NVIC_STIR)
138
140
147
155typedef struct {
156 uint32_t volatile SYST_CSR;
157 uint32_t volatile SYST_RVR;
158 uint32_t volatile SYST_CVR;
159 uint32_t volatile SYST_CALIB;
161#define SYSTICK ((SYST_REGDEF_ts*)ADDR_SYSTICK)
162
172
176typedef enum {
179
183typedef enum {
186
195
197
198#endif
199
SYST_CALIB_te
Bit positions within the SysTick Calibration Value Register (SYST_CALIB).
SYST_CSR_te
Bit positions within the SysTick Control and Status Register (SYST_CSR).
SYST_CVR_te
Bit positions within the SysTick Current Value Register (SYST_CVR).
SYST_RVR_te
Bit positions within the SysTick Reload Value Register (SYST_RVR).
@ SYST_CALIB_TENMS
@ SYST_CALIB_SKEW
@ SYST_CALIB_NOREF
@ SYST_CSR_ENABLE
@ SYST_CSR_COUNTFLAG
@ SYST_CSR_TICKINT
@ SYST_CSR_CLKSOURCE
@ SYST_CVR_CURRENT
@ SYST_RVR_RELOAD
NVIC Interrupt Active Bit Registers (NVIC_IABR).
uint32_t volatile NVIC_IABR_[8]
NVIC Interrupt Clear-Enable Registers (NVIC_ICER).
uint32_t volatile NVIC_ICER_[8]
NVIC Interrupt Clear-Pending Registers (NVIC_ICPR).
uint32_t volatile NVIC_ICPR_[8]
NVIC Interrupt Priority Registers (NVIC_IPR).
uint32_t volatile NVIC_IPR_[60]
NVIC Interrupt Set-Enable Registers (NVIC_ISER).
uint32_t volatile NVIC_ISER_[8]
NVIC Interrupt Set-Pending Registers (NVIC_ISPR).
uint32_t volatile NVIC_ISPR_[8]
NVIC Software Trigger Interrupt Register (NVIC_STIR).
uint32_t volatile NVIC_STIR_
SysTick control and status register block.
uint32_t volatile SYST_RVR
uint32_t volatile SYST_CALIB
uint32_t volatile SYST_CVR
uint32_t volatile SYST_CSR