IAR PLATFORM_HEADER Configuration
Compiler and Platform specific definitions and typedefs for the IAR ARM C compiler. More...
         Macros | 
       |
| #define | HAL_HAS_INT64 | 
| 
         Denotes that this platform supports 64-bit data-types.
         
          More...
         
          | 
       |
| #define | _HAL_USE_COMMON_PGM_ | 
         Use the Master Program Memory Declarations from
         
          platform-common.h
         
         .
         
          More...
         
          | 
       |
| #define | PLATCOMMONOKTOINCLUDE | 
         Include
         
          platform-common.h
         
         last to pick up defaults and common definitions.
         
          More...
         
          | 
       |
| #define | MAIN_FUNCTION_PARAMETERS void | 
| 
         The kind of arguments the main function takes.
         
          More...
         
          | 
       |
| #define | MAIN_FUNCTION_ARGUMENTS | 
         Functions | 
       |
| void | _executeBarrierInstructions (void) | 
         Master Variable Types | 
       |
| 
         
          These are a set of typedefs to make the size of all variable declarations explicitly known.  | 
       |
| typedef bool | boolean | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef unsigned char | int8u | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef signed char | int8s | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef unsigned short | int16u | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef signed short | int16s | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef unsigned int | int32u | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef signed int | int32s | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef unsigned long long | int64u | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef signed long long | int64s | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
| typedef unsigned int | PointerType | 
| 
         A typedef to make the size of the variable explicitly known.
         
          More...
         
          | 
       |
         Miscellaneous Macros | 
       |
| void | halInternalAssertFailed (const char *filename, int linenumber) | 
         A prototype definition for use by the assert macro. (see
         
          hal/micro/micro.h
         
         )
         
          More...
         
          | 
       |
| void | halInternalResetWatchDog (void) | 
| 
         Macro to reset the watchdog timer. Note: be very very careful when using this as you can easily get into an infinite loop if you are not careful.
         
          More...
         
          | 
       |
| #define | BIGENDIAN_CPU false | 
| 
         A convenient method for code to know what endiannes processor it is running on. For the Cortex-M3, we are little endian.
         
          More...
         
          | 
       |
| #define | NTOHS (val) (__REV16(val)) | 
| 
         Define intrinsics for NTOHL and NTOHS to save code space by making endian.c compile to nothing.
         
          More...
         
          | 
       |
| #define | NTOHL (val) (__REV(val)) | 
| 
         A convenient method for code to know what endiannes processor it is running on. For the Cortex-M3, we are little endian.
         
          More...
         
          | 
       |
| #define | NO_STRIPPING __root | 
| 
         A friendlier name for the compiler's intrinsic for not stripping.
         
          More...
         
          | 
       |
| #define | EEPROM errorerror | 
| 
         A friendlier name for the compiler's intrinsic for eeprom reference.
         
          More...
         
          | 
       |
| #define | __SOURCEFILE__ __FILE__ | 
| 
         The
         
          SOURCEFILE
         
         macro is used by asserts to list the filename if it isn't otherwise defined, set it to the compiler intrinsic which specifies the whole filename and path of the sourcefile.
         
          More...
         
          | 
       |
| #define | assert (condition) | 
         A custom implementation of the C language assert macro. This macro implements the conditional evaluation and calls the function
         
          halInternalAssertFailed()
         
         . (see
         
          hal/micro/micro.h
         
         )
         
          More...
         
          | 
       |
| #define | halResetWatchdog () halInternalResetWatchDog () | 
| 
         A convenient method for code to know what endiannes processor it is running on. For the Cortex-M3, we are little endian.
         
          More...
         
          | 
       |
| #define | UNUSED | 
| 
         Declare a variable as unused to avoid a warning. Has no effect in IAR builds.
         
          More...
         
          | 
       |
| #define | SIGNED_ENUM | 
| 
         Some platforms need to cast enum values that have the high bit set.
         
          More...
         
          | 
       |
| #define | STACK_FILL_VALUE 0xCDCDCDCDU | 
| 
         Define the magic value that is interpreted by IAR C-SPY's Stack View.
         
          More...
         
          | 
       |
| #define | RAMFUNC __ramfunc | 
| 
         Define a generic RAM function identifier to a compiler specific one.
         
          More...
         
          | 
       |
| #define | NO_OPERATION () __NOP() | 
| 
         Define a generic no operation identifier to a compiler specific one.
         
          More...
         
          | 
       |
| #define | SET_REG_FIELD (reg, field, value) | 
| 
         A convenience macro that makes it easy to change the field of a register to any unsigned value.
         
          More...
         
          | 
       |
| #define | SET_CMSIS_REG (reg, mask, value) | 
| 
         A convenience macro that makes it easy to change a register using the provided mask(s) and value(s). Example: SET_CMSIS_REG(GPIO->P[1].CFGH, (_GPIO_P_CFGH_Px5_MASK | _GPIO_P_CFGH_Px6_MASK), (GPIO_P_CFGH_Px5_OUT | GPIO_P_CFGH_Px6_OUT));.
         
          More...
         
          | 
       |
| #define | SET_CMSIS_REG_FIELD (reg, field, value) | 
| 
         A convenience macro that makes it easy to change the field of a register, as defined in CMSIS Device headers, to any unsigned value. Example using EM35xx: SET_CMSIS_REG_FIELD(GPIO->P[0].CFGL, GPIO_P_CFGL_Px0, _GPIO_P_CFGL_Px0_OUT);.
         
          More...
         
          | 
       |
| #define | simulatedTimePasses () | 
| 
         Stub for code not running in simulation.
         
          More...
         
          | 
       |
| #define | simulatedTimePassesMs (x) | 
| 
         Stub for code not running in simulation.
         
          More...
         
          | 
       |
| #define | simulatedSerialTimePasses () | 
| 
         Stub for code not running in simulation.
         
          More...
         
          | 
       |
| #define | _HAL_USE_COMMON_DIVMOD_ | 
         Use the Divide and Modulus Operations from
         
          platform-common.h
         
         .
         
          More...
         
          | 
       |
| #define | VAR_AT_SEGMENT (__variableDeclaration, __segmentName) __variableDeclaration @ __segmentName | 
| 
         Provide a portable way to specify the segment where a variable lives.
         
          More...
         
          | 
       |
| #define | STRINGIZE (X) #X | 
| 
         Convinience macro for turning a token into a string.
         
          More...
         
          | 
       |
| #define | ALIGNMENT (X) _Pragma( STRINGIZE (data_alignment = X)) | 
| 
         Provide a portable way to align data.
         
          More...
         
          | 
       |
| #define | WEAK (__symbol) __weak __symbol | 
| 
         Provide a portable way to specify a symbol as weak.
         
          More...
         
          | 
       |
