User manual

PDx-113-57/60-SE / TMCM-113-57/60-SE Firmware Manual (V1.10 / 2009-OCT-28) 16
Copyright © 2009, TRINAMIC Motion Control GmbH & Co. KG
For calculating purposes there is an accumulator (or accu or A register) and an X register. When executed in
a TMCL
TM
program (in stand-alone mode), all TMCL
TM
commands that read a value store the result in the
accumulator. The X register can be used as an additional memory when doing calculations. It can be loaded
from the accumulator.
When a command that reads a value is executed in direct mode the accumulator will not be affected. This
means that while a TMCL
TM
program is running on the module (stand-alone mode), a host can still send
commands like GAP, GGP or GIO to the module (e.g. to query the actual position of the motor) without
affecting the flow of the TMCL
TM
program running on the module.
6.5 TMCL
TM
commands
The following TMCL
TM
commands are currently supported:
Command
Number
Parameter
Description
ROR
1
<motor number>, <velocity>
Rotate right with specified velocity
ROL
2
<motor number>, <velocity>
Rotate left with specified velocity
MST
3
<motor number>
Stop motor movement
MVP
4
ABS|REL|COORD, <motor number>,
<position|offset>
Move to position (absolute or relative)
SAP
5
<parameter>, <motor number>, <value>
Set axis parameter (motion control
specific settings)
GAP
6
<parameter>, <motor number>
Get axis parameter (read out motion
control specific settings)
STAP
7
<parameter>, <motor number>
Store axis parameter permanently (non
volatile)
RSAP
8
<parameter>, <motor number>
Restore axis parameter
SGP
9
<parameter>, <bank number>, value
Set global parameter (module specific
settings e.g. communication settings or
TMCL™ user variables)
GGP
10
<parameter>, <bank number>
Get global parameter (read out module
specific settings e.g. communication
settings or TMCL™ user variables)
STGP
11
<parameter>, <bank number>
Store global parameter (TMCL™ user
variables only)
RSGP
12
<parameter>, <bank number>
Restore global parameter (TMCL™ user
variable only)
RFS
13
START|STOP|STATUS, <motor number>
Reference search
SIO
14
<port number>, <bank number>, <value>
Set digital output to specified value
GIO
15
<port number>, <bank number>
Get value of analogue/digital input
CALC
19
<operation>, <value>
Process accumulator & value
COMP
20
<value>
Compare accumulator <-> value
JC
21
<condition>, <jump address>
Jump conditional
JA
22
<jump address>
Jump absolute
CSUB
23
<subroutine address>
Call subroutine
RSUB
24
Return from subroutine
WAIT
27
<condition>, <motor number>, <ticks>
Wait with further program execution
STOP
28
Stop program execution
SCO
30
<coordinate number>, <motor number>,
<position>
Set coordinate
GCO
31
<coordinate number>, <motor number>
Get coordinate
CCO
32
<coordinate number>, <motor number>
Capture coordinate
CALCX
33
<operation>
Process accumulator & X-register
AAP
34
<parameter>, <motor number>
Accumulator to axis parameter
AGP
35
<parameter>, <bank number>
Accumulator to global parameter