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 | _HAL_USE_COMMON_MEMUTILS_ |
If the line below is uncommented we will use Ember memory APIs, otherwise, we will use the C Standard library (memset,memcpy,memmove) APIs.
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 | __attribute__ (...) |
Define
attribute
to nothing since it isn't handled by IAR.
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 () __no_operation() |
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 value.
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 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__ ".noinit" |
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 | __APP_RAM__ "APP_RAM" |
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 | __NVM__ "NVM" |
Portable segment names.
More...
|
|
#define | __SIMEE__ "SIMEE" |
Portable segment names.
More...
|
|
#define | __PSSTORE__ "PSSTORE" |
Portable segment names.
More...
|
|
#define | __EMHEAP__ "EMHEAP" |
Portable segment names.
More...
|
|
#define | __EMHEAP_OVERLAY__ "EMHEAP_overlay" |
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 | __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 | _APP_RAM_SEGMENT_BEGIN __segment_begin( __APP_RAM__ ) |
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 | _NVM_SEGMENT_BEGIN __segment_begin( __NVM__ ) |
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 | _EMHEAP_SEGMENT_BEGIN __segment_begin( __EMHEAP__ ) |
Portable segment names.
More...
|
|
#define | _EMHEAP_OVERLAY_SEGMENT_BEGIN __segment_begin( __EMHEAP_OVERLAY__ ) |
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 | _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 | _APP_RAM_SEGMENT_END __segment_end( __APP_RAM__ ) |
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 | _NVM_SEGMENT_END __segment_end( __NVM__ ) |
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 | _EMHEAP_SEGMENT_END __segment_end( __EMHEAP__ ) |
Portable segment names.
More...
|
|
#define | _EMHEAP_OVERLAY_SEGMENT_END __segment_end( __EMHEAP_OVERLAY__ ) |
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 | _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 | _APP_RAM_SEGMENT_SIZE __segment_size( __APP_RAM__ ) |
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 | _NVM_SEGMENT_SIZE __segment_size( __NVM__ ) |
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 | _EMHEAP_SEGMENT_SIZE __segment_size( __EMHEAP__ ) |
Portable segment names.
More...
|
|
#define | _EMHEAP_OVERLAY_SEGMENT_SIZE __segment_size( __EMHEAP_OVERLAY__ ) |
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 | _UNRETAINED_RAM_SEGMENT_SIZE __segment_size( __UNRETAINED_RAM__ ) |
Portable segment names.
More...
|
|
External Declarations |
|
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.h
should be included first in all source files by setting the preprocessor macro PLATFORM_HEADER to point to it.iar.h
automatically includesplatform-common.h
.
See
iar.h
and
platform-common.h
for source code.
Macro Definition Documentation
#define __AAT__ "AAT" |
Portable segment names.
Definition at line
347
of file
iar.h
.
#define __APP_RAM__ "APP_RAM" |
Portable segment names.
Definition at line
342
of file
iar.h
.
#define __attribute__ | ( |
...
|
) |
Define attribute to nothing since it isn't handled by IAR.
Definition at line
211
of file
iar.h
.
#define __BAT__ "BAT" |
Portable segment names.
Definition at line
348
of file
iar.h
.
#define __BAT_INIT__ "BAT" |
Portable segment names.
Definition at line
349
of file
iar.h
.
#define __BSS__ ".bss" |
Portable segment names.
Definition at line
341
of file
iar.h
.
#define __CONST__ ".rodata" |
Portable segment names.
Definition at line
343
of file
iar.h
.
#define __CSTACK__ "CSTACK" |
Portable segment names.
Definition at line
337
of file
iar.h
.
#define __DATA__ ".data" |
Portable segment names.
Definition at line
340
of file
iar.h
.
#define __DATA_INIT__ ".data_init" |
Portable segment names.
Definition at line
339
of file
iar.h
.
#define __DEBUG_CHANNEL__ "DEBUG_CHANNEL" |
Portable segment names.
Definition at line
335
of file
iar.h
.
#define __DLIB_PERTHREAD_INIT__ "__DLIB_PERTHREAD_init" |
Portable segment names.
Definition at line
358
of file
iar.h
.
#define __DLIB_PERTHREAD_INITIALIZED_DATA__ "DLIB_PERTHREAD_INITIALIZED_DATA" |
Portable segment names.
Definition at line
359
of file
iar.h
.
#define __DLIB_PERTHREAD_ZERO_DATA__ "DLIB_PERTHREAD_ZERO_DATA" |
Portable segment names.
Definition at line
360
of file
iar.h
.
#define __EMHEAP__ "EMHEAP" |
Portable segment names.
Definition at line
355
of file
iar.h
.
#define __EMHEAP_OVERLAY__ "EMHEAP_overlay" |
Portable segment names.
Definition at line
356
of file
iar.h
.
#define __FAT__ "FAT" |
Portable segment names.
Definition at line
350
of file
iar.h
.
#define __GUARD_REGION__ "GUARD_REGION" |
Portable segment names.
Definition at line
357
of file
iar.h
.
#define __INTERNAL_STORAGE__ "INTERNAL_STORAGE" |
Portable segment names.
Definition at line
361
of file
iar.h
.
#define __INTVEC__ ".intvec" |
Portable segment names.
Definition at line
336
of file
iar.h
.
#define __NO_INIT__ ".noinit" |
Portable segment names.
Definition at line
334
of file
iar.h
.
#define __NVM__ "NVM" |
Portable segment names.
Definition at line
352
of file
iar.h
.
#define __PSSTORE__ "PSSTORE" |
Portable segment names.
Definition at line
354
of file
iar.h
.
#define __RAT__ "RAT" |
Portable segment names.
Definition at line
351
of file
iar.h
.
#define __RESETINFO__ "RESETINFO" |
Portable segment names.
Definition at line
338
of file
iar.h
.
#define __SIMEE__ "SIMEE" |
Portable segment names.
Definition at line
353
of file
iar.h
.
#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
157
of file
iar.h
.
#define __TEXT__ ".text" |
Portable segment names.
Definition at line
344
of file
iar.h
.
#define __TEXTRW__ ".textrw" |
Portable segment names.
Definition at line
346
of file
iar.h
.
#define __TEXTRW_INIT__ ".textrw_init" |
Portable segment names.
Definition at line
345
of file
iar.h
.
#define __UNRETAINED_RAM__ "UNRETAINED_RAM" |
Portable segment names.
Definition at line
362
of file
iar.h
.
#define _AAT_SEGMENT_BEGIN __segment_begin( __AAT__ ) |
Portable segment names.
Definition at line
414
of file
iar.h
.
#define _AAT_SEGMENT_END __segment_end( __AAT__ ) |
Portable segment names.
Definition at line
444
of file
iar.h
.
#define _AAT_SEGMENT_SIZE __segment_size( __AAT__ ) |
Portable segment names.
Definition at line
474
of file
iar.h
.
#define _APP_RAM_SEGMENT_BEGIN __segment_begin( __APP_RAM__ ) |
Portable segment names.
Definition at line
409
of file
iar.h
.
#define _APP_RAM_SEGMENT_END __segment_end( __APP_RAM__ ) |
Portable segment names.
Definition at line
439
of file
iar.h
.
#define _APP_RAM_SEGMENT_SIZE __segment_size( __APP_RAM__ ) |
Portable segment names.
Definition at line
469
of file
iar.h
.
#define _BAT_INIT_SEGMENT_BEGIN __segment_begin( __BAT_INIT__ ) |
Portable segment names.
Definition at line
416
of file
iar.h
.
#define _BAT_INIT_SEGMENT_END __segment_end( __BAT_INIT__ ) |
Portable segment names.
Definition at line
446
of file
iar.h
.
#define _BAT_INIT_SEGMENT_SIZE __segment_size( __BAT_INIT__ ) |
Portable segment names.
Definition at line
476
of file
iar.h
.
#define _BAT_SEGMENT_BEGIN __segment_begin( __BAT__ ) |
Portable segment names.
Definition at line
415
of file
iar.h
.
#define _BAT_SEGMENT_END __segment_end( __BAT__ ) |
Portable segment names.
Definition at line
445
of file
iar.h
.
#define _BAT_SEGMENT_SIZE __segment_size( __BAT__ ) |
Portable segment names.
Definition at line
475
of file
iar.h
.
#define _BSS_SEGMENT_BEGIN __segment_begin( __BSS__ ) |
Portable segment names.
Definition at line
408
of file
iar.h
.
#define _BSS_SEGMENT_END __segment_end( __BSS__ ) |
Portable segment names.
Definition at line
438
of file
iar.h
.
#define _BSS_SEGMENT_SIZE __segment_size( __BSS__ ) |
Portable segment names.
Definition at line
468
of file
iar.h
.
#define _CONST_SEGMENT_BEGIN __segment_begin( __CONST__ ) |
Portable segment names.
Definition at line
410
of file
iar.h
.
#define _CONST_SEGMENT_END __segment_end( __CONST__ ) |
Portable segment names.
Definition at line
440
of file
iar.h
.
#define _CONST_SEGMENT_SIZE __segment_size( __CONST__ ) |
Portable segment names.
Definition at line
470
of file
iar.h
.
#define _CSTACK_SEGMENT_BEGIN __segment_begin( __CSTACK__ ) |
Portable segment names.
Definition at line
404
of file
iar.h
.
#define _CSTACK_SEGMENT_END __segment_end( __CSTACK__ ) |
Portable segment names.
Definition at line
434
of file
iar.h
.
#define _CSTACK_SEGMENT_SIZE __segment_size( __CSTACK__ ) |
Portable segment names.
Definition at line
464
of file
iar.h
.
#define _DATA_INIT_SEGMENT_BEGIN __segment_begin( __DATA_INIT__ ) |
Portable segment names.
Definition at line
406
of file
iar.h
.
#define _DATA_INIT_SEGMENT_END __segment_end( __DATA_INIT__ ) |
Portable segment names.
Definition at line
436
of file
iar.h
.
#define _DATA_INIT_SEGMENT_SIZE __segment_size( __DATA_INIT__ ) |
Portable segment names.
Definition at line
466
of file
iar.h
.
#define _DATA_SEGMENT_BEGIN __segment_begin( __DATA__ ) |
Portable segment names.
Definition at line
407
of file
iar.h
.
#define _DATA_SEGMENT_END __segment_end( __DATA__ ) |
Portable segment names.
Definition at line
437
of file
iar.h
.
#define _DATA_SEGMENT_SIZE __segment_size( __DATA__ ) |
Portable segment names.
Definition at line
467
of file
iar.h
.
#define _DEBUG_CHANNEL_SEGMENT_BEGIN __segment_begin( __DEBUG_CHANNEL__ ) |
Portable segment names.
Definition at line
402
of file
iar.h
.
#define _DEBUG_CHANNEL_SEGMENT_END __segment_end( __DEBUG_CHANNEL__ ) |
Portable segment names.
Definition at line
432
of file
iar.h
.
#define _DEBUG_CHANNEL_SEGMENT_SIZE __segment_size( __DEBUG_CHANNEL__ ) |
Portable segment names.
Definition at line
462
of file
iar.h
.
#define _DLIB_PERTHREAD_INIT_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_INIT__ ) |
Portable segment names.
Definition at line
425
of file
iar.h
.
#define _DLIB_PERTHREAD_INIT_SEGMENT_END __segment_end( __DLIB_PERTHREAD_INIT__ ) |
Portable segment names.
Definition at line
455
of file
iar.h
.
#define _DLIB_PERTHREAD_INIT_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_INIT__ ) |
Portable segment names.
Definition at line
485
of file
iar.h
.
#define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) |
Portable segment names.
Definition at line
426
of file
iar.h
.
#define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_END __segment_end( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) |
Portable segment names.
Definition at line
456
of file
iar.h
.
#define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_INITIALIZED_DATA__ ) |
Portable segment names.
Definition at line
486
of file
iar.h
.
#define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_BEGIN __segment_begin( __DLIB_PERTHREAD_ZERO_DATA__ ) |
Portable segment names.
Definition at line
427
of file
iar.h
.
#define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_END __segment_end( __DLIB_PERTHREAD_ZERO_DATA__ ) |
Portable segment names.
Definition at line
457
of file
iar.h
.
#define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_SIZE __segment_size( __DLIB_PERTHREAD_ZERO_DATA__ ) |
Portable segment names.
Definition at line
487
of file
iar.h
.
#define _EMHEAP_OVERLAY_SEGMENT_BEGIN __segment_begin( __EMHEAP_OVERLAY__ ) |
Portable segment names.
Definition at line
423
of file
iar.h
.
#define _EMHEAP_OVERLAY_SEGMENT_END __segment_end( __EMHEAP_OVERLAY__ ) |
Portable segment names.
Definition at line
453
of file
iar.h
.
#define _EMHEAP_OVERLAY_SEGMENT_SIZE __segment_size( __EMHEAP_OVERLAY__ ) |
Portable segment names.
Definition at line
483
of file
iar.h
.
#define _EMHEAP_SEGMENT_BEGIN __segment_begin( __EMHEAP__ ) |
Portable segment names.
Definition at line
422
of file
iar.h
.
#define _EMHEAP_SEGMENT_END __segment_end( __EMHEAP__ ) |
Portable segment names.
Definition at line
452
of file
iar.h
.
#define _EMHEAP_SEGMENT_SIZE __segment_size( __EMHEAP__ ) |
Portable segment names.
Definition at line
482
of file
iar.h
.
#define _FAT_SEGMENT_BEGIN __segment_begin( __FAT__ ) |
Portable segment names.
Definition at line
417
of file
iar.h
.
#define _FAT_SEGMENT_END __segment_end( __FAT__ ) |
Portable segment names.
Definition at line
447
of file
iar.h
.
#define _FAT_SEGMENT_SIZE __segment_size( __FAT__ ) |
Portable segment names.
Definition at line
477
of file
iar.h
.
#define _GUARD_REGION_SEGMENT_BEGIN __segment_begin( __GUARD_REGION__ ) |
Portable segment names.
Definition at line
424
of file
iar.h
.
#define _GUARD_REGION_SEGMENT_END __segment_end( __GUARD_REGION__ ) |
Portable segment names.
Definition at line
454
of file
iar.h
.
#define _GUARD_REGION_SEGMENT_SIZE __segment_size( __GUARD_REGION__ ) |
Portable segment names.
Definition at line
484
of file
iar.h
.
#define _HAL_USE_COMMON_DIVMOD_ |
Use the Divide and Modulus Operations from
platform-common.h
.
Definition at line
285
of file
iar.h
.
#define _HAL_USE_COMMON_MEMUTILS_ |
If the line below is uncommented we will use Ember memory APIs, otherwise, we will use the C Standard library (memset,memcpy,memmove) APIs.
Definition at line
503
of file
iar.h
.
#define _HAL_USE_COMMON_PGM_ |
Use the Master Program Memory Declarations from
platform-common.h
.
Definition at line
116
of file
iar.h
.
#define _INTERNAL_STORAGE_SEGMENT_BEGIN __segment_begin( __INTERNAL_STORAGE__ ) |
Portable segment names.
Definition at line
428
of file
iar.h
.
#define _INTERNAL_STORAGE_SEGMENT_END __segment_end( __INTERNAL_STORAGE__ ) |
Portable segment names.
Definition at line
458
of file
iar.h
.
#define _INTERNAL_STORAGE_SEGMENT_SIZE __segment_size( __INTERNAL_STORAGE__ ) |
Portable segment names.
Definition at line
488
of file
iar.h
.
#define _INTVEC_SEGMENT_BEGIN __segment_begin( __INTVEC__ ) |
Portable segment names.
Definition at line
403
of file
iar.h
.
#define _INTVEC_SEGMENT_END __segment_end( __INTVEC__ ) |
Portable segment names.
Definition at line
433
of file
iar.h
.
#define _INTVEC_SEGMENT_SIZE __segment_size( __INTVEC__ ) |
Portable segment names.
Definition at line
463
of file
iar.h
.
#define _NO_INIT_SEGMENT_BEGIN __segment_begin( __NO_INIT__ ) |
Portable segment names.
Definition at line
401
of file
iar.h
.
#define _NO_INIT_SEGMENT_END __segment_end( __NO_INIT__ ) |
Portable segment names.
Definition at line
431
of file
iar.h
.
#define _NO_INIT_SEGMENT_SIZE __segment_size( __NO_INIT__ ) |
Portable segment names.
Definition at line
461
of file
iar.h
.
#define _NVM_SEGMENT_BEGIN __segment_begin( __NVM__ ) |
Portable segment names.
Definition at line
419
of file
iar.h
.
#define _NVM_SEGMENT_END __segment_end( __NVM__ ) |
Portable segment names.
Definition at line
449
of file
iar.h
.
#define _NVM_SEGMENT_SIZE __segment_size( __NVM__ ) |
Portable segment names.
Definition at line
479
of file
iar.h
.
#define _PSSTORE_SEGMENT_BEGIN __segment_begin( __PSSTORE__ ) |
Portable segment names.
Definition at line
421
of file
iar.h
.
#define _PSSTORE_SEGMENT_END __segment_end( __PSSTORE__ ) |
Portable segment names.
Definition at line
451
of file
iar.h
.
#define _PSSTORE_SEGMENT_SIZE __segment_size( __PSSTORE__ ) |
Portable segment names.
Definition at line
481
of file
iar.h
.
#define _RAT_SEGMENT_BEGIN __segment_begin( __RAT__ ) |
Portable segment names.
Definition at line
418
of file
iar.h
.
#define _RAT_SEGMENT_END __segment_end( __RAT__ ) |
Portable segment names.
Definition at line
448
of file
iar.h
.
#define _RAT_SEGMENT_SIZE __segment_size( __RAT__ ) |
Portable segment names.
Definition at line
478
of file
iar.h
.
#define _RESETINFO_SEGMENT_BEGIN __segment_begin( __RESETINFO__ ) |
Portable segment names.
Definition at line
405
of file
iar.h
.
#define _RESETINFO_SEGMENT_END __segment_end( __RESETINFO__ ) |
Portable segment names.
Definition at line
435
of file
iar.h
.
#define _RESETINFO_SEGMENT_SIZE __segment_size( __RESETINFO__ ) |
Portable segment names.
Definition at line
465
of file
iar.h
.
#define _SIMEE_SEGMENT_BEGIN __segment_begin( __SIMEE__ ) |
Portable segment names.
Definition at line
420
of file
iar.h
.
#define _SIMEE_SEGMENT_END __segment_end( __SIMEE__ ) |
Portable segment names.
Definition at line
450
of file
iar.h
.
#define _SIMEE_SEGMENT_SIZE __segment_size( __SIMEE__ ) |
Portable segment names.
Definition at line
480
of file
iar.h
.
#define _TEXT_SEGMENT_BEGIN __segment_begin( __TEXT__ ) |
Portable segment names.
Definition at line
411
of file
iar.h
.
#define _TEXT_SEGMENT_END __segment_end( __TEXT__ ) |
Portable segment names.
Definition at line
441
of file
iar.h
.
#define _TEXT_SEGMENT_SIZE __segment_size( __TEXT__ ) |
Portable segment names.
Definition at line
471
of file
iar.h
.
#define _TEXTRW_INIT_SEGMENT_BEGIN __segment_begin( __TEXTRW_INIT__ ) |
Portable segment names.
Definition at line
412
of file
iar.h
.
#define _TEXTRW_INIT_SEGMENT_END __segment_end( __TEXTRW_INIT__ ) |
Portable segment names.
Definition at line
442
of file
iar.h
.
#define _TEXTRW_INIT_SEGMENT_SIZE __segment_size( __TEXTRW_INIT__ ) |
Portable segment names.
Definition at line
472
of file
iar.h
.
#define _TEXTRW_SEGMENT_BEGIN __segment_begin( __TEXTRW__ ) |
Portable segment names.
Definition at line
413
of file
iar.h
.
#define _TEXTRW_SEGMENT_END __segment_end( __TEXTRW__ ) |
Portable segment names.
Definition at line
443
of file
iar.h
.
#define _TEXTRW_SEGMENT_SIZE __segment_size( __TEXTRW__ ) |
Portable segment names.
Definition at line
473
of file
iar.h
.
#define _UNRETAINED_RAM_SEGMENT_BEGIN __segment_begin( __UNRETAINED_RAM__ ) |
Portable segment names.
Definition at line
429
of file
iar.h
.
#define _UNRETAINED_RAM_SEGMENT_END __segment_end( __UNRETAINED_RAM__ ) |
Portable segment names.
Definition at line
459
of file
iar.h
.
#define _UNRETAINED_RAM_SEGMENT_SIZE __segment_size( __UNRETAINED_RAM__ ) |
Portable segment names.
Definition at line
489
of file
iar.h
.
#define ALIGNMENT | ( |
X
|
) | _Pragma( STRINGIZE (data_alignment = X)) |
Provide a portable way to align data.
Definition at line
302
of file
iar.h
.
#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
174
of file
iar.h
.
#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
129
of file
iar.h
.
#define EEPROM errorerror |
A friendlier name for the compiler's intrinsic for eeprom reference.
Definition at line
148
of file
iar.h
.
#define HAL_HAS_INT64 |
Denotes that this platform supports 64-bit data-types.
Definition at line
111
of file
iar.h
.
#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
205
of file
iar.h
.
#define MAIN_FUNCTION_ARGUMENTS |
Definition at line
540
of file
iar.h
.
#define MAIN_FUNCTION_PARAMETERS void |
The kind of arguments the main function takes.
Definition at line
539
of file
iar.h
.
#define NO_INIT | ( |
__symbol
|
) | __no_init __symbol |
Provide a portable way to specify a non initialized symbol.
Definition at line
314
of file
iar.h
.
#define NO_OPERATION | ( |
|
) | __no_operation() |
Define a generic no operation identifier to a compiler specific one.
Definition at line
243
of file
iar.h
.
#define NO_STRIPPING __root |
A friendlier name for the compiler's intrinsic for not stripping.
Definition at line
142
of file
iar.h
.
#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
136
of file
iar.h
.
#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
135
of file
iar.h
.
#define PLATCOMMONOKTOINCLUDE |
Include
platform-common.h
last to pick up defaults and common definitions.
Definition at line
532
of file
iar.h
.
#define RAMFUNC __ramfunc |
Define a generic RAM function identifier to a compiler specific one.
Definition at line
237
of file
iar.h
.
#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 value. Example using EM35xx: SET_CMSIS_REG_FIELD(GPIO->P[0].CFGL, GPIO_P_CFGL_Px0, _GPIO_P_CFGL_Px0_OUT);.
Definition at line
261
of file
iar.h
.
#define SET_REG_FIELD | ( |
reg,
|
|
field,
|
|||
value
|
|||
) |
A convenience macro that makes it easy to change the field of a register to any value.
Definition at line
249
of file
iar.h
.
#define SIGNED_ENUM |
Some platforms need to cast enum values that have the high bit set.
Definition at line
222
of file
iar.h
.
#define simulatedSerialTimePasses | ( |
|
) |
Stub for code not running in simulation.
Definition at line
280
of file
iar.h
.
#define simulatedTimePasses | ( |
|
) |
Stub for code not running in simulation.
Definition at line
270
of file
iar.h
.
#define simulatedTimePassesMs | ( |
x
|
) |
Stub for code not running in simulation.
Definition at line
275
of file
iar.h
.
#define STACK_FILL_VALUE 0xCDCDCDCDU |
Define the magic value that is interpreted by IAR C-SPY's Stack View.
Definition at line
227
of file
iar.h
.
#define STATIC_ASSERT | ( |
__condition,
|
|
__errorstr
|
|||
) | static_assert(__condition, __errorstr) |
Provide a portable way to specify a compile time assert.
Definition at line
320
of file
iar.h
.
#define STRINGIZE | ( |
X
|
) | #X |
Convinience macro for turning a token into a string.
Definition at line
297
of file
iar.h
.
#define UNUSED |
Declare a variable as unused to avoid a warning. Has no effect in IAR builds.
Definition at line
217
of file
iar.h
.
#define VAR_AT_SEGMENT | ( |
__variableDeclaration,
|
|
__segmentName
|
|||
) | __variableDeclaration @ __segmentName |
Provide a portable way to specify the segment where a variable lives.
Definition at line
291
of file
iar.h
.
#define WEAK | ( |
__symbol
|
) | __weak __symbol |
Provide a portable way to specify a symbol as weak.
Definition at line
308
of file
iar.h
.
Typedef Documentation
typedef bool boolean |
A typedef to make the size of the variable explicitly known.
Definition at line
96
of file
iar.h
.
typedef signed short int16s |
A typedef to make the size of the variable explicitly known.
Definition at line
100
of file
iar.h
.
typedef unsigned short int16u |
A typedef to make the size of the variable explicitly known.
Definition at line
99
of file
iar.h
.
typedef signed int int32s |
A typedef to make the size of the variable explicitly known.
Definition at line
102
of file
iar.h
.
typedef unsigned int int32u |
A typedef to make the size of the variable explicitly known.
Definition at line
101
of file
iar.h
.
typedef signed long long int64s |
A typedef to make the size of the variable explicitly known.
Definition at line
104
of file
iar.h
.
typedef unsigned long long int64u |
A typedef to make the size of the variable explicitly known.
Definition at line
103
of file
iar.h
.
typedef signed char int8s |
A typedef to make the size of the variable explicitly known.
Definition at line
98
of file
iar.h
.
typedef unsigned char int8u |
A typedef to make the size of the variable explicitly known.
Definition at line
97
of file
iar.h
.
typedef unsigned int PointerType |
A typedef to make the size of the variable explicitly known.
Definition at line
105
of file
iar.h
.
Function Documentation
void _executeBarrierInstructions | ( | void |
|
) |
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
-
I
An integer.
- Returns
- A nonnegative integer.
void halInternalAssertFailed | ( | const char * |
filename,
|
int |
linenumber
|
||
) |
A prototype definition for use by the assert macro. (see
hal/micro/micro.h
)
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.