| #define | NO_INIT (__symbol) __no_init __symbol | 
| 
         Provide a portable way to specify a non initialized symbol.
         
          More...
         
          | 
       |
| #define | STATIC_ASSERT (__condition, __errorstr) static_assert(__condition, __errorstr) | 
| 
         Provide a portable way to specify a compile time assert.
         
          More...
         
          | 
       |
         Portable segment names | 
       |
| #define | __NO_INIT__ ".noinitlegacy" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __DEBUG_CHANNEL__ "DEBUG_CHANNEL" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __INTVEC__ ".intvec" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __CSTACK__ "CSTACK" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __RESETINFO__ "RESETINFO" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __DATA_INIT__ ".data_init" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __DATA__ ".data" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __BSS__ ".bss" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __CONST__ ".rodata" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __TEXT__ ".text" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __TEXTRW_INIT__ ".textrw_init" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __TEXTRW__ ".textrw" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __AAT__ "AAT" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __BAT__ "BAT" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __BAT_INIT__ "BAT" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __FAT__ "FAT" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __RAT__ "RAT" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __SIMEE__ "SIMEE" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __PSSTORE__ "PSSTORE" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __LONGTOKEN__ "LONGTOKEN" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __EMHEAP__ "EMHEAP" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __GUARD_REGION__ "GUARD_REGION" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __DLIB_PERTHREAD_INIT__ "__DLIB_PERTHREAD_init" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __DLIB_PERTHREAD_INITIALIZED_DATA__ "DLIB_PERTHREAD_INITIALIZED_DATA" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __DLIB_PERTHREAD_ZERO_DATA__ "DLIB_PERTHREAD_ZERO_DATA" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __INTERNAL_STORAGE__ "INTERNAL_STORAGE" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __LOCKBITS_IN_MAINFLASH__ "LOCKBITS_IN_MAINFLASH" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | __UNRETAINED_RAM__ "UNRETAINED_RAM" | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _NO_INIT_SEGMENT_BEGIN __segment_begin( __NO_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DEBUG_CHANNEL_SEGMENT_BEGIN __segment_begin( __DEBUG_CHANNEL__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _INTVEC_SEGMENT_BEGIN __segment_begin( __INTVEC__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _CSTACK_SEGMENT_BEGIN __segment_begin( __CSTACK__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _RESETINFO_SEGMENT_BEGIN __segment_begin( __RESETINFO__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DATA_INIT_SEGMENT_BEGIN __segment_begin( __DATA_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DATA_SEGMENT_BEGIN __segment_begin( __DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BSS_SEGMENT_BEGIN __segment_begin( __BSS__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _CONST_SEGMENT_BEGIN __segment_begin( __CONST__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXT_SEGMENT_BEGIN __segment_begin( __TEXT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXTRW_INIT_SEGMENT_BEGIN __segment_begin( __TEXTRW_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXTRW_SEGMENT_BEGIN __segment_begin( __TEXTRW__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _AAT_SEGMENT_BEGIN __segment_begin( __AAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BAT_SEGMENT_BEGIN __segment_begin( __BAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BAT_INIT_SEGMENT_BEGIN __segment_begin( __BAT_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _FAT_SEGMENT_BEGIN __segment_begin( __FAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _RAT_SEGMENT_BEGIN __segment_begin( __RAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _SIMEE_SEGMENT_BEGIN __segment_begin( __SIMEE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _PSSTORE_SEGMENT_BEGIN __segment_begin( __PSSTORE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _LONGTOKEN_SEGMENT_BEGIN __segment_begin( __LONGTOKEN__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _EMHEAP_SEGMENT_BEGIN __segment_begin( __EMHEAP__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _GUARD_REGION_SEGMENT_BEGIN __segment_begin( __GUARD_REGION__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_INIT_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_ZERO_DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _INTERNAL_STORAGE_SEGMENT_BEGIN __segment_begin( __INTERNAL_STORAGE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _LOCKBITS_IN_MAINFLASH_SEGMENT_BEGIN __segment_begin( __LOCKBITS_IN_MAINFLASH__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _UNRETAINED_RAM_SEGMENT_BEGIN __segment_begin( __UNRETAINED_RAM__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _NO_INIT_SEGMENT_END __segment_end( __NO_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DEBUG_CHANNEL_SEGMENT_END __segment_end( __DEBUG_CHANNEL__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _INTVEC_SEGMENT_END __segment_end( __INTVEC__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _CSTACK_SEGMENT_END __segment_end( __CSTACK__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _RESETINFO_SEGMENT_END __segment_end( __RESETINFO__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DATA_INIT_SEGMENT_END __segment_end( __DATA_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DATA_SEGMENT_END __segment_end( __DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BSS_SEGMENT_END __segment_end( __BSS__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _CONST_SEGMENT_END __segment_end( __CONST__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXT_SEGMENT_END __segment_end( __TEXT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXTRW_INIT_SEGMENT_END __segment_end( __TEXTRW_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXTRW_SEGMENT_END __segment_end( __TEXTRW__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _AAT_SEGMENT_END __segment_end( __AAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BAT_SEGMENT_END __segment_end( __BAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BAT_INIT_SEGMENT_END __segment_end( __BAT_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _FAT_SEGMENT_END __segment_end( __FAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _RAT_SEGMENT_END __segment_end( __RAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _SIMEE_SEGMENT_END __segment_end( __SIMEE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _PSSTORE_SEGMENT_END __segment_end( __PSSTORE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _LONGTOKEN_SEGMENT_END __segment_end( __LONGTOKEN__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _EMHEAP_SEGMENT_END __segment_end( __EMHEAP__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _GUARD_REGION_SEGMENT_END __segment_end( __GUARD_REGION__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_INIT_SEGMENT_END __segment_end( __DLIB_PERTHREAD_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_END __segment_end( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_END __segment_end( __DLIB_PERTHREAD_ZERO_DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _INTERNAL_STORAGE_SEGMENT_END __segment_end( __INTERNAL_STORAGE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _LOCKBITS_IN_MAINFLASH_SEGMENT_END __segment_end( __LOCKBITS_IN_MAINFLASH__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _UNRETAINED_RAM_SEGMENT_END __segment_end( __UNRETAINED_RAM__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _NO_INIT_SEGMENT_SIZE __segment_size( __NO_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DEBUG_CHANNEL_SEGMENT_SIZE __segment_size( __DEBUG_CHANNEL__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _INTVEC_SEGMENT_SIZE __segment_size( __INTVEC__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _CSTACK_SEGMENT_SIZE __segment_size( __CSTACK__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _RESETINFO_SEGMENT_SIZE __segment_size( __RESETINFO__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DATA_INIT_SEGMENT_SIZE __segment_size( __DATA_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DATA_SEGMENT_SIZE __segment_size( __DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BSS_SEGMENT_SIZE __segment_size( __BSS__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _CONST_SEGMENT_SIZE __segment_size( __CONST__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXT_SEGMENT_SIZE __segment_size( __TEXT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXTRW_INIT_SEGMENT_SIZE __segment_size( __TEXTRW_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _TEXTRW_SEGMENT_SIZE __segment_size( __TEXTRW__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _AAT_SEGMENT_SIZE __segment_size( __AAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BAT_SEGMENT_SIZE __segment_size( __BAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _BAT_INIT_SEGMENT_SIZE __segment_size( __BAT_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _FAT_SEGMENT_SIZE __segment_size( __FAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _RAT_SEGMENT_SIZE __segment_size( __RAT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _SIMEE_SEGMENT_SIZE __segment_size( __SIMEE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _PSSTORE_SEGMENT_SIZE __segment_size( __PSSTORE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _LONGTOKEN_SEGMENT_SIZE __segment_size( __LONGTOKEN__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _EMHEAP_SEGMENT_SIZE __segment_size( __EMHEAP__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _GUARD_REGION_SEGMENT_SIZE __segment_size( __GUARD_REGION__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_INIT_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_INIT__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_ZERO_DATA__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _INTERNAL_STORAGE_SEGMENT_SIZE __segment_size( __INTERNAL_STORAGE__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _LOCKBITS_IN_MAINFLASH_SEGMENT_SIZE __segment_size( __LOCKBITS_IN_MAINFLASH__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
| #define | _UNRETAINED_RAM_SEGMENT_SIZE __segment_size( __UNRETAINED_RAM__ ) | 
| 
         Portable segment names.
         
          More...
         
          | 
       |
         External Declarations | 
       |
