Datasheet

TMC2209 DATASHEET (Rev. 1.03 / 2019-JUN-26) 18
www.trinamic.com
4.4 Addressing Multiple Slaves
WRITE ONLY ACCESS
If read access is not used, and all slaves are to be programmed with the same initialization values, no
addressing is required. All slaves can be programmed in parallel like a single device (Figure 4.1.).
ADDRESSING MULTIPLE SLAVES
As the TMC2209 uses has a limited number of UART addresses, in principle only up to four ICs can be
accessed per UART interface channel. Adding analog switches allows separated access to more
individual ICs. This scheme is similar to an SPI bus with individual slave select lines (Figure 4.2). With
this scheme, the microstep resolution can be selected via MS1 and MS2 pins (consider actual setting
for addressing).
Master CPU
(µC with UART)
TMC22xx
#1
PDN_UART
TMC22xx
#2
TMC22xx
#3
TXD
RXD
+V
IO
1k
22k
SWO
¼ 74HC4066
Select#1Port pin
Port pin
Port pin
PDN_UART
+V
IO
22k
SWO
¼ 74HC4066
PDN_UART
+V
IO
22k
SWO
¼ 74HC4066
Select#2
Select#3
74HC1G125
Optional buffer for
transmission over long
lines or many slaves.
Port pin
Figure 4.2 Addressing multiple TMC2209 via single wire interface using analog switches
PROCEED AS FOLLOWS TO CONTROL MULTIPLE SLAVES:
- Set the UART to 8 bits, no parity. Select a baud rate safely within the valid range. At
250kBaud, a write access transmission requires 320µs (=8 Bytes * (8+2) bits * 4µs).
- Before starting an access, activate the select pin going to the analog switch by setting it high.
All other slaves select lines shall be off, unless a broadcast is desired.
- When using the optional buffer, set TMC2209 transmission send delay to an appropriate value
allowing the µC to switch off the buffer before receiving reply data.
- To start a transmission, activate the TXD line buffer by setting the control pin low.
- When sending a read access request, switch off the buffer after transmission of the last stop
bit is finished.
- Take into account, that all transmitted data also is received by the RXD input.