Datasheet

TMC429 DATASHEET (v. 1.07 / 2012-AUG-01) 32
Copyright © 2010-2012, TRINAMIC Motion Control GmbH & Co. KG
writes cover_pos but reads back cover_pos+1. The cw (= cover waiting) bit available by read out of
this register. The CDGW status bit (see section 10.3) is the result of logical OR between cw and an
internal signal that indicates the status of the stepper motor serial driver chain send register.
10.3 cover_datagram (JDX=%0011)
This register holds up to 24 bit of a cover datagram. A cover datagram covers the next datagram sent
to the stepper motor driver chain. If no datagrams are sent to the drivers chain, the cover datagram is
sent immediately if a cover datagram is written into this register. The status of the cover datagram is
mapped to the status bits sent back with each datagram (see Table 7-4, page 15, CDGW status bit).
This status bit is also available for readout of cover_pos & cover_len (JDX=%0010), where CDGW is
the most significant data bit (23).
0 1 2 3 4 5 6 7 8 9 10 11 12 34 35 36 37 38 6 5 4 3 2 1 0 47
23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7
6
(MSB)
5 4 3 2 1
0
(LSB)
length = 7: cover_len = 7
up to 24 cover_datagram bits
39 40 41 42 43 45 46datagram bits #39 to #46 covered by cover_datagram bits #6 to #0
position=39: cover_pos = 39
cover datagram bits #6 to #0 cover the 7 datagram bits #39 to #46
48 datagram bits send to the stepper motor driver chain
MSB of the cover datagram (here bit #6) is sent first.
Figure 10-2: Cover datagram example
The CDGW (= Cover DataGram Waiting) status bit has to be checked before writing a new cover
datagram into this register, to be sure that no cover datagram is waiting to be processed. The CDGW
bit is set to 1 until the cover_datagram is sent. The CDGW status bit is also be used as a status bit for
the datagram_low_word and datagram_high_word (see section 10.1 on page 31). An example for
the cover datagram is given in Figure 10-2 on page 32. In that example 7 bits cover 7 bits of a 48 bit
datagram from bit number 39 to bit number 46. A cover datagram with length=0 forces sending an
unchanged datagram to the driver chain.
10.4 Unused Addresses (JDX={%0100, %0101, %0110, %1001}) TMC428/429
There are unused addresses within the address range of the global parameter registers. Access to
these addresses has no effect for the TMC428. However, access should be avoided, because this
address space may be used for future devices. For the TMC429, the global registers ad addresses
JDX={%0100, %0101, %0110, %1001}) are used for TMC429 specific function. Some bits of the
clk2_div (JDX=%1111}) are used for the timing configuration in step/direction mode of the TMC429.
10.4.1 TMC429 Specific Registers
For the TMC429 some of the un-used addresses are used for additional registers of the TMC429.
Additional registers of the TMC429 are named as <name>_429 to indicate that these have TMC429
specific functions that are not available for the TMC428.
One can readout the version of the TMC429 by read access to a register called type_and_version_429.
For the TMC428, a read on this register returns 0x000000 as type and version.