| 
          If the line below is uncommented we will use Ember memory APIs, otherwise, we will use the C Standard library (memset,memcpy,memmove) APIs. These are routines that are defined in certain header files that we don't want to include, e.g. stdlib.h  | 
       |
| int | abs (int I) | 
| 
         Returns the absolute value of I (also called the magnitude of I). That is, if I is negative, the result is the opposite of I, but if I is nonnegative the result is I.
         
          More...
         
          | 
       |
Detailed Description
Compiler and Platform specific definitions and typedefs for the IAR ARM C compiler.
- Note
 - 
       
iar.hshould be included first in all source files by setting the preprocessor macro PLATFORM_HEADER to point to it.iar.hautomatically includesplatform-common.h. 
      See
      
       iar.h
      
      and
      
       platform-common.h
      
      for source code.
     
Macro Definition Documentation
◆ __AAT__
| #define __AAT__ "AAT" | 
Portable segment names.
        Definition at line
        
         355
        
        of file
        
         iar.h
        
        .
       
◆ __BAT__
| #define __BAT__ "BAT" | 
Portable segment names.
        Definition at line
        
         356
        
        of file
        
         iar.h
        
        .
       
◆ __BAT_INIT__
| #define __BAT_INIT__ "BAT" | 
Portable segment names.
        Definition at line
        
         357
        
        of file
        
         iar.h
        
        .
       
◆ __BSS__
| #define __BSS__ ".bss" | 
Portable segment names.
        Definition at line
        
         350
        
        of file
        
         iar.h
        
        .
       
◆ __CONST__
| #define __CONST__ ".rodata" | 
Portable segment names.
        Definition at line
        
         351
        
        of file
        
         iar.h
        
        .
       
◆ __CSTACK__
| #define __CSTACK__ "CSTACK" | 
Portable segment names.
        Definition at line
        
         346
        
        of file
        
         iar.h
        
        .
       
◆ __DATA__
| #define __DATA__ ".data" | 
Portable segment names.
        Definition at line
        
         349
        
        of file
        
         iar.h
        
        .
       
◆ __DATA_INIT__
| #define __DATA_INIT__ ".data_init" | 
Portable segment names.
        Definition at line
        
         348
        
        of file
        
         iar.h
        
        .
       
◆ __DEBUG_CHANNEL__
| #define __DEBUG_CHANNEL__ "DEBUG_CHANNEL" | 
Portable segment names.
        Definition at line
        
         344
        
        of file
        
         iar.h
        
        .
       
◆ __DLIB_PERTHREAD_INIT__
| #define __DLIB_PERTHREAD_INIT__ "__DLIB_PERTHREAD_init" | 
Portable segment names.
        Definition at line
        
         365
        
        of file
        
         iar.h
        
        .
       
◆ __DLIB_PERTHREAD_INITIALIZED_DATA__
| #define __DLIB_PERTHREAD_INITIALIZED_DATA__ "DLIB_PERTHREAD_INITIALIZED_DATA" | 
Portable segment names.
        Definition at line
        
         366
        
        of file
        
         iar.h
        
        .
       
◆ __DLIB_PERTHREAD_ZERO_DATA__
| #define __DLIB_PERTHREAD_ZERO_DATA__ "DLIB_PERTHREAD_ZERO_DATA" | 
Portable segment names.
        Definition at line
        
         367
        
        of file
        
         iar.h
        
        .
       
◆ __EMHEAP__
| #define __EMHEAP__ "EMHEAP" | 
Portable segment names.
        Definition at line
        
         363
        
        of file
        
         iar.h
        
        .
       
◆ __FAT__
| #define __FAT__ "FAT" | 
Portable segment names.
        Definition at line
        
         358
        
        of file
        
         iar.h
        
        .
       
◆ __GUARD_REGION__
| #define __GUARD_REGION__ "GUARD_REGION" | 
Portable segment names.
        Definition at line
        
         364
        
        of file
        
         iar.h
        
        .
       
◆ __INTERNAL_STORAGE__
| #define __INTERNAL_STORAGE__ "INTERNAL_STORAGE" | 
Portable segment names.
        Definition at line
        
         368
        
        of file
        
         iar.h
        
        .
       
◆ __INTVEC__
| #define __INTVEC__ ".intvec" | 
Portable segment names.
        Definition at line
        
         345
        
        of file
        
         iar.h
        
        .
       
◆ __LOCKBITS_IN_MAINFLASH__
| #define __LOCKBITS_IN_MAINFLASH__ "LOCKBITS_IN_MAINFLASH" | 
Portable segment names.
        Definition at line
        
         369
        
        of file
        
         iar.h
        
        .
       
◆ __LONGTOKEN__
| #define __LONGTOKEN__ "LONGTOKEN" | 
Portable segment names.
        Definition at line
        
         362
        
        of file
        
         iar.h
        
        .
       
◆ __NO_INIT__
| #define __NO_INIT__ ".noinitlegacy" | 
Portable segment names.
        Definition at line
        
         341
        
        of file
        
         iar.h
        
        .
       
◆ __PSSTORE__
| #define __PSSTORE__ "PSSTORE" | 
Portable segment names.
        Definition at line
        
         361
        
        of file
        
         iar.h
        
        .
       
