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 |
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 |
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) |
Define intrinsics for NTOHL and NTOHS to save code space by making endian.c compile to nothing. More... | |
#define | NTOHL(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 |
A friendlier name for the compiler's intrinsic for not stripping. More... | |
#define | EEPROM |
A friendlier name for the compiler's intrinsic for eeprom reference. More... | |
#define | __SOURCEFILE__ |
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() |
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 |
Define the magic value that is interpreted by IAR C-SPY's Stack View. More... | |
#define | RAMFUNC |
Define a generic RAM function identifier to a compiler specific one. More... | |
#define | 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) |
Provide a portable way to specify the segment where a variable lives. More... | |
#define | STRINGIZE(X) |
Convinience macro for turning a token into a string. More... | |
#define | ALIGNMENT(X) |
Provide a portable way to align data. More... | |
#define | WEAK(__symbol) |
Provide a portable way to specify a symbol as weak. More... | |
#define | NO_INIT(__symbol) |
Provide a portable way to specify a non initialized symbol. More... | |
#define | STATIC_ASSERT(__condition, __errorstr) |
Provide a portable way to specify a compile time assert. More... | |
Portable segment names | |
#define | __NO_INIT__ |
Portable segment names. More... | |
#define | __DEBUG_CHANNEL__ |
Portable segment names. More... | |
#define | __INTVEC__ |
Portable segment names. More... | |
#define | __CSTACK__ |
Portable segment names. More... | |
#define | __RESETINFO__ |
Portable segment names. More... | |
#define | __DATA_INIT__ |
Portable segment names. More... | |
#define | __DATA__ |
Portable segment names. More... | |
#define | __BSS__ |
Portable segment names. More... | |
#define | __APP_RAM__ |
Portable segment names. More... | |
#define | __CONST__ |
Portable segment names. More... | |
#define | __TEXT__ |
Portable segment names. More... | |
#define | __TEXTRW_INIT__ |
Portable segment names. More... | |
#define | __TEXTRW__ |
Portable segment names. More... | |
#define | __AAT__ |
Portable segment names. More... | |
#define | __BAT__ |
Portable segment names. More... | |
#define | __BAT_INIT__ |
Portable segment names. More... | |
#define | __FAT__ |
Portable segment names. More... | |
#define | __RAT__ |
Portable segment names. More... | |
#define | __NVM__ |
Portable segment names. More... | |
#define | __SIMEE__ |
Portable segment names. More... | |
#define | __PSSTORE__ |
Portable segment names. More... | |
#define | __EMHEAP__ |
Portable segment names. More... | |
#define | __EMHEAP_OVERLAY__ |
Portable segment names. More... | |
#define | __GUARD_REGION__ |
Portable segment names. More... | |
#define | __DLIB_PERTHREAD_INIT__ |
Portable segment names. More... | |
#define | __DLIB_PERTHREAD_INITIALIZED_DATA__ |
Portable segment names. More... | |
#define | __DLIB_PERTHREAD_ZERO_DATA__ |
Portable segment names. More... | |
#define | __INTERNAL_STORAGE__ |
Portable segment names. More... | |
#define | __UNRETAINED_RAM__ |
Portable segment names. More... | |
#define | _NO_INIT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _DEBUG_CHANNEL_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _INTVEC_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _CSTACK_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _RESETINFO_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _DATA_INIT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _DATA_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _BSS_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _APP_RAM_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _CONST_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _TEXT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _TEXTRW_INIT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _TEXTRW_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _AAT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _BAT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _BAT_INIT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _FAT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _RAT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _NVM_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _SIMEE_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _PSSTORE_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _EMHEAP_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _EMHEAP_OVERLAY_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _GUARD_REGION_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_INIT_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _INTERNAL_STORAGE_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _UNRETAINED_RAM_SEGMENT_BEGIN |
Portable segment names. More... | |
#define | _NO_INIT_SEGMENT_END |
Portable segment names. More... | |
#define | _DEBUG_CHANNEL_SEGMENT_END |
Portable segment names. More... | |
#define | _INTVEC_SEGMENT_END |
Portable segment names. More... | |
#define | _CSTACK_SEGMENT_END |
Portable segment names. More... | |
#define | _RESETINFO_SEGMENT_END |
Portable segment names. More... | |
#define | _DATA_INIT_SEGMENT_END |
Portable segment names. More... | |
#define | _DATA_SEGMENT_END |
Portable segment names. More... | |
#define | _BSS_SEGMENT_END |
Portable segment names. More... | |
#define | _APP_RAM_SEGMENT_END |
Portable segment names. More... | |
#define | _CONST_SEGMENT_END |
Portable segment names. More... | |
#define | _TEXT_SEGMENT_END |
Portable segment names. More... | |
#define | _TEXTRW_INIT_SEGMENT_END |
Portable segment names. More... | |
#define | _TEXTRW_SEGMENT_END |
Portable segment names. More... | |
#define | _AAT_SEGMENT_END |
Portable segment names. More... | |
#define | _BAT_SEGMENT_END |
Portable segment names. More... | |
#define | _BAT_INIT_SEGMENT_END |
Portable segment names. More... | |
#define | _FAT_SEGMENT_END |
Portable segment names. More... | |
#define | _RAT_SEGMENT_END |
Portable segment names. More... | |
#define | _NVM_SEGMENT_END |
Portable segment names. More... | |
#define | _SIMEE_SEGMENT_END |
Portable segment names. More... | |
#define | _PSSTORE_SEGMENT_END |
Portable segment names. More... | |
#define | _EMHEAP_SEGMENT_END |
Portable segment names. More... | |
#define | _EMHEAP_OVERLAY_SEGMENT_END |
Portable segment names. More... | |
#define | _GUARD_REGION_SEGMENT_END |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_INIT_SEGMENT_END |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_END |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_END |
Portable segment names. More... | |
#define | _INTERNAL_STORAGE_SEGMENT_END |
Portable segment names. More... | |
#define | _UNRETAINED_RAM_SEGMENT_END |
Portable segment names. More... | |
#define | _NO_INIT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _DEBUG_CHANNEL_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _INTVEC_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _CSTACK_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _RESETINFO_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _DATA_INIT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _DATA_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _BSS_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _APP_RAM_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _CONST_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _TEXT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _TEXTRW_INIT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _TEXTRW_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _AAT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _BAT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _BAT_INIT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _FAT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _RAT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _NVM_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _SIMEE_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _PSSTORE_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _EMHEAP_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _EMHEAP_OVERLAY_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _GUARD_REGION_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_INIT_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _INTERNAL_STORAGE_SEGMENT_SIZE |
Portable segment names. More... | |
#define | _UNRETAINED_RAM_SEGMENT_SIZE |
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__ |
Portable segment names.
Definition at line 347
of file iar.h
.
#define __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__ |
Portable segment names.
Definition at line 348
of file iar.h
.
#define __BAT_INIT__ |
Portable segment names.
Definition at line 349
of file iar.h
.
#define __BSS__ |
Portable segment names.
Definition at line 341
of file iar.h
.
#define __CONST__ |
Portable segment names.
Definition at line 343
of file iar.h
.
#define __CSTACK__ |
Portable segment names.
Definition at line 337
of file iar.h
.
#define __DATA__ |
Portable segment names.
Definition at line 340
of file iar.h
.
#define __DATA_INIT__ |
Portable segment names.
Definition at line 339
of file iar.h
.
#define __DEBUG_CHANNEL__ |
Portable segment names.
Definition at line 335
of file iar.h
.
#define __DLIB_PERTHREAD_INIT__ |
Portable segment names.
Definition at line 358
of file iar.h
.
#define __DLIB_PERTHREAD_INITIALIZED_DATA__ |
Portable segment names.
Definition at line 359
of file iar.h
.
#define __DLIB_PERTHREAD_ZERO_DATA__ |
Portable segment names.
Definition at line 360
of file iar.h
.
#define __EMHEAP__ |
Portable segment names.
Definition at line 355
of file iar.h
.
#define __EMHEAP_OVERLAY__ |
Portable segment names.
Definition at line 356
of file iar.h
.
#define __FAT__ |
Portable segment names.
Definition at line 350
of file iar.h
.
#define __GUARD_REGION__ |
Portable segment names.
Definition at line 357
of file iar.h
.
#define __INTERNAL_STORAGE__ |
Portable segment names.
Definition at line 361
of file iar.h
.
#define __INTVEC__ |
Portable segment names.
Definition at line 336
of file iar.h
.
#define __NO_INIT__ |
Portable segment names.
Definition at line 334
of file iar.h
.
#define __NVM__ |
Portable segment names.
Definition at line 352
of file iar.h
.
#define __PSSTORE__ |
Portable segment names.
Definition at line 354
of file iar.h
.
#define __RAT__ |
Portable segment names.
Definition at line 351
of file iar.h
.
#define __RESETINFO__ |
Portable segment names.
Definition at line 338
of file iar.h
.
#define __SIMEE__ |
Portable segment names.
Definition at line 353
of file iar.h
.
#define __SOURCEFILE__ |
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__ |
Portable segment names.
Definition at line 344
of file iar.h
.
#define __TEXTRW__ |
Portable segment names.
Definition at line 346
of file iar.h
.
#define __TEXTRW_INIT__ |
Portable segment names.
Definition at line 345
of file iar.h
.
#define __UNRETAINED_RAM__ |
Portable segment names.
Definition at line 362
of file iar.h
.
#define _AAT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 414
of file iar.h
.
#define _AAT_SEGMENT_END |
Portable segment names.
Definition at line 444
of file iar.h
.
#define _AAT_SEGMENT_SIZE |
Portable segment names.
Definition at line 474
of file iar.h
.
#define _APP_RAM_SEGMENT_BEGIN |
Portable segment names.
Definition at line 409
of file iar.h
.
#define _APP_RAM_SEGMENT_END |
Portable segment names.
Definition at line 439
of file iar.h
.
#define _APP_RAM_SEGMENT_SIZE |
Portable segment names.
Definition at line 469
of file iar.h
.
#define _BAT_INIT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 416
of file iar.h
.
#define _BAT_INIT_SEGMENT_END |
Portable segment names.
Definition at line 446
of file iar.h
.
#define _BAT_INIT_SEGMENT_SIZE |
Portable segment names.
Definition at line 476
of file iar.h
.
#define _BAT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 415
of file iar.h
.
#define _BAT_SEGMENT_END |
Portable segment names.
Definition at line 445
of file iar.h
.
#define _BAT_SEGMENT_SIZE |
Portable segment names.
Definition at line 475
of file iar.h
.
#define _BSS_SEGMENT_BEGIN |
Portable segment names.
Definition at line 408
of file iar.h
.
#define _BSS_SEGMENT_END |
Portable segment names.
Definition at line 438
of file iar.h
.
#define _BSS_SEGMENT_SIZE |
Portable segment names.
Definition at line 468
of file iar.h
.
#define _CONST_SEGMENT_BEGIN |
Portable segment names.
Definition at line 410
of file iar.h
.
#define _CONST_SEGMENT_END |
Portable segment names.
Definition at line 440
of file iar.h
.
#define _CONST_SEGMENT_SIZE |
Portable segment names.
Definition at line 470
of file iar.h
.
#define _CSTACK_SEGMENT_BEGIN |
Portable segment names.
Definition at line 404
of file iar.h
.
#define _CSTACK_SEGMENT_END |
Portable segment names.
Definition at line 434
of file iar.h
.
#define _CSTACK_SEGMENT_SIZE |
Portable segment names.
Definition at line 464
of file iar.h
.
#define _DATA_INIT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 406
of file iar.h
.
#define _DATA_INIT_SEGMENT_END |
Portable segment names.
Definition at line 436
of file iar.h
.
#define _DATA_INIT_SEGMENT_SIZE |
Portable segment names.
Definition at line 466
of file iar.h
.
#define _DATA_SEGMENT_BEGIN |
Portable segment names.
Definition at line 407
of file iar.h
.
#define _DATA_SEGMENT_END |
Portable segment names.
Definition at line 437
of file iar.h
.
#define _DATA_SEGMENT_SIZE |
Portable segment names.
Definition at line 467
of file iar.h
.
#define _DEBUG_CHANNEL_SEGMENT_BEGIN |
Portable segment names.
Definition at line 402
of file iar.h
.
#define _DEBUG_CHANNEL_SEGMENT_END |
Portable segment names.
Definition at line 432
of file iar.h
.
#define _DEBUG_CHANNEL_SEGMENT_SIZE |
Portable segment names.
Definition at line 462
of file iar.h
.
#define _DLIB_PERTHREAD_INIT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 425
of file iar.h
.
#define _DLIB_PERTHREAD_INIT_SEGMENT_END |
Portable segment names.
Definition at line 455
of file iar.h
.
#define _DLIB_PERTHREAD_INIT_SEGMENT_SIZE |
Portable segment names.
Definition at line 485
of file iar.h
.
#define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_BEGIN |
Portable segment names.
Definition at line 426
of file iar.h
.
#define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_END |
Portable segment names.
Definition at line 456
of file iar.h
.
#define _DLIB_PERTHREAD_INITIALIZED_DATA_SEGMENT_SIZE |
Portable segment names.
Definition at line 486
of file iar.h
.
#define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_BEGIN |
Portable segment names.
Definition at line 427
of file iar.h
.
#define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_END |
Portable segment names.
Definition at line 457
of file iar.h
.
#define _DLIB_PERTHREAD_ZERO_DATA_SEGMENT_SIZE |
Portable segment names.
Definition at line 487
of file iar.h
.
#define _EMHEAP_OVERLAY_SEGMENT_BEGIN |
Portable segment names.
Definition at line 423
of file iar.h
.
#define _EMHEAP_OVERLAY_SEGMENT_END |
Portable segment names.
Definition at line 453
of file iar.h
.
#define _EMHEAP_OVERLAY_SEGMENT_SIZE |
Portable segment names.
Definition at line 483
of file iar.h
.
#define _EMHEAP_SEGMENT_BEGIN |
Portable segment names.
Definition at line 422
of file iar.h
.
#define _EMHEAP_SEGMENT_END |
Portable segment names.
Definition at line 452
of file iar.h
.
#define _EMHEAP_SEGMENT_SIZE |
Portable segment names.
Definition at line 482
of file iar.h
.
#define _FAT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 417
of file iar.h
.
#define _FAT_SEGMENT_END |
Portable segment names.
Definition at line 447
of file iar.h
.
#define _FAT_SEGMENT_SIZE |
Portable segment names.
Definition at line 477
of file iar.h
.
#define _GUARD_REGION_SEGMENT_BEGIN |
Portable segment names.
Definition at line 424
of file iar.h
.
#define _GUARD_REGION_SEGMENT_END |
Portable segment names.
Definition at line 454
of file iar.h
.
#define _GUARD_REGION_SEGMENT_SIZE |
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 |
Portable segment names.
Definition at line 428
of file iar.h
.
#define _INTERNAL_STORAGE_SEGMENT_END |
Portable segment names.
Definition at line 458
of file iar.h
.
#define _INTERNAL_STORAGE_SEGMENT_SIZE |
Portable segment names.
Definition at line 488
of file iar.h
.
#define _INTVEC_SEGMENT_BEGIN |
Portable segment names.
Definition at line 403
of file iar.h
.
#define _INTVEC_SEGMENT_END |
Portable segment names.
Definition at line 433
of file iar.h
.
#define _INTVEC_SEGMENT_SIZE |
Portable segment names.
Definition at line 463
of file iar.h
.
#define _NO_INIT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 401
of file iar.h
.
#define _NO_INIT_SEGMENT_END |
Portable segment names.
Definition at line 431
of file iar.h
.
#define _NO_INIT_SEGMENT_SIZE |
Portable segment names.
Definition at line 461
of file iar.h
.
#define _NVM_SEGMENT_BEGIN |
Portable segment names.
Definition at line 419
of file iar.h
.
#define _NVM_SEGMENT_END |
Portable segment names.
Definition at line 449
of file iar.h
.
#define _NVM_SEGMENT_SIZE |
Portable segment names.
Definition at line 479
of file iar.h
.
#define _PSSTORE_SEGMENT_BEGIN |
Portable segment names.
Definition at line 421
of file iar.h
.
#define _PSSTORE_SEGMENT_END |
Portable segment names.
Definition at line 451
of file iar.h
.
#define _PSSTORE_SEGMENT_SIZE |
Portable segment names.
Definition at line 481
of file iar.h
.
#define _RAT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 418
of file iar.h
.
#define _RAT_SEGMENT_END |
Portable segment names.
Definition at line 448
of file iar.h
.
#define _RAT_SEGMENT_SIZE |
Portable segment names.
Definition at line 478
of file iar.h
.
#define _RESETINFO_SEGMENT_BEGIN |
Portable segment names.
Definition at line 405
of file iar.h
.
#define _RESETINFO_SEGMENT_END |
Portable segment names.
Definition at line 435
of file iar.h
.
#define _RESETINFO_SEGMENT_SIZE |
Portable segment names.
Definition at line 465
of file iar.h
.
#define _SIMEE_SEGMENT_BEGIN |
Portable segment names.
Definition at line 420
of file iar.h
.
#define _SIMEE_SEGMENT_END |
Portable segment names.
Definition at line 450
of file iar.h
.
#define _SIMEE_SEGMENT_SIZE |
Portable segment names.
Definition at line 480
of file iar.h
.
#define _TEXT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 411
of file iar.h
.
#define _TEXT_SEGMENT_END |
Portable segment names.
Definition at line 441
of file iar.h
.
#define _TEXT_SEGMENT_SIZE |
Portable segment names.
Definition at line 471
of file iar.h
.
#define _TEXTRW_INIT_SEGMENT_BEGIN |
Portable segment names.
Definition at line 412
of file iar.h
.
#define _TEXTRW_INIT_SEGMENT_END |
Portable segment names.
Definition at line 442
of file iar.h
.
#define _TEXTRW_INIT_SEGMENT_SIZE |
Portable segment names.
Definition at line 472
of file iar.h
.
#define _TEXTRW_SEGMENT_BEGIN |
Portable segment names.
Definition at line 413
of file iar.h
.
#define _TEXTRW_SEGMENT_END |
Portable segment names.
Definition at line 443
of file iar.h
.
#define _TEXTRW_SEGMENT_SIZE |
Portable segment names.
Definition at line 473
of file iar.h
.
#define _UNRETAINED_RAM_SEGMENT_BEGIN |
Portable segment names.
Definition at line 429
of file iar.h
.
#define _UNRETAINED_RAM_SEGMENT_END |
Portable segment names.
Definition at line 459
of file iar.h
.
#define _UNRETAINED_RAM_SEGMENT_SIZE |
Portable segment names.
Definition at line 489
of file iar.h
.
#define 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 |
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 |
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 | ( |
| ) |
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 |
The kind of arguments the main function takes.
Definition at line 539
of file iar.h
.
#define NO_INIT | ( | __symbol | ) |
Provide a portable way to specify a non initialized symbol.
Definition at line 314
of file iar.h
.
#define NO_OPERATION | ( |
| ) |
Define a generic no operation identifier to a compiler specific one.
Definition at line 243
of file iar.h
.
#define NO_STRIPPING |
A friendlier name for the compiler's intrinsic for not stripping.
Definition at line 142
of file iar.h
.
#define NTOHL | ( | 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 | ) |
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 |
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 |
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 |
|||
) |
Provide a portable way to specify a compile time assert.
Definition at line 320
of file iar.h
.
#define STRINGIZE | ( | 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 |
|||
) |
Provide a portable way to specify the segment where a variable lives.
Definition at line 291
of file iar.h
.
#define 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.