SAM3A4C Atmel Corporation, SAM3A4C Datasheet - Page 90

no-image

SAM3A4C

Manufacturer Part Number
SAM3A4C
Description
Manufacturer
Atmel Corporation
Datasheets
11.10 Intrinsic functions
90
90
SAM3X/A
SAM3X/A
ANSI cannot directly access some Cortex-M3 instructions. This section describes intrinsic func-
tions that can generate these instructions, provided by the CMIS and that might be provided by a
C compiler. If a C compiler does not support an appropriate intrinsic function, you might have to
use inline assembler to access some instructions.
The CMSIS provides the following intrinsic functions to generate instructions that ANSI cannot
directly access:
Table 11-14. CMSIS intrinsic functions to generate some Cortex-M3 instructions
The CMSIS also provides a number of functions for accessing the special registers using MRS
and MSR instructions
Table 11-15. CMSIS intrinsic functions to access the special registers
Instruction
CPSIE I
CPSID I
CPSIE F
CPSID F
ISB
DSB
DMB
REV
REV16
REVSH
RBIT
SEV
WFE
WFI
Special register
PRIMASK
FAULTMASK
BASEPRI
CONTROL
Access
Read
Write
Read
Write
Read
Write
Read
Write
CMSIS intrinsic function
void __enable_irq(void)
void __disable_irq(void)
void __enable_fault_irq(void)
void __disable_fault_irq(void)
void __ISB(void)
void __DSB(void)
void __DMB(void)
uint32_t __REV(uint32_t int value)
uint32_t __REV16(uint32_t int value)
uint32_t __REVSH(uint32_t int value)
uint32_t __RBIT(uint32_t int value)
void __SEV(void)
void __WFE(void)
void __WFI(void)
CMSIS function
uint32_t __get_PRIMASK (void)
void __set_PRIMASK (uint32_t value)
uint32_t __get_FAULTMASK (void)
void __set_FAULTMASK (uint32_t value)
uint32_t __get_BASEPRI (void)
void __set_BASEPRI (uint32_t value)
uint32_t __get_CONTROL (void)
void __set_CONTROL (uint32_t value)
11057A–ATARM–17-Feb-12
11057A–ATARM–17-Feb-12

Related parts for SAM3A4C