◆ __RAT__
| #define __RAT__ "RAT" | 
Portable segment names.
        Definition at line
        
         359
        
        of file
        
         iar.h
        
        .
       
◆ __RESETINFO__
| #define __RESETINFO__ "RESETINFO" | 
Portable segment names.
        Definition at line
        
         347
        
        of file
        
         iar.h
        
        .
       
◆ __SIMEE__
| #define __SIMEE__ "SIMEE" | 
Portable segment names.
        Definition at line
        
         360
        
        of file
        
         iar.h
        
        .
       
◆ __SOURCEFILE__
| #define __SOURCEFILE__ __FILE__ | 
The SOURCEFILE macro is used by asserts to list the filename if it isn't otherwise defined, set it to the compiler intrinsic which specifies the whole filename and path of the sourcefile.
        Definition at line
        
         143
        
        of file
        
         iar.h
        
        .
       
◆ __TEXT__
| #define __TEXT__ ".text" | 
Portable segment names.
        Definition at line
        
         352
        
        of file
        
         iar.h
        
        .
       
◆ __TEXTRW__
| #define __TEXTRW__ ".textrw" | 
Portable segment names.
        Definition at line
        
         354
        
        of file
        
         iar.h
        
        .
       
◆ __TEXTRW_INIT__
| #define __TEXTRW_INIT__ ".textrw_init" | 
Portable segment names.
        Definition at line
        
         353
        
        of file
        
         iar.h
        
        .
       
◆ __UNRETAINED_RAM__
| #define __UNRETAINED_RAM__ "UNRETAINED_RAM" | 
Portable segment names.
        Definition at line
        
         370
        
        of file
        
         iar.h
        
        .
       
◆ _AAT_SEGMENT_BEGIN
| #define _AAT_SEGMENT_BEGIN __segment_begin( __AAT__ ) | 
Portable segment names.
        Definition at line
        
         420
        
        of file
        
         iar.h
        
        .
       
◆ _AAT_SEGMENT_END
| #define _AAT_SEGMENT_END __segment_end( __AAT__ ) | 
Portable segment names.
        Definition at line
        
         449
        
        of file
        
         iar.h
        
        .
       
◆ _AAT_SEGMENT_SIZE
| #define _AAT_SEGMENT_SIZE __segment_size( __AAT__ ) | 
Portable segment names.
        Definition at line
        
         478
        
        of file
        
         iar.h
        
        .
       
◆ _BAT_INIT_SEGMENT_BEGIN
| #define _BAT_INIT_SEGMENT_BEGIN __segment_begin( __BAT_INIT__ ) | 
Portable segment names.
        Definition at line
        
         422
        
        of file
        
         iar.h
        
        .
       
◆ _BAT_INIT_SEGMENT_END
| #define _BAT_INIT_SEGMENT_END __segment_end( __BAT_INIT__ ) | 
Portable segment names.
        Definition at line
        
         451
        
        of file
        
         iar.h
        
        .
       
◆ _BAT_INIT_SEGMENT_SIZE
| #define _BAT_INIT_SEGMENT_SIZE __segment_size( __BAT_INIT__ ) | 
Portable segment names.
        Definition at line
        
         480
        
        of file
        
         iar.h
        
        .
       
◆ _BAT_SEGMENT_BEGIN
| #define _BAT_SEGMENT_BEGIN __segment_begin( __BAT__ ) | 
Portable segment names.
        Definition at line
        
         421
        
        of file
        
         iar.h
        
        .
       
◆ _BAT_SEGMENT_END
| #define _BAT_SEGMENT_END __segment_end( __BAT__ ) | 
Portable segment names.
        Definition at line
        
         450
        
        of file
        
         iar.h
        
        .
       
◆ _BAT_SEGMENT_SIZE
| #define _BAT_SEGMENT_SIZE __segment_size( __BAT__ ) | 
Portable segment names.
        Definition at line
        
         479
        
        of file
        
         iar.h
        
        .
       
◆ _BSS_SEGMENT_BEGIN
| #define _BSS_SEGMENT_BEGIN __segment_begin( __BSS__ ) | 
Portable segment names.
        Definition at line
        
         415
        
        of file
        
         iar.h
        
        .
       
◆ _BSS_SEGMENT_END
| #define _BSS_SEGMENT_END __segment_end( __BSS__ ) | 
Portable segment names.
        Definition at line
        
         444
        
        of file
        
         iar.h
        
        .
       
◆ _BSS_SEGMENT_SIZE
| #define _BSS_SEGMENT_SIZE __segment_size( __BSS__ ) | 
Portable segment names.
        Definition at line
        
         473
        
        of file
        
         iar.h
        
        .
       
◆ _CONST_SEGMENT_BEGIN
| #define _CONST_SEGMENT_BEGIN __segment_begin( __CONST__ ) | 
Portable segment names.
        Definition at line
        
         416
        
        of file
        
         iar.h
        
        .
       
◆ _CONST_SEGMENT_END
| #define _CONST_SEGMENT_END __segment_end( __CONST__ ) | 
Portable segment names.
        Definition at line
        
         445
        
        of file
        
         iar.h
        
        .
       
◆ _CONST_SEGMENT_SIZE
| #define _CONST_SEGMENT_SIZE __segment_size( __CONST__ ) | 
Portable segment names.
        Definition at line
        
         474
        
        of file
        
         iar.h
        
        .
       
◆ _CSTACK_SEGMENT_BEGIN
| #define _CSTACK_SEGMENT_BEGIN __segment_begin( __CSTACK__ ) | 
Portable segment names.
        Definition at line
        
         411
        
        of file
        
         iar.h
        
        .
       
◆ _CSTACK_SEGMENT_END
| #define _CSTACK_SEGMENT_END __segment_end( __CSTACK__ ) | 
Portable segment names.
        Definition at line
        
         440
        
        of file
        
         iar.h
        
        .
       
◆ _CSTACK_SEGMENT_SIZE
| #define _CSTACK_SEGMENT_SIZE __segment_size( __CSTACK__ ) | 
Portable segment names.
        Definition at line
        
         469
        
        of file
        
         iar.h
        
        .
       
◆ _DATA_INIT_SEGMENT_BEGIN
| #define _DATA_INIT_SEGMENT_BEGIN __segment_begin( __DATA_INIT__ ) | 
Portable segment names.
        Definition at line
        
         413
        
        of file
        
         iar.h
        
        .
       
◆ _DATA_INIT_SEGMENT_END
| #define _DATA_INIT_SEGMENT_END __segment_end( __DATA_INIT__ ) | 
Portable segment names.
        Definition at line
        
         442
        
        of file
        
         iar.h
        
        .
       
