The current RTOS functions permit entering a variety of parameters to complete the function call. These available values are internal symbols of macrolanguage (the internal language of Processor Expert). It is important to select the correct symbols for the correct functions so that Processor Expert is capable of producing the correct C code for the LDD.
The values are the following:
This parameter resolves to the C name of the LDD data structure of the current Processor Expert component and encloses it into an ANSI C sizeof() function. This parameter is targeted to memory allocation function.
This is the name of the LDD variable holding the memory-allocated pointer. This is targeted mainly to be used in the memory de-allocation function.
This is a symbol that should be entered manually. It allows entering specific C types or variable names. This is meant to be used in all functions if needed, especially in ISR declaration, where specific RTOS C types act as input parameters for the ISR.
This is the vector number of the current Interrupt handled by current LDD driver. This is a symbol that is resolved by Processor Expert at code generation time. This is mainly used in installation, restore, and ISR function pointer and ISR's I/O data structure retrieval.
This is the ISR function name. The name of the ISR is resolved by Processor Expert at code generation time. This is targeted mostly for ISR installation function.
This is the LDD's data structure pointer. It is used mainly in ISR installation function.
If the OS supports functions to retrieve the current function pointer of a particular virtual ISR, this pointer is stored in the HAL data structure by the RTOS Get ISR function. This value is helpful in case the OS supports restore of the old ISR.
If the OS supports functions to retrieve the current I/O data structure pointer of a particular virtual ISR, this pointer is stored in HAL data structure by the RTOS Get ISR Data Structure function. This value is helpful in case the OS supports restore of the original ISR and its original input parameter.
This is a special variable name called _isrParameter. This value is targeted as the I/O data structure pointer parameter of an ISR. If an ISR receives a parameter data structure, this value must be selected. In the end, this parameter will be cast to HAL data structure to complete the I/O of the current interrupt.
This is the HAL data structure prototype pointer. It can be used as a data type for the HAL data structure input parameter of an ISR (resolves to <LDD_Component_Name>_TDeviceData*). An ISR function can also define a manual symbol for the input parameter type of the I/O data structure, such as void * instead of using this one.
For more information and to understand the usage of these values, refer to the Creating RTOS component topic.