The TML works with the following categories of data:
· TML Registers
· TML Parameters
· TML Variables
· User Variables
All TML data are identified by their name. The names of the TML registers, parameters or variables are predefined and do not require to be declared. The names of the user variables can be any string of characters that starts with a letter or underscore. The name of the variable can have up to 32 characters. The user variables must be declared in EasyMotion Studio before they are used.
Remarks: All TML variables, parameters, registers and user variables are global, i.e can be accessed from any point in the TML program (main, functions or interrupts).
The following data types are available in TML:
· int 16-bit signed integer
· uint 16-bit unsigned integer
· fixed 32-bit fixed-point data with the 16MSB for the integer part and the 16LS for the factional part.
· long 32-bit signed intege
· ulong 32-bit unsigned integer
At the bottom of this article there's a link to a pdf file which contains a comprehensive list of all TML Registers, Parameters and Variables.
Remarks:
1. The data type uint or ulong are reserved for the TML predefined data. The user-defined variables are always signed. Hence you may declare them of type: int, fixed or long.
2. An unsigned TML data means that in the firmware its value is interpreted as unsigned. Typical examples: register values, time-related variables, protection limits for signals that may have only positive values like temperature or supply voltage, etc. However, the same data will be interpreted as signed if it is used in a TML instruction whose operands are treated as signed values.