◆ _DATA_INIT_SEGMENT_SIZE
| #define _DATA_INIT_SEGMENT_SIZE __segment_size( __DATA_INIT__ ) | 
Portable segment names.
        Definition at line
        
         471
        
        of file
        
         iar.h
        
        .
       
◆ _DATA_SEGMENT_BEGIN
| #define _DATA_SEGMENT_BEGIN __segment_begin( __DATA__ ) | 
Portable segment names.
        Definition at line
        
         414
        
        of file
        
         iar.h
        
        .
       
◆ _DATA_SEGMENT_END
| #define _DATA_SEGMENT_END __segment_end( __DATA__ ) | 
Portable segment names.
        Definition at line
        
         443
        
        of file
        
         iar.h
        
        .
       
◆ _DATA_SEGMENT_SIZE
| #define _DATA_SEGMENT_SIZE __segment_size( __DATA__ ) | 
Portable segment names.
        Definition at line
        
         472
        
        of file
        
         iar.h
        
        .
       
◆ _DEBUG_CHANNEL_SEGMENT_BEGIN
| #define _DEBUG_CHANNEL_SEGMENT_BEGIN __segment_begin( __DEBUG_CHANNEL__ ) | 
Portable segment names.
        Definition at line
        
         409
        
        of file
        
         iar.h
        
        .
       
◆ _DEBUG_CHANNEL_SEGMENT_END
| #define _DEBUG_CHANNEL_SEGMENT_END __segment_end( __DEBUG_CHANNEL__ ) | 
Portable segment names.
        Definition at line
        
         438
        
        of file
        
         iar.h
        
        .
       
◆ _DEBUG_CHANNEL_SEGMENT_SIZE
| #define _DEBUG_CHANNEL_SEGMENT_SIZE __segment_size( __DEBUG_CHANNEL__ ) | 
Portable segment names.
        Definition at line
        
         467
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_INIT_SEGMENT_BEGIN
| #define _DLIB_PERTHREAD_INIT_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_INIT__ ) | 
Portable segment names.
        Definition at line
        
         430
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_INIT_SEGMENT_END
| #define _DLIB_PERTHREAD_INIT_SEGMENT_END __segment_end( __DLIB_PERTHREAD_INIT__ ) | 
Portable segment names.
        Definition at line
        
         459
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_INIT_SEGMENT_SIZE
| #define _DLIB_PERTHREAD_INIT_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_INIT__ ) | 
Portable segment names.
        Definition at line
        
         488
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_BEGIN
| #define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) | 
Portable segment names.
        Definition at line
        
         431
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_END
| #define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_END __segment_end( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) | 
Portable segment names.
        Definition at line
        
         460
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_SIZE
| #define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) | 
Portable segment names.
        Definition at line
        
         489
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_BEGIN
| #define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_ZERO_DATA__ ) | 
Portable segment names.
        Definition at line
        
         432
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_END
| #define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_END __segment_end( __DLIB_PERTHREAD_ZERO_DATA__ ) | 
Portable segment names.
        Definition at line
        
         461
        
        of file
        
         iar.h
        
        .
       
◆ _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_SIZE
| #define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_ZERO_DATA__ ) | 
Portable segment names.
        Definition at line
        
         490
        
        of file
        
         iar.h
        
        .
       
◆ _EMHEAP_SEGMENT_BEGIN
| #define _EMHEAP_SEGMENT_BEGIN __segment_begin( __EMHEAP__ ) | 
Portable segment names.
        Definition at line
        
         428
        
        of file
        
         iar.h
        
        .
       
◆ _EMHEAP_SEGMENT_END
| #define _EMHEAP_SEGMENT_END __segment_end( __EMHEAP__ ) | 
Portable segment names.
        Definition at line
        
         457
        
        of file
        
         iar.h
        
        .
       
◆ _EMHEAP_SEGMENT_SIZE
| #define _EMHEAP_SEGMENT_SIZE __segment_size( __EMHEAP__ ) | 
Portable segment names.
        Definition at line
        
         486
        
        of file
        
         iar.h
        
        .
       
◆ _FAT_SEGMENT_BEGIN
| #define _FAT_SEGMENT_BEGIN __segment_begin( __FAT__ ) | 
Portable segment names.
        Definition at line
        
         423
        
        of file
        
         iar.h
        
        .
       
◆ _FAT_SEGMENT_END
| #define _FAT_SEGMENT_END __segment_end( __FAT__ ) | 
Portable segment names.
        Definition at line
        
         452
        
        of file
        
         iar.h
        
        .
       
◆ _FAT_SEGMENT_SIZE
| #define _FAT_SEGMENT_SIZE __segment_size( __FAT__ ) | 
Portable segment names.
        Definition at line
        
         481
        
        of file
        
         iar.h
        
        .
       
◆ _GUARD_REGION_SEGMENT_BEGIN
| #define _GUARD_REGION_SEGMENT_BEGIN __segment_begin( __GUARD_REGION__ ) | 
Portable segment names.
        Definition at line
        
         429
        
        of file
        
         iar.h
        
        .
       
◆ _GUARD_REGION_SEGMENT_END
| #define _GUARD_REGION_SEGMENT_END __segment_end( __GUARD_REGION__ ) | 
Portable segment names.
        Definition at line
        
         458
        
        of file
        
         iar.h
        
        .
       
◆ _GUARD_REGION_SEGMENT_SIZE
| #define _GUARD_REGION_SEGMENT_SIZE __segment_size( __GUARD_REGION__ ) | 
Portable segment names.
        Definition at line
        
         487
        
        of file
        
         iar.h
        
        .
       
◆ _HAL_USE_COMMON_DIVMOD_
| #define _HAL_USE_COMMON_DIVMOD_ | 
        Use the Divide and Modulus Operations from
        
         platform-common.h
        
        .
       
        Definition at line
        
         283
        
        of file
        
         iar.h
        
        .
       
◆ _HAL_USE_COMMON_PGM_
| #define _HAL_USE_COMMON_PGM_ | 
        Use the Master Program Memory Declarations from
        
         platform-common.h
        
        .
       
        Definition at line
        
         102
        
        of file
        
         iar.h
        
        .
       
◆ _INTERNAL_STORAGE_SEGMENT_BEGIN
| #define _INTERNAL_STORAGE_SEGMENT_BEGIN __segment_begin( __INTERNAL_STORAGE__ ) | 
Portable segment names.
        Definition at line
        
         433
        
        of file
        
         iar.h
        
        .
       
◆ _INTERNAL_STORAGE_SEGMENT_END
| #define _INTERNAL_STORAGE_SEGMENT_END __segment_end( __INTERNAL_STORAGE__ ) | 
Portable segment names.
        Definition at line
        
         462
        
        of file
        
         iar.h
        
        .
       
