Datasheet
TMC429 DATASHEET (v. 1.07 / 2012-AUG-01) 31
Copyright © 2010-2012, TRINAMIC Motion Control GmbH & Co. KG
10 Global Parameter Registers
The registers addressed by RRS=0 with SMDA=%11 are global parameter registers. To emphasize
this difference, the JDX is used as index name instead of IDX.
10.1 datagram_low_word (JDX=%0000) & datagram_high_word (JDX=%0001)
The TMC429 stores datagrams sent back from the stepper motor driver chain with a total length of up
to 48 bits. The register datagram_low_word holds the lower 24 bits of this 48 bits and the register
datagram_high_word holds the higher 24 bits of the 48 bits. These registers together form a 48 bit
shift register, where the data from pin SDI_S are shifted left into it with each datagram bit sent to the
stepper motor driver chain via the signal SDO_S. A write to one of these read-only registers initializes
them, to update their contents with the next datagram received from the drivers chain.
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
last TMC246 driver of the chain (stepper motor #1)
LD2 LD1 LD0 1 OT OTPW UV OCHS OLB OLA OCB OCA
datagram_high_word
datagram_low_word
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
first TMC246 driver of the chain (stepper motor # 3)second TMC246 driver of the chain (stepper motor # 2)
LD2 LD1 LD0 1 OT OTPW UV OCHS OLB OLA OCB OCALD2 LD1 LD0 1 OT OTPW UV OCHS OLB OLA OCB OCA
SDI_S
Figure 10-1: Example of status bit mapping for a chain of three TMC246 or TMC249
The CDGW (= Cover DataGram Waiting, see section 10.3 on page 32) status bit is set to 1 until a
datagram is received from the stepper motor driver chain. For read out of datagram_low_word and
datagram_high_word the CDGW status bit is important to be able to detect when a datagram transfer
has been completed after an initial write to one of the two registers. The fact that the CDGW is formed
by a logical OR between the cover datagram status and the status of the datagram_low_word and
datagram_high_word causes no restriction concerning its usage. This is because a write to the
cover_datagram register forces sending a datagram which results in an update of the
datagram_low_word and datagram_high_word registers. One the other side, if the
cover_datagram mechanism is not used, the CDGW status bit is exclusively available as the status
signal of datagram_low_word and datagram_high_word.
10.2 cover_pos & cover_len (JDX=%0010)
The TMC429 provides direct sending of datagrams from the microcontroller to the stepper motor
drivers. This may be necessary for initialization of different driver chips and useful for reconfiguration
purposes. A datagram with up to 24 bits can be transferred to the stepper motor driver by covering one
datagram sent to the driver chain. The parameter cover_pos defines the position of the first datagram
bit to be covered by the cover_datagram (JDX=%0011) of length cover_len. In contrast to the
datagram numbering order of bits, the position count for the cover datagram starts with 0. The
cover_datagram bits indexed from cover_len-1 to 0 cover the datagram sent to the drivers chain.
Important Note:
A step bit used to control stepper motor drivers must not be
covered while a motor is running.
This is because the coverage of a step bit would cause losing that associated step if the step bit is
active. The TMC429 stores cover_pos+1 instead of cover_pos due to internal requirements. So, one