◆ _INTERNAL_STORAGE_SEGMENT_SIZE
| #define _INTERNAL_STORAGE_SEGMENT_SIZE __segment_size( __INTERNAL_STORAGE__ ) | 
Portable segment names.
        Definition at line
        
         491
        
        of file
        
         iar.h
        
        .
       
◆ _INTVEC_SEGMENT_BEGIN
| #define _INTVEC_SEGMENT_BEGIN __segment_begin( __INTVEC__ ) | 
Portable segment names.
        Definition at line
        
         410
        
        of file
        
         iar.h
        
        .
       
◆ _INTVEC_SEGMENT_END
| #define _INTVEC_SEGMENT_END __segment_end( __INTVEC__ ) | 
Portable segment names.
        Definition at line
        
         439
        
        of file
        
         iar.h
        
        .
       
◆ _INTVEC_SEGMENT_SIZE
| #define _INTVEC_SEGMENT_SIZE __segment_size( __INTVEC__ ) | 
Portable segment names.
        Definition at line
        
         468
        
        of file
        
         iar.h
        
        .
       
◆ _LOCKBITS_IN_MAINFLASH_SEGMENT_BEGIN
| #define _LOCKBITS_IN_MAINFLASH_SEGMENT_BEGIN __segment_begin( __LOCKBITS_IN_MAINFLASH__ ) | 
Portable segment names.
        Definition at line
        
         434
        
        of file
        
         iar.h
        
        .
       
◆ _LOCKBITS_IN_MAINFLASH_SEGMENT_END
| #define _LOCKBITS_IN_MAINFLASH_SEGMENT_END __segment_end( __LOCKBITS_IN_MAINFLASH__ ) | 
Portable segment names.
        Definition at line
        
         463
        
        of file
        
         iar.h
        
        .
       
◆ _LOCKBITS_IN_MAINFLASH_SEGMENT_SIZE
| #define _LOCKBITS_IN_MAINFLASH_SEGMENT_SIZE __segment_size( __LOCKBITS_IN_MAINFLASH__ ) | 
Portable segment names.
        Definition at line
        
         492
        
        of file
        
         iar.h
        
        .
       
◆ _LONGTOKEN_SEGMENT_BEGIN
| #define _LONGTOKEN_SEGMENT_BEGIN __segment_begin( __LONGTOKEN__ ) | 
Portable segment names.
        Definition at line
        
         427
        
        of file
        
         iar.h
        
        .
       
◆ _LONGTOKEN_SEGMENT_END
| #define _LONGTOKEN_SEGMENT_END __segment_end( __LONGTOKEN__ ) | 
Portable segment names.
        Definition at line
        
         456
        
        of file
        
         iar.h
        
        .
       
◆ _LONGTOKEN_SEGMENT_SIZE
| #define _LONGTOKEN_SEGMENT_SIZE __segment_size( __LONGTOKEN__ ) | 
Portable segment names.
        Definition at line
        
         485
        
        of file
        
         iar.h
        
        .
       
◆ _NO_INIT_SEGMENT_BEGIN
| #define _NO_INIT_SEGMENT_BEGIN __segment_begin( __NO_INIT__ ) | 
Portable segment names.
        Definition at line
        
         408
        
        of file
        
         iar.h
        
        .
       
◆ _NO_INIT_SEGMENT_END
| #define _NO_INIT_SEGMENT_END __segment_end( __NO_INIT__ ) | 
Portable segment names.
        Definition at line
        
         437
        
        of file
        
         iar.h
        
        .
       
◆ _NO_INIT_SEGMENT_SIZE
| #define _NO_INIT_SEGMENT_SIZE __segment_size( __NO_INIT__ ) | 
Portable segment names.
        Definition at line
        
         466
        
        of file
        
         iar.h
        
        .
       
◆ _PSSTORE_SEGMENT_BEGIN
| #define _PSSTORE_SEGMENT_BEGIN __segment_begin( __PSSTORE__ ) | 
Portable segment names.
        Definition at line
        
         426
        
        of file
        
         iar.h
        
        .
       
◆ _PSSTORE_SEGMENT_END
| #define _PSSTORE_SEGMENT_END __segment_end( __PSSTORE__ ) | 
Portable segment names.
        Definition at line
        
         455
        
        of file
        
         iar.h
        
        .
       
◆ _PSSTORE_SEGMENT_SIZE
| #define _PSSTORE_SEGMENT_SIZE __segment_size( __PSSTORE__ ) | 
Portable segment names.
        Definition at line
        
         484
        
        of file
        
         iar.h
        
        .
       
◆ _RAT_SEGMENT_BEGIN
| #define _RAT_SEGMENT_BEGIN __segment_begin( __RAT__ ) | 
Portable segment names.
        Definition at line
        
         424
        
        of file
        
         iar.h
        
        .
       
◆ _RAT_SEGMENT_END
| #define _RAT_SEGMENT_END __segment_end( __RAT__ ) | 
Portable segment names.
        Definition at line
        
         453
        
        of file
        
         iar.h
        
        .
       
◆ _RAT_SEGMENT_SIZE
| #define _RAT_SEGMENT_SIZE __segment_size( __RAT__ ) | 
Portable segment names.
        Definition at line
        
         482
        
        of file
        
         iar.h
        
        .
       
◆ _RESETINFO_SEGMENT_BEGIN
| #define _RESETINFO_SEGMENT_BEGIN __segment_begin( __RESETINFO__ ) | 
Portable segment names.
        Definition at line
        
         412
        
        of file
        
         iar.h
        
        .
       
◆ _RESETINFO_SEGMENT_END
| #define _RESETINFO_SEGMENT_END __segment_end( __RESETINFO__ ) | 
Portable segment names.
        Definition at line
        
         441
        
        of file
        
         iar.h
        
        .
       
◆ _RESETINFO_SEGMENT_SIZE
| #define _RESETINFO_SEGMENT_SIZE __segment_size( __RESETINFO__ ) | 
Portable segment names.
        Definition at line
        
         470
        
        of file
        
         iar.h
        
        .
       
◆ _SIMEE_SEGMENT_BEGIN
| #define _SIMEE_SEGMENT_BEGIN __segment_begin( __SIMEE__ ) | 
Portable segment names.
        Definition at line
        
         425
        
        of file
        
         iar.h
        
        .
       
◆ _SIMEE_SEGMENT_END
| #define _SIMEE_SEGMENT_END __segment_end( __SIMEE__ ) | 
Portable segment names.
        Definition at line
        
         454
        
        of file
        
         iar.h
        
        .
       
◆ _SIMEE_SEGMENT_SIZE
| #define _SIMEE_SEGMENT_SIZE __segment_size( __SIMEE__ ) | 
Portable segment names.
        Definition at line
        
         483
        
        of file
        
         iar.h
        
        .
       
◆ _TEXT_SEGMENT_BEGIN
| #define _TEXT_SEGMENT_BEGIN __segment_begin( __TEXT__ ) | 
Portable segment names.
        Definition at line
        
         417
        
        of file
        
         iar.h
        
        .
       
◆ _TEXT_SEGMENT_END
| #define _TEXT_SEGMENT_END __segment_end( __TEXT__ ) | 
Portable segment names.
        Definition at line
        
         446
        
        of file
        
         iar.h
        
        .
       
◆ _TEXT_SEGMENT_SIZE
| #define _TEXT_SEGMENT_SIZE __segment_size( __TEXT__ ) | 
Portable segment names.
        Definition at line
        
         475
        
        of file
        
         iar.h
        
        .
       
◆ _TEXTRW_INIT_SEGMENT_BEGIN
| #define _TEXTRW_INIT_SEGMENT_BEGIN __segment_begin( __TEXTRW_INIT__ ) | 
Portable segment names.
        Definition at line
        
         418
        
        of file
        
         iar.h
        
        .
       
◆ _TEXTRW_INIT_SEGMENT_END
| #define _TEXTRW_INIT_SEGMENT_END __segment_end( __TEXTRW_INIT__ ) | 
Portable segment names.
        Definition at line
        
         447
        
        of file
        
         iar.h
        
        .
       
◆ _TEXTRW_INIT_SEGMENT_SIZE
| #define _TEXTRW_INIT_SEGMENT_SIZE __segment_size( __TEXTRW_INIT__ ) | 
Portable segment names.
        Definition at line
        
         476
        
        of file
        
         iar.h
        
        .
       
◆ _TEXTRW_SEGMENT_BEGIN
| #define _TEXTRW_SEGMENT_BEGIN __segment_begin( __TEXTRW__ ) | 
Portable segment names.
        Definition at line
        
         419
        
        of file
        
         iar.h
        
        .
       
◆ _TEXTRW_SEGMENT_END
| #define _TEXTRW_SEGMENT_END __segment_end( __TEXTRW__ ) | 
Portable segment names.
        Definition at line
        
         448
        
        of file
        
         iar.h
        
        .
       
◆ _TEXTRW_SEGMENT_SIZE
| #define _TEXTRW_SEGMENT_SIZE __segment_size( __TEXTRW__ ) | 
Portable segment names.
        Definition at line
        
         477
        
        of file
        
         iar.h
        
        .
       
◆ _UNRETAINED_RAM_SEGMENT_BEGIN
| #define _UNRETAINED_RAM_SEGMENT_BEGIN __segment_begin( __UNRETAINED_RAM__ ) | 
Portable segment names.
        Definition at line
        
         435
        
        of file
        
         iar.h
        
        .
       
◆ _UNRETAINED_RAM_SEGMENT_END
| #define _UNRETAINED_RAM_SEGMENT_END __segment_end( __UNRETAINED_RAM__ ) | 
Portable segment names.
        Definition at line
        
         464
        
        of file
        
         iar.h
        
        .
       
◆ _UNRETAINED_RAM_SEGMENT_SIZE
| #define _UNRETAINED_RAM_SEGMENT_SIZE __segment_size( __UNRETAINED_RAM__ ) | 
Portable segment names.
        Definition at line
        
         493
        
        of file
        
         iar.h
        
        .
       
◆ ALIGNMENT
| #define ALIGNMENT | ( | 
           
            X
           
           | 
          ) | _Pragma( STRINGIZE (data_alignment = X)) | 
Provide a portable way to align data.
        Definition at line
        
         300
        
        of file
        
         iar.h
        
        .
       
◆ assert
| #define assert | ( | 
           
            condition
           
           | 
          ) | 
        A custom implementation of the C language assert macro. This macro implements the conditional evaluation and calls the function
        
         halInternalAssertFailed()
        
        . (see
        
         hal/micro/micro.h
        
        )
       
        Definition at line
        
         160
        
        of file
        
         iar.h
        
        .
       
◆ BIGENDIAN_CPU
| #define BIGENDIAN_CPU false | 
A convenient method for code to know what endiannes processor it is running on. For the Cortex-M3, we are little endian.
        Definition at line
        
         115
        
        of file
        
         iar.h
        
        .
       
◆ EEPROM
| #define EEPROM errorerror | 
A friendlier name for the compiler's intrinsic for eeprom reference.
        Definition at line
        
         134
        
        of file
        
         iar.h
        
        .
       
◆ HAL_HAS_INT64
| #define HAL_HAS_INT64 | 
Denotes that this platform supports 64-bit data-types.
        Definition at line
        
         97
        
        of file
        
         iar.h
        
        .
       
◆ halResetWatchdog
| #define halResetWatchdog | ( | 
           
           
           | 
          ) | halInternalResetWatchDog () | 
A convenient method for code to know what endiannes processor it is running on. For the Cortex-M3, we are little endian.
        Definition at line
        
         191
        
        of file
        
         iar.h
        
        .
       
◆ MAIN_FUNCTION_ARGUMENTS
| #define MAIN_FUNCTION_ARGUMENTS | 
        Definition at line
        
         544
        
        of file
        
         iar.h
        
        .
       
◆ MAIN_FUNCTION_PARAMETERS
| #define MAIN_FUNCTION_PARAMETERS void | 
The kind of arguments the main function takes.
        Definition at line
        
         543
        
        of file
        
         iar.h
        
        .
       
◆ NO_INIT
| #define NO_INIT | ( | 
           
            __symbol
           
           | 
          ) | __no_init __symbol | 
Provide a portable way to specify a non initialized symbol.
        Definition at line
        
         312
        
        of file
        
         iar.h
        
        .
       
◆ NO_OPERATION
| #define NO_OPERATION | ( | 
           
           
           | 
          ) | __NOP() | 
Define a generic no operation identifier to a compiler specific one.
        Definition at line
        
         224
        
        of file
        
         iar.h
        
        .
       
◆ NO_STRIPPING
| #define NO_STRIPPING __root | 
A friendlier name for the compiler's intrinsic for not stripping.
        Definition at line
        
         128
        
        of file
        
         iar.h
        
        .
       
◆ NTOHL
| #define NTOHL | ( | 
           
            val
           
           | 
          ) | (__REV(val)) | 
A convenient method for code to know what endiannes processor it is running on. For the Cortex-M3, we are little endian.
        Definition at line
        
         122
        
        of file
        
         iar.h
        
        .
       
◆ NTOHS
| #define NTOHS | ( | 
           
            val
           
           | 
          ) | (__REV16(val)) | 
Define intrinsics for NTOHL and NTOHS to save code space by making endian.c compile to nothing.
        Definition at line
        
         121
        
        of file
        
         iar.h
        
        .
       
◆ PLATCOMMONOKTOINCLUDE
| #define PLATCOMMONOKTOINCLUDE | 
        Include
        
         platform-common.h
        
        last to pick up defaults and common definitions.
       
        Definition at line
        
         536
        
        of file
        
         iar.h
        
        .
       
◆ RAMFUNC
| #define RAMFUNC __ramfunc | 
Define a generic RAM function identifier to a compiler specific one.
        Definition at line
        
         218
        
        of file
        
         iar.h
        
        .
       
◆ SET_CMSIS_REG
| #define SET_CMSIS_REG | ( | 
           
            reg,
           
           | 
         |
           
            mask,
           
           | 
         |||
           
            value
           
           | 
         |||
| ) | 
A convenience macro that makes it easy to change a register using the provided mask(s) and value(s). Example: SET_CMSIS_REG(GPIO->P[1].CFGH, (_GPIO_P_CFGH_Px5_MASK | _GPIO_P_CFGH_Px6_MASK), (GPIO_P_CFGH_Px5_OUT | GPIO_P_CFGH_Px6_OUT));.
        Definition at line
        
         247
        
        of file
        
         iar.h
        
        .
       
◆ SET_CMSIS_REG_FIELD
| #define SET_CMSIS_REG_FIELD | ( | 
           
            reg,
           
           | 
         |
           
            field,
           
           | 
         |||
           
            value
           
           | 
         |||
| ) | 
A convenience macro that makes it easy to change the field of a register, as defined in CMSIS Device headers, to any unsigned value. Example using EM35xx: SET_CMSIS_REG_FIELD(GPIO->P[0].CFGL, GPIO_P_CFGL_Px0, _GPIO_P_CFGL_Px0_OUT);.
        Definition at line
        
         258
        
        of file
        
         iar.h
        
        .
       
◆ SET_REG_FIELD
| #define SET_REG_FIELD | ( | 
           
            reg,
           
           | 
         |
           
            field,
           
           | 
         |||
           
            value
           
           | 
         |||
| ) | 
A convenience macro that makes it easy to change the field of a register to any unsigned value.
        Definition at line
        
         230
        
        of file
        
         iar.h
        
        .
       
◆ SIGNED_ENUM
| #define SIGNED_ENUM | 
Some platforms need to cast enum values that have the high bit set.
        Definition at line
        
         203
        
        of file
        
         iar.h
        
        .
       
◆ simulatedSerialTimePasses
| #define simulatedSerialTimePasses | ( | 
           
           
           | 
          ) | 
Stub for code not running in simulation.
        Definition at line
        
         278
        
        of file
        
         iar.h
        
        .
       
◆ simulatedTimePasses
| #define simulatedTimePasses | ( | 
           
           
           | 
          ) | 
Stub for code not running in simulation.
        Definition at line
        
         268
        
        of file
        
         iar.h
        
        .
       
◆ simulatedTimePassesMs
| #define simulatedTimePassesMs | ( | 
           
            x
           
           | 
          ) | 
Stub for code not running in simulation.
        Definition at line
        
         273
        
        of file
        
         iar.h
        
        .
       
◆ STACK_FILL_VALUE
| #define STACK_FILL_VALUE 0xCDCDCDCDU | 
Define the magic value that is interpreted by IAR C-SPY's Stack View.
        Definition at line
        
         208
        
        of file
        
         iar.h
        
        .
       
◆ STATIC_ASSERT
| #define STATIC_ASSERT | ( | 
           
            __condition,
           
           | 
         |
           
            __errorstr
           
           | 
         |||
| ) | static_assert(__condition, __errorstr) | 
Provide a portable way to specify a compile time assert.
        Definition at line
        
         318
        
        of file
        
         iar.h
        
        .
       
◆ STRINGIZE
| #define STRINGIZE | ( | 
           
            X
           
           | 
          ) | #X | 
Convinience macro for turning a token into a string.
        Definition at line
        
         295
        
        of file
        
         iar.h
        
        .
       
◆ UNUSED
| #define UNUSED | 
Declare a variable as unused to avoid a warning. Has no effect in IAR builds.
        Definition at line
        
         198
        
        of file
        
         iar.h
        
        .
       
◆ VAR_AT_SEGMENT
| #define VAR_AT_SEGMENT | ( | 
           
            __variableDeclaration,
           
           | 
         |
           
            __segmentName
           
           | 
         |||
| ) | __variableDeclaration @ __segmentName | 
Provide a portable way to specify the segment where a variable lives.
        Definition at line
        
         289
        
        of file
        
         iar.h
        
        .
       
◆ WEAK
| #define WEAK | ( | 
           
            __symbol
           
           | 
          ) | __weak __symbol | 
Provide a portable way to specify a symbol as weak.
        Definition at line
        
         306
        
        of file
        
         iar.h
        
        .
       
Typedef Documentation
◆ boolean
| typedef bool boolean | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         82
        
        of file
        
         iar.h
        
        .
       
◆ int16s
| typedef signed short int16s | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         86
        
        of file
        
         iar.h
        
        .
       
◆ int16u
| typedef unsigned short int16u | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         85
        
        of file
        
         iar.h
        
        .
       
◆ int32s
| typedef signed int int32s | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         88
        
        of file
        
         iar.h
        
        .
       
◆ int32u
| typedef unsigned int int32u | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         87
        
        of file
        
         iar.h
        
        .
       
◆ int64s
| typedef signed long long int64s | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         90
        
        of file
        
         iar.h
        
        .
       
◆ int64u
| typedef unsigned long long int64u | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         89
        
        of file
        
         iar.h
        
        .
       
◆ int8s
| typedef signed char int8s | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         84
        
        of file
        
         iar.h
        
        .
       
◆ int8u
| typedef unsigned char int8u | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         83
        
        of file
        
         iar.h
        
        .
       
◆ PointerType
| typedef unsigned int PointerType | 
A typedef to make the size of the variable explicitly known.
        Definition at line
        
         91
        
        of file
        
         iar.h
        
        .
       
Function Documentation
◆ _executeBarrierInstructions()
| void _executeBarrierInstructions | ( | void | 
           
           
           | 
          ) | 
◆ abs()
| int abs | ( | int | 
           
            I
           
           | 
          ) | 
Returns the absolute value of I (also called the magnitude of I). That is, if I is negative, the result is the opposite of I, but if I is nonnegative the result is I.
- Parameters
 - 
         
IAn integer.  
- Returns
 - A nonnegative integer.
 
◆ halInternalAssertFailed()
| void halInternalAssertFailed | ( | const char * | 
           
            filename,
           
           | 
         
| int | 
           
            linenumber
           
           | 
         ||
| ) | 
        A prototype definition for use by the assert macro. (see
        
         hal/micro/micro.h
        
        )
       
◆ halInternalResetWatchDog()
| void halInternalResetWatchDog | ( | void | 
           
           
           | 
          ) | 
Macro to reset the watchdog timer. Note: be very very careful when using this as you can easily get into an infinite loop if you are not careful.