Datasheets.org.uk - 100 Million Datasheets from 7500 Manufacturers.    


Datasheet Search Engine
  
 
Part # or Description: • 5V RS232 Driver • 2SC5066* • "Real Time Clock" • "USB connector" • "blue led" 5mm • 10 watt zener diode • 2N3055* motorola
 
Search Tip: Try entering the part number only. Include a wildcard (eg. lm317* or 1n4148*)

 

 

TMC428


Datasheet Thumbnail

  

Download PDF



Top Searches for this datasheet


TMC428-A - TMC428-A  
tmc428 - tmc428  
Stepper Motors - Stepper Motors  
stepper motor interface - stepper motor interface  
stepper motor controls - stepper motor controls  
stepper motor - stepper motor  
sine cosine phase quadrant look-up address genera - sine cosine phase quadrant look-up address genera  
sine cosine phase quadrant look-up address - sine cosine phase quadrant look-up address  
principle stepper motor - principle stepper motor  
microstepping driver 128 - microstepping driver 128  
microcontroller 1 phase pure sine wave inverter i - microcontroller 1 phase pure sine wave inverter i  
micro stepping - micro stepping  
inverter PURE SINE WAVE schematic diagram - inverter PURE SINE WAVE schematic diagram  
inverter PURE SINE WAVE schematic - inverter PURE SINE WAVE schematic  
dual phase stepper motor speed control circuits - dual phase stepper motor speed control circuits  
dil20 - dil20  
controlling of automatic stepper motor - controlling of automatic stepper motor  
74HC157 stepper - 74HC157 stepper  
3-phase stepper - 3-phase stepper  
3-phase motor driver for CD-ROMs - 3-phase motor driver for CD-ROMs  
2-Phase Stepper Motor Driver - 2-Phase Stepper Motor Driver  
194 stepper controller - 194 stepper controller  
TMC428 - TMC428  

TMC428 DATASHEET 2.03 December 2008)
TMC428 DATA SHEET
Intelligent Triple Stepper Motor Controller with Serial Peripheral Interfaces
TRINAMIC Motion Control GmbH 20357 Hamburg GERMANY www.trinamic.com
Features
TMC428 miniaturized high performance stepper motor controller. controls three 2phase stepper motors. motors operate independently. TMC428 allows micro step resolution corresponding micro steps full step individually selectable each motor. Once initialized, performs real time critical tasks autonomously based target positions velocities, which altered on-the-fly. inexpensive microcontroller together with TMC428 forms complete motion control system. microcontroller free application specific interfacing high level control functions. Both, communication with microcontroller with three daisy chained stepper motor drivers take place separate wire serial peripheral interfaces. TMC428 directly connects smart power stepper motor drivers.
Controls three 2-phase stepper motors Serial 4-wire interface with easy-to-use protocol Configurable interface motor drivers Different types stepper motor driver chips mixed within single daisy chain Communication demand minimizes traffic stepper motor driver chain Programmable data rates Mbit/s Wide range clock frequency clock Internal wide position counters Full step frequencies Read-out facility actual motion parameters (position, velocity, acceleration) driver status Individual micro step resolution {64, micro steps built-in sequencer Programmable micro step table with entries quarter sine-wave period Built-in ramp generators autonomous positioning speed control On-the-fly change target motion parameters (like position, velocity, acceleration) Automatic acceleration dependent current control (power boost) power operation: Only 1.25 (typ.) Power down mode with transparent wake-up normal operation 3.3V operation with CMOS compatible (all inputs Schmitt-Trigger) Available ultra small SSOP package small package
Table contents, table figures, table tables located this datasheet.
Trademark Motorola, Inc.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Life support policy TRINAMIC Motion Control GmbH does authorize warrant products life support systems, without specific written consent TRINAMIC Motion Control GmbH Life support systems equipment intended support sustain life, whose failure perform, when properly used accordance with instructions provided, reasonably expected result personal injury death.
2004-2008, TRINAMIC Motion Control GmbH Information given this data sheet believed accurate reliable. However responsibility assumed consequences infringement patents other rights third parties which result from use. Specifications subject change without notice.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
General Description
TMC428 miniaturized high performance stepper motor controller with unique price performance ratio both, high volume automotive demanding industrial motion control applications. Once initialized, TMC428 controls three 2-phase stepper motors. price makes attractive also applications, where only stepper motors have controlled simultaneously. TMC428 performs real time critical tasks autonomously. Thus cost microcontroller sufficient perform tasks initialization, application specific interfacing, specify target positions velocities. TMC428 allows on-the-fly change motion target parameters also during motion. other parameter changed time- also during motion -which does make sense case, this uniform access TMC428 register simplifies application programming. Read-back option internal registers simplifies programming. With internal position counters, TMC428 perform steps respectively micro steps fully independent from microcontroller. step resolution- individually programmable each stepper motor ranges from full step ,,micro step full step), half step ,,micro steps full step), micro stepping micro steps full step) precise positioning noiseless stepper motor rotation (Table 8-8, page 26). Optionally, micro step table- common motors -can adapted motor characteristics further reduce torque ripple. TMC428 serial interfaces communication with microcontroller stepper motor drivers. serial interface microcontroller uses fixed length bits with simple protocol, directly connecting interfaces. serial interface stepper motor drivers flexibly configurable different types- even from different vendors -with length daisy chain. TRINAMIC smart power stepper motor drivers TMC236, TMC239 TMC246, TMC249 perfectly TMC428. Without additional hardware, drivers with same serial interface polarities chip select clock signals mixed single chain. drivers with different serial interface polarities, additional inverters (e.g. 74HC04, 74HC14) required. those driver chips without serial data output, additional variants TMC428 with additional chip select outputs available. TMC428 sends data driver chain demand only, which minimizes interface traffic reduces power consumption. Hint: Unused reference switch inputs should pulled ground (Figure 2-1). With this connect reference switches that connect resp. +3.3V when pushed. Concerning different reference switch configurations please refer Figure 9-3, Figure 9-4, Figure 9-5.
Reference Switch Inputs (active high)
*For details concerning electrical connections TMC236 TMC239 TMC246 TMC249 refer datasheet.
REF1 nSCS_C
REF2
REF3 nSCS_S TMC23x TMC24x SCK_S
MOSI MISO
SDI_C
TMC428-I TMC428-A
TEST
SDO_S
TMC23x TMC24x
TMC23x TMC24x
SCK_C SDO_C
SDI_S
Note: output SDO_C will nerver high impedance
SM#3
SM#2
Figure 2-1: TMC428 application environment with TMC428 SSOP16 package
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
REF2
REF3
nSCS3 nSCS2
nSCS_C
nSCS_S
MOSI MISO
SDI_C
TMC428-PI24 TMC428-DI20
nSCS SDO_S Driver
nSCS Driver
nSCS Driver
SCK_C SDO_C TEST
SCK_S SDI_S
Note: output SDO_C will nerver high impedance
SM#3
SM#2
Figure 2-2: Usage drivers without serial data output (SDO) with TMC428 larger packages (*the DI20 package variant recommended designs)
Step Frequencies
maximum data rate clock frequency divided maximum step frequency depends total length datagrams sent stepper motor driver chain. clock frequency MHz, with daisy chain three stepper motor drivers datagram length each, maximum full step frequency This approximately that much higher than needed typical stepper motors. But, micro step rate higher, even stepper motor driver does micro steps data rate limit, long number skipped micro steps less than full step. this respect, should remember, that high step rates- respectively pulse rates -the differences between micro stepping full step excitation vanishes.
Modes Motion
TMC428 four different modes motion, programmable individually each stepper motor, named RAMP_MODE, SOFT_MODE, VELOCITY_MODE, HOLD_MODE. positioning applications RAMP_MODE most suitable, whereas constant velocity applications VELOCITY_MODE RAMP_MODE, user just sets position TMC428 calculates trapezoidal velocity profile drives autonomously target position. During motion, position altered arbitrarily. SOFT_MODE similar RAMP_MODE, decrease velocity during deceleration done with soft, exponentially shaped velocity profile. VELOCITY_MODE, target velocity user TMC428 takes into account user defined limits velocity acceleration. HOLD_MODE, user sets target velocities, TMC428 ignores limits velocity acceleration, realize arbitrary velocity profiles, controlled completely user. TMC428 capabilities generate interrupts depending different stepper motor conditions chosen interrupt mask. However, status bits sent back automatically microcontroller each time sends data TMC428 sufficient polling techniques. TMC428 provides different modes reference switch handling. default reference switch mode, three reference switch inputs (REF1, REF2, REF3) defined left side reference switches, each stepper motor. another mode, reference input (REF1) defined left reference switch input motor number one, reference input (REF2) defined left reference switch input motor number two, reference input (REF3) defined right reference switch stepper motor number one. that mode, there reference switch input available stepper motor three. With external multiplexer 74HC157 stepper motor have left right reference switch. Many serial stepper motor drivers provide different status bits (driver active, inactive, error bits (short ground, wire open, have access those error bits, datagrams with total length bits sent back from stepper motor driver chain TMC428 buffered within wide registers. microcontroller direct access these registers. Although, TMC428 provides datagrams with bits, only last bits sent back from driver chain buffered read microcontroller. This because buffering times bits sufficient chain three stepper motor drivers (see Figure 2-1, page most other drivers sending back bits. chain three TMC236 TMC239 TMC246 TMC249 status bits accessible. From
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
software point view, TMC428 provides registers, accessed microcontroller (µC) serial interface uniform way. Each datagram contains address bits, read-write selection bit, data bits, access registers on-chip memory. Each time, sends datagram TMC428, simultaneously receives datagram from TMC428. This simplifies communication with TMC428 makes programming easy. Most microcontrollers have hardware interface, which directly connects serial four wire microcontroller interface TMC428. microcontrollers without hardware, software doing serial communication completely sufficient easily implemented.
Notation Number Systems Notation Power
Decimal numbers used usual without additional identification. Binary numbers identified prefixed character. Hexadecimal numbers identified prefixed character. example decimal number decimal system written %101010 binary number system, written hexadecimal number system. With this, TMC428 datagrams written numbers (e.g. $1234ABCD addition basic arithmetic operators operator power required different sections this data sheet. better readability instead notation used.
Signal Polarities
default, signals- external internal -are high active, polarity some signals programmable inverted. pre-fixed lower case indicates active signals (e.g. nSCS_C, nSCS_S). example polarity nSCS_S inverted programming, also polarity datagram bits inverted programming (see section page 27).
Units Motion Parameters
Motion parameters position, velocity, acceleration given integer values within TMC428 specific units. Section 8.14 page explains calculate steps, steps second, steps second square from given TMC428 integer values. With given stepper motor resolution calculate physical units angle, angular velocity, angular acceleration.
Representation Signed Values Two's Complement
Those motion parameters that have cover negative positive motion direction well processed signed numbers represented twos complement usual. Signed motion parameters x_target, x_actual, v_target, v_actual, a_actual, a_threshold (pls. refer section 8.9, page 18). Limit motion parameters v_min, v_max, a_max, represented unsigned binary numbers.
Tables Contents
table contents, table figures, table tables located data sheet.
Package Variants
TMC428 available three different package variants, qualified industrial temperature range. additional variant available automotive temperature range. package outlines dimensions included within this data sheet (page 45-47.)
part number TMC428-I TMC428-PI24 TMC428-A TMC428-DI20 Package SSOP16 mils, pins, plastic package, industrial (-40°C +85°C) RoHS compliant since date code 0424 (YYWW 2004) SOP24 mils, pins, plastic package, industrial (-40°C +85°C) RoHS compliant since date code 0518 (YYWW 2005) SSOP16 mils, pins, plastic package, automotive (-40°C +125°C) DIL20 mils, pins, plastic package, industrial (-40°C +85°C) [This package variant recommended designs] JEDEC Drawing MO-137 (150 mils) MS-013 (300 mils) MO-137 (150 mils) MS-001 (300 mils)
Table 3-1: TMC428 package variants
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Pinning
There three package variants TMC428 available. smaller SSOP16 package sufficient TRINAMIC stepper motor drivers (TMC236 TMC239 TMC246 TMC249) with three drivers chain most stepper motor drivers from other vendors. Some stepper motor drivers from other vendors have serial data output cannot simply arranged daisy chain drive more than motor. package variants SOP24 DIL20 have additional driver selection outputs (nSCS2, nSCS3) those stepper motor drivers without serial data output. inputs Schmitt-Trigger. Possibly unused inputs (REF1, REF2, REF3, SDI_S) need connected ground. Hint: Preferably, long wires reference switch inputs (REF1, REF2, REF3) should avoided. long wires, pass filter spike suppression should provided (pls. refer TMC428 evaluation board schematic example).
nSCS3 n.c. REF1 REF1 REF2 REF3 TEST nSCS_C SCK_C SDI_C SDI_S nSCS_S SCK_S SDO_S SDO_C REF2 REF3 TEST nSCS_C SCK_C SDI_C n.c. SDI_S nSCS3 nSCS2 REF1 nSCS_S SCK_S SDO_S REF3 SDO_C n.c. TEST REF2 SDI_S nSCS2 nSCS_S SCK_S SDO_S SDO_C SDI_C SCK_C nSCS_C
TRINAMIC
TRINAMIC
SSOP16 (150 MILS)
Figure 4-1: TMC428 (*the DIL20 package variant recommended designs)
TRINAMIC
428-PI24
428-DI20
TMC428-I/A
n.c.
SOP24 (300 MILS)
DIL20 (300 MILS)
Reset nSCS_C SCK_C SDI_C SDO_C nINT
SSOP16
SOP24
DIL20*
In/Out
nSCS_S nSCS2 nSCS3 SCK_S SDO_S SDI_S REF1 REF2 REF3 TEST n.c.
Description internal power-on reset clock input active chip select input driven from serial data clock input driven from serial data input driven from serial data output input multiplexed nINTERRUPT output communication with idle (resp. nSCS_C Important Note: SDO_C will never high impedance, this function added with single gate 74HCT1G125 (pls. refer Figure page chip select signal stepper motor driving chain chip select signal (SOP24 DIL20 package only) chip select signal (SOP24 DIL20 package only) serial data clock output stepper motor driver chain serial data output stepper motor driver chain serial data input from stepper motor driver chain Note: pull-up/-down resistor SDI_S avoids high impedance reference switch input reference switch input reference switch input supply +3.3V supply ceramic capacitor +3.3V supply ground must connected close possible chip connected
Table 4-1: TMC428 (*the DIL20 package variant recommended designs) Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Functional Description Block Diagram
From software point view, TMC428 provides registers different units on-chip (see Figure 5-1), accessed serial interface uniform way. serial interface uses just simple protocol with fixed length datagrams read write access. serial interface stepper motor driver chain configured initialization sequence which writes configuration into on-chip RAM. Once configured serial driver interface works autonomously. internal multiple port controller TMC428 takes care access scheduling. user read write registers on-chip time. registers hold global configuration parameters motion parameters. on-chip stores configuration serial driver interface micro step table. ramp generator monitors motion parameters stored registers calculates velocity profiles controlling pulse generator. pulse generator then generates step pulses taking into account user defined motion parameter limits. serial driver interface sends datagrams stepper motor driver chain whenever step pulse comes. micro step unit (including sequencer) processes step pulses from pulse generator- representing micro steps, half steps, full steps depending selected step resolution -and makes results available serial driver interface. ramp generator also interfaces reference switch inputs. Unused reference switches have connected ground. pull-down resistor necessary SDI_S input TMC428 those serial peripheral interface stepper motor drivers that their serial data output high impedance while inactive. interrupt controller continuously watches reference switches ramp generator conditions generates interrupt required. save pins, interrupt signal multiplexed SDO_C signal. This output becomes active interrupt signal called nINT while nSCS_C high (see Figure 6-1, page microcontroller disables interrupt during access TMC428 enables interrupt otherwise, multiplexed interrupt output TMC428 behaves like dedicated interrupt output. polling, TMC428 sends status interrupt signal microcontroller with each datagram. drive stepper motor target position, just write target position into associated register sending datagram TMC428. stepper motor with target velocity, just write velocity into register assigned stepper motor.
REF3 REF2
interrupt controller
[nSCS2] [nSCS3] nSCS_S SCK_S SDO_S SDI_S
nSCS_C SCK_C SDI_C SDO_C
serial interface
ramp generator pulse generator
micro step unit including sequencer
serial driver interface
multiple ported
TEST
power-on reset
voltage regulator
470nF
Figure 5-1: TMC428 functional block diagram
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Serial Peripheral Interfaces
four pins named SCS_C, SCK_C, SDI_C, SDO_C form serial microcontroller interface TMC428. communication between microcontroller TMC428 takes place datagrams fixed length. Concerning communication, master TMC428 slave, with TMC428 turn being master stepper motor driver daisy chain. Similar microcontroller interface, TMC428 uses four wire serial interface communication with stepper motor driver daisy chain. four pins named SCS_S, SCK_S, SDO_S, SDI_S form serial stepper motor driver interface. Stepper motor drivers with parallel inputs used connection with TMC428 with some additional glue logic.
Automatic Power-On Reset
TMC428 performs automatic power-on reset. details section Power-On-Reset, page TMC428 cannot accessed before power-on-reset completed clock stable. register bits initialized with during power reset, except clock pre-divider clk2_div (see section 9.7, page that initialized with
Serial Peripheral Interface
serial microcontroller interface TMC428 behaves simple shift register. shifts serial data SDI_C with rising edge clock signal SCK_C copies content shift register with rising edge selection signal nSCS_C into buffer register. serial interface TMC428 immediately sends back data read from registers read from internal signal SDO_C. signal SDO_C sampled with rising edge SCK_C, SDO_C becomes valid least four clock cycles after SCK_C becomes outlined timing diagram Figure 6-1. detailed timing parameters Table 6-1, page signals from interface asynchronous clock signal TMC428. Because on-the-fly processing input data stream, serial microcontroller interface TMC428 requires serial data clock signal SCK_C have minimum high time three clock cycles. data signal SDI_C driven microcontroller valid rising edge serial data clock input SCK_C. maximum duration serial data clock period unlimited. While interface TMC428 idle, SDO_C signal (active low) interrupt status nINT integrated interrupt controller TMC428. timing multiplexed interrupt status signal nINT characterized parameters (see Table 6-1, page 10). Hint: microcontroller TMC428 work different clock domains that asynchronous each other, timing interface microcontroller should made conservative that length clock cycle equals more clock cycles TMC428 clock CLK. This make system robust concerning frequency drift, jitter, etc.
tCLK tDATAGRAMuC tSUCSC tHDCSC tSCKCL tSCKCH tHDCSC tSUCSC
nSCS_C SCK_C SDI_C SDO_C nINT
sampled SDI_C SDI_C sampled full datagram SDI_C sampled
sdi_c_bit#3
sdi_c_bit#30 sdi_c_bit#tPD
sdi_c_bit#0 sdo_c_bit#0
sdo_c_bit#3
sdo_c_bit#30 sdo_c_bit#
nINT
Figure 6-1: Timing diagram serial interface
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
complete serial datagram frame fixed length bit. While data transmission from microcontroller TMC428 idle, active serial chip select input nSCS_C also serial data clock signal SCK_C high. While signal nSCS_C high, TMC428 assigns status internal active interrupt signal named nINT serial data output SDO_C (see Figure 6-1). serial data input SDI_C TMC428 driven microcontroller. Important Hint: contrast most other compatible devices, SDO_C signal TMC428 always driven. will never high impedance ,,Z. high impedance required SDO_C connected microcontroller, simply realized using single gate 74HCT1G125.
REF2
REF3 nSCS_S
nSCS_C SDI_C SCK_C
nSCS_C SDI_C SCK_C SCK_S
TMC428
SDO_S
SDOZ_C 74HCT1G125
SDO_C
TEST
SDI_S
Figure Making TMC428 SDO_C output high impedance with single gate 74HCT1G125
signal nSCS_C high least three clock cycles before starting datagram transmission. initiate transmission, signal nSCS_C low. Three clock cycles later serial data clock low. most significant (MSB) wide datagram comes first least significant (LSB) transmitted last one. data transmission finished setting nSCS_C high three more cycles after last rising SCK_C slope. nSCS_C SCK_C change opposite order from high data transmission these signals change from high beginning. timing serial microcontroller interface outlined Figure 6-1.
Serial Peripheral Interface Stepper Motor Driver Chain
timing serial stepper motor interface similar that microcontroller interface. directly connects smart power stepper motor drivers. datagram configurable individually each stepper motor driver chip daisy chain. simply configurable sending fixed sequence datagrams TMC428 initialize after power-up. Once initialized, TMC428 autonomously generates datagrams stepper motor driver daisy chain without additional interventions microcontroller. datagram each stepper motor driver composed called primary signal bits provided micro step unit TMC428 individually each stepper motor. Each primary signal represented five code word called primary signal code. order primary signal bits forming datagrams stepper motor driver daisy chain defined order primary signal code words configuration area.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
tDATAGRAMdrv tCLK datagram bits
nSCS_S SCK_S SDO_S SDI_S
tSUSCSdrv tHDSCSdrv
sdo_s_bit#0 sdi_s_bit#0
tCKSL tCKSH
sdo_s_bit#1 sdi_s_bit#
sdo_s_bit#n-1 sdi_s_bit#n-
sdo_s_bit#n sdi_s_bit#n
sampled SDI_S
sampled SDI_S full stepper motor driver datagram
sampled SDI_S
Figure 6-3: Timing diagram serial stepper motor driver interface
switch next motor, additional called next motor (NxM-Bit) prefixed five wide primary signal code words. total data word width bit. Each NxM-Bit effects increment internal stepper motor address until processing stepper motors within daisy chain completed. parameter called LSMD (last stepper motor driver) defines total number stepper motors within daisy chain. codes written into serial interface configuration area represent mapping control signals provided micro step units control bits drivers. might noted here, that configuring serial driver interface much easier might seem here. explained detail, illustrated examples below (see section Stepper Motor Driver Datagram Configuration, page 36).
Symbol tSUCSC tHDCSC tSCKCL tSCKCH tDAMAGRAMuC tDAMAGRAMuC fCLK tCLK
Parameter Setup Clocks nSCS_C Hold Clocks nSCS_C Serial Clock Serial Clock High SDO_C valid after SCK_C nINTERRUPT status valid after nSCS_C SDO_C valid after nSCS_C high Datagram Length Datagram Length Clock Frequency Clock Period tCLK fCLK CLK-rising-edge-to-Output Propagation Delay
32*6 12.375 62.5
Unit periods periods periods periods periods periods periods periods
Table 6-1: Timing characteristics serial microcontroller interface
Symbol tSUSCSdrv tHDSCSdrv tCKSL tCKSH tDAMAGRAMdrv tDAMAGRAMdrv
Parameter
Datagram Length Datagram Length fCLK CLK-rising-edge Outputs Delay
8+8+1*16+8+8=48
512+64*512+512= 33792 2112
Unit periods periods periods periods periods
Table 6-2: Timing characteristics serial stepper motor driver interface
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
timing serial driver interface programmable wide range. clock divider provides clock cycles (tCLK) serial driver interface data clock period. default duration clock period (tSCKCL+tSCKCH) signal nSCS_S 16+16=32 clock periods clock signal CLK. minimal duration serial interface clock period (tSCKCL+tSCKCH) 8+8=16 clock cycles signal outlined Figure 6-3. Also, polarities signals nSCS_S SCK_S programmable driver chips from other vendors with inverted polarities without additional glue logic. input SDI_S serial driver interface must always driven defined level. avoid high impedance (,,Z) that input while stepper motor driver chain idle, pull-up resistor pull-down resistor required that input.
Datagram Structure
microcontroller (µC) communicates with TMC428 four wire (nSCS_C, SCK_C, SDI_C, SDO_C) serial interface. Each datagram sent TMC428 SDI_C each datagram received from TMC428 SDO_C bits long. first sent (most significant named sdi_c_bit#31 Figure 6-1). last sent (least significant named sdi_c_bit#0 Figure 6-1). During reception datagram, TMC428 immediately sends back datagram same length microcontroller. This datagram result request from microcontroller. With each wide datagram microcontroller sends TMC428, simultaneously receives wide datagram. read request distinguished from write request datagram named TMC428 immediately sends back requested read data lower datagram bits. Status bits sent back higher datagram bits. Datagrams sent from microcontroller TMC428 have form:
ADDRESS
DATAGRAM sent from TMC428 SDI_C
DATA
Table DATAGRAM structure sent from (MSB sent first) wide datagrams sent TMC428 assorted four groups bits: (register select) selecting either registers on-chip RAM; ADDRESS bits addressing memory within register within area; (read write (RW=1 read RW=0 write)) distinguishing between read access write access; DATA bits write access- read access these bits don't care should ,,0,,. Different internal registers TMC428 have different lengths. some registers only subset these data bits used. Unused data bits should ,,0,, clearness. Some addresses select more than single register mapped together into data space. wide datagrams received from TMC428 contain groups bits: STATUS BITS DATA BITS. status bits, sent back with each datagram, carry most important information about internal states TMC428 settings reference switches. These datagrams have form:
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
DATAGRAM sent back from TMC428 SDO_C
STATUS BITS DATA BITS xEQt1 xEQt2 xEQt3 CDGW Table 6-4: DATAGRAM structure received (MSB received first) status internal high active interrupt controller status output signal. Handling interrupt conditions without using interrupt techniques possible polling this status bit. interrupt signal also directly available SDO_C TMC428 nSCS_C high. SDO_C directly connected interrupt input microcontroller. Since SDO_C nINT output multiplexed, microcontroller disable interrupt input while sends datagram TMC428, because SDO_C signal- driven TMC428 -alternates during datagram transmission. initialization purposes, TMC428 enables direct communication between microcontroller stepper motor driver chain sending called cover datagram (see sections 9.3). position cover_position actual length cover_len cover datagram specified writing them into common register. Writing wide cover datagram register cover_datagram will fade that cover datagram into next datagram sent stepper motor driver chain. default setting, TMC428 only sends datagrams demand. Optionally, continuous update- periodic sending datagrams stepper motor driver chain also possible. status named CDGW (cover datagram waiting) handshake signal microcontroller regard datagram covering mechanism. This feature necessary enable direct data transmission from microcontroller stepper motor driver chips initialization purposes. CDGW status also gives status datagram_high_word datagram_low_word (see section 9.1). status bits RS3, RS2, represent settings reference switches. But, reference switch inputs REF3, REF2, REF1 mapped directly these status bits. Rather, reference switch inputs have different functions, depending programming (see pages 24). three status bits xEQt3, xEQt2, xEQt1 indicate individually each stepper motor, reached target position. status bits RS3, RS2, bits xEQt3, xEQt2, xEQt1 trigger interrupt enable simple polling techniques. Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Simple Datagram Examples
prefix- normally indicating binary representation this data sheet omitted following datagram examples. Assuming, would like write (RW=0) register (RRS=0) address %001101 following data word %0000 0000 0000 0001 0010 0011, would have send following datagram TMC428. With inactive interrupt (INT=0), cover datagram waiting (CDGW=0), reference switches inactive (RS3=0, RS2=0, RS1=0), stepper motors target position (xEQt3=1, xEQt2=1, xEQt1=1) status bits would %10010101 TMC428 would send back datagram: read (RW=1) back register written before, would have send datagram TMC428 would back from datagram Write (RW=0) access on-chip (RRS=1) address %111111 occurs similar register access, with RRS=1. write data words %100001 %100011 successive pair-wise addresses %1111110 %1111111 (%100001 %1111110 %100011 %1111111) which commonly addressed datagram (see pages 35), would have send datagram read (rw=1) from that on-chip memory address, would have send datagram
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Address Space Partitions
address space partitioned different ranges. Each three stepper motors registers individually assigned arranged within contiguous address space. additional registers within address space holds some global parameters common stepper motors. dedicated global parameter register essential configuration serial four wire stepper motor driver interface. half on-chip address space holds configuration parameters stepper motor driver chain. other half on-chip address space provided store micro step table required. first seven datagram bits (sdi_c_bit#31 sdi_c_bit#30 sdi_c_bit#25, respectively ADDRESS) address whole address space TMC428.
address ranges (incl. RRS) %000 0000 %000 1111 %001 0000 %001 1111 %010 0000 %010 1111 %011 0000 %011 1110 %011 1111 %100 0000 %101 1111 %110 0000 %111
assignment registers stepper motor registers stepper motor registers stepper motor common registers global parameter register addresses driver chain configuration addresses icrostep table
registers with bits 128x6
Table 7-1: TMC428 address space partitions stepper motors controlled directly writing motion parameters into associated registers. Only register write access necessary change target motion parameter. E.g. change target position stepper motor, microcontroller send only datagram TMC428. same true changing target velocity. Some parameters packed together single data word single address. Those parameters- initialized once unchanged during operation -have changed commonly. Access on-chip addresses concern successive addresses. always data words modified with each write access on-chip RAM. Once initialized after power-up, content usually left unchanged.
Read Write
Read write access selected (sdi_c_bit#24) datagram sent from TMC428. on-chip configuration registers writeable with read-back option. Some addresses read-only. Write access (RW=0) some those read-only registers triggers additional functions, explained detail later.
Register
register address mapping given Table page These registers initialized internally during power-up. During power-up initialization, TMC428 sends datagrams stepper motor driver chain. Note: initialized before writing target parameters register set.
Area
address mapping given Table 10-1 page on-chip initialized internally during power-up. This done microcontroller before operation. Note: There unused addresses within address space TMC428. Access these addresses effect. ever, access should avoided, because this address space used future devices.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Important Hint: register bits initialized with during power reset, except clock predivider clk2_div (see section 9.7, page that initialized with
DATAGRAM sent from TMC428 SDI_C ADDRESS
smda
DATA three stepper motor register sets (SMDA={00, 10}) x_target x_actual v_min v_max v_target v_actual a_max a_actual is_agtat is_aleat is_v0 a_threshold pmul pdiv ref_conf interrupt_mask interrupt_flags pulse_div ramp_div usrs dx_ref_tolerance x_latched common registers (SMDA=11) datagram_low_word datagram_high_word cover_position cover_len cover_datagram power-down
RW=0 WRITE access RW=1 READ access
polarities
cont_update
nSCS_S SCK_S PH_AB FD_AB DAC_AB cs_ComInd
refmux mot1r
clk2_div
LSMD
ADDRESS
DATA
Table 7-2: TMC428 register address mapping
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Register Description
registers hold binary coded numbers. Some unsigned (positive) numbers, some signed numbers twos complement, some control bits single flags. functionality different registers depends ramp mode page 22).
x_target (IDX=%0000)
This register holds current target position units full steps, respectively micro steps. unit target position depends setting associated micro step resolution register usrs. difference x_target x_actual unequal zero, TMC428 moves stepper motor that direction x_target that difference becomes zero. condition x_target x_actual must satisfied motion into correct direction. Both, target position x_target current position x_actual altered fly. Usually x_target modified start positioning. move from position another, ramp generator TMC428 automatically generates ramp profiles consideration velocity limits v_min v_max acceleration limit a_max. Note: registers x_target, x_actual, v_min, v_max, a_max initialized with zero after power Thus, step pulses generated because motion prohibited.
x_actual (IDX=%0001)
current position each stepper motor available read registers called x_actual. actual position overwritten microcontroller. This feature reference switch position calibration under control microcontroller.
v_min (IDX=%0010)
This register holds absolute value velocity below which stepper motor stopped abruptly. parameter v_min relevant only deceleration while reaching target position. should greater than zero. This control value allows reach target position faster because stepper motor slowed down below v_min before target reached. Also consider, that finite numerical representation integral relations, target position reached exactly, calculated velocity less than one, before target reached. setting v_min least assures reaching each target position exactly. unit velocity parameters (v_max, v_target, v_actual) steps time unit. scale velocity parameters (v_min, v_max, v_target, v_actual) defined parameter pulse_div (see page details) depends clock frequency TMC428.
v(t) v_max
v_min t0acceleration
tconstant velocity
deceleration
acceleration
deceleration
Figure 8-1: Velocity ramp parameters velocity profiles
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
v_max (IDX=%0011)
This parameter sets maximum motor velocity. absolute value velocity will exceed this limit, except limit v_max changed during motion value below current velocity. Note: target position x_target current position x_actual equivalent value (e.g. both zero reference point), assigned stepper motor should stopped first, parameter v_max should zero hold assigned stepper motor rest before writing into register x_target x_actual.
v_target (IDX=%0100)
modes RAMP_MODE SOFT_MODE this register holds current target velocity calculated internally ramp generator. mode VELOCITY_MODE target velocity written into this register. Then associated stepper motor accelerates until reaches target velocity specified. VELOCITY_MODE velocity changed according motion parameter limits register v_target changed. HOLD_MODE register v_target ignored.
v_actual (IDX=%0101)
This read-only register holds current velocity associated stepper motor. Internally, ramp generator TMC428 processes with bits while only bits read v_actual. actual velocity zero read microcontroller means that current velocity interval between zero one. Because this, actual velocity should used detect stop stepper motor. stop detection there dedicated within interrupt register, which simply read micro processor generate interrupt. Writing zero register v_actual, which possible HOLD_MODE only, immediately stops associated stepper motor, because hidden bits zero with each write access register v_actual. HOLD_MODE only, this register read-write register. HOLD_MODE, motion parameters ignored microcontroller full control generate ramp. that mode, TMC428 only handles microstepping datagram generation associated stepper motor daisy chain.
a_max (IDX=%0110)
absolute value maximum acceleration defined this register. ranges from 2047. unit acceleration change step frequency time unit divided 256. scale acceleration parameters (a_max, a_actual, a_threshold) defined parameter ramp_div (see section 8.14, page details) depends clock frequency TMC428. Setting a_max zero during motion stepper motor results inability stepper motor stop, because cannot change velocity. 8.7.1 a_max_lower_limit a_max_upper_limit ramp_div pulse_div
Under special conditions, parameter a_max might have lower limit (>1) might upper limit (<2047) concerning deceleration RAMP_MODE SOFT_MODE difference between ramp_div pulse_div more than one. This because deceleration ramp internally limited 2^19 steps respectively micro steps, which sufficient most applications. lower limit concerning deceleration given a_max_lower_limit ramp_div pulse_div With v_max 2048 1448) lower, a_max_lower_limit half this value. ramp_div pulse_div limit a_max_lower_limit parameter a_max down course other side, upper limit a_max given a_max_upper_limit ramp_div pulse_div
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
ramp_div pulse_div a_max_upper_limit 2048 parameter a_max might value 2047. Important Note: a_max without restrictions within range 2047 those combinations ramp_div pulse_div with ramp_div pulse_div parameter a_max must below a_max_lower_limit except a_max condition a_max a_max_lower_limit well a_max a_max_upper_limit must satisfied reach target position without oscillations. that condition satisfied, oscillations around target position occur. description parameters ramp_div pulse_div page a_max_lower_limit a_max_upper_limit restrict allowed range a_max only those cases where ramp_div non-equal pulse_div differ more than one. These both limits a_max concern deceleration phase RAMP_MODE SOFT_MODE only. long ramp_div pulse_div valid, value a_max within range (0,1, 2047) allowed there exists valid pair {pmul, pdiv} each a_max. Qualitative verbalized, this because acceleration scaling determined ramp_div compatible with step velocity scaling determined pulse_div. other words, large ramp_div stands acceleration where large pulse_div stands velocity acceleration compatible with speed high speed well, high acceleration more compatible with high speed. Important Note: Changing least parameter triple {a_max, ramp_div, pulse_div} requires re-calculation parameter pair {pmul, pdiv} update associated register. description parameters pmul pdiv section 8.10, page
a_actual (IDX=%0111)
actual acceleration, which TMC428 actually applies stepper motor, read microcontroller from this read-only register monitoring purposes. actual acceleration used select scale factors coil currents. Internally, updated with each clock. returned value a_actual smoothed avoid oscillations readout value. Thus, returned a_actual values should used directly precise calculations.
is_agtat is_aleat is_v0 a_threshold (IDX=%1000)
These parameters represent current scaling values applied motor depending ramp phase: parameter is_agtat applied acceleration greater than (gt) threshold acceleration (at). This increase current during acceleration phases. parameter is_aleat applied acceleration lower than equal (le) threshold acceleration. This nominal motor current. third parameter is_v0 applied stepper motor rest, save power, keep cool, avoid noise probably caused chopper drivers. parameter a_threshold threshold used compare with current acceleration select current scale factor. three parameters is_agtat, is_aleat, is_v0 vectors three width. these selected conditionally assigned interim vector i_scale. current scaling factor defined Table 8-1.
i_scale 12.5 37.5 62.5 87.5
Table 8-1: Coil current scale factors
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Important Notes: maximum current scaling factor selected i_scale %000. This power-on default. minimum current scaling factor 0.125 selected i_scale %001. current scaling factor proportionally reduces effective number micro steps full step. example, with i_scale %100 50%) number effective micro steps full step halved. three scale factors is_agtat, is_aleat, is_v0 selected according Table 8-2. velocity zero, parameter is_v0 used scaling. velocity zero, either is_aleat is_agtat used scaling, depending absolute value acceleration acceleration threshold a_threshold. athreshold 1023 athreshold athreshold is_v0 is_aleat is_aleat is_agtat
Table 8-2: Current scale selection scheme automatic motion dependent current scale feature TMC428 provided primarily micro step operation. also applied full step half step drivers, those provide current control bits. those drivers, could initialize micro step table with constant function, square function sine wave using most significant bits. configuration continuous_update stepper motor global parameter register (Table 9-1, page must make sure that coil current scaled motors rest. current scaled takes place delayed avoid mechanical step lost oscillations motor after been stopped. delay time t_isv0_delay[s] 2^ramp_div fCLK[Hz]. Important Hints: signed compare a_threshold with a_max, setting a_threshold with value greater than 1023 results using is_aleat current scaling a_max greater than 1023 during acceleration instead using is_agtat current scaling. most applications, setting is_aleat is_agtat same value using lower value is_v0 best choice.
8.10 pmul pdiv (IDX=%1001)
stepper motors driven with trapezoidal velocity profile, which become triangular maximum velocity reached (see Figure 8-1, page 16). Depending difference between target position x_target actual position x_actual, ramp generator continuously calculates target velocities v_target pulse generator (see Figure 8-2, page 20). pulse generator then generates (micro) step pulses taking into account motion parameter limits (v_min, v_max, a_max). With target velocity proportional difference target position x_target current position x_actual, stepper motor approaches target position. This also works, target position changed during motion. stepper motor moves target position until difference between target position x_target current position x_actual vanishes. With right proportionality factor target positions quickly reached without overshooting them. proportionality factor primarily depends acceleration limit a_max clock divider parameters pulse_div ramp_div. These separate clock divider parameters- same value most applications -give extremely wide dynamic range acceleration velocity. These separate parameters allow reaching very high velocities with very acceleration.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
proportionality factor small, this results slow approach target position. large, causes overshooting even oscillations around target position. calculation proportionality factor simple: representation proportionality factor parameters p_mul p_div some kind fixed point representation. p_mul p_div with p_mul {128, 128+1, 128+2, 128+3, 128+127} p_div Instead direct storage parameters p_mul p_div, TMC428 stores parameters called pmul pdiv, with p_mul pmul where pmul 127} pdiv 13}. reason p_mul ranges from that divided p_div which power ranging from 65536. values less than achieved increasing p_div. Note: parameters pmul pdiv share single address (IDX=%1001, Table 7-2, page 15). p_mul fixed ,,1. sending pmul internally sets p_mul pmul. other words, %10000000 ORed vector with content register pmul. p_div
3+pdiv
2^(3+pdiv)
pmul
pdiv
v_min
v_max
a_max
x_target v_target RAMP GENERATOR x_actual PULSE GENERATOR (micro) step pulses
clk32 ramp_div pulse_div
clock_div32
Figure 8-2: Ramp generator pulse generator parameter calculated given acceleration. This calculation done TMC428 itself, because this task done only once given acceleration limit. acceleration limit stepper motor parameter, which usually fixed most applications. acceleration limit changed nevertheless, microcontroller could calculate demand pair p_mul p_div each acceleration limit a_max given ramp_div pulse_div. Also, pre-calculated pairs p_mul p_div read from table maybe sufficient.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
8.11 Calculation p_mul p_div
proportionality factor p_mul p_div depends acceleration limit a_max frequency pre-divider parameters ramp_div pulse_div. pair p_mul p_div calculated once each provided acceleration limit a_max. There exist more than valid pair p_mul p_div given a_max. accelerate, ramp generator accumulates acceleration value actual velocity with each time step. Internally, absolute value velocity represented 11+8 bits, while only most significant bits sign used input step pulse generator. there 2048 values possible specify velocity, ranging from 2047. ramp generator accumulates a_max divided each time step velocity during acceleration phases. acceleration from velocity maximum velocity 2047 spans over 2048* a_max pulse generator clock pulses. Within that acceleration phase, pulse generator generates 2048* a_max steps (micro) step unit. parameter clock ramp_div pulse_div ramp_div pulse_div divider ratio 2^(ramp_div-pulse_div). During acceleration, velocity increased until velocity limit v_max reached deceleration required reach target position exactly (see Figure 8-1). TMC428 automatically decelerates, required using difference between current position target position proportionality parameter which 2048 With this, gets 2048 2048* a_max 2^(ramp_div-pulse_div) This expression simplified a_max ramp_div-pulse_div avoid overshooting, parameter p_mul should made approximately smaller than calculated. Alternatively, arrange reduced amount proportionality parameter small, target position will reached slower, because slow down ramp starts earlier. target position approached with minimal velocity v_min, whenever internally calculated target velocity becomes less than v_min. With good parameter minimal velocity v_min reached couple steps before target position. With parameter little large small v_min overshooting step respectively micro step occur. Decrementation parameter pmul avoids such one-step overshooting. Note: Changing least parameter triple {a_max, ramp_div, pulse_div} requires recalculation parameter pair {pmul, pdiv} update associated register necessary.
v(t) v_max
v_min
Figure 8-3: Proportionality parameter outline velocity profile(s) first approach, represent parameter p_mul p_div (128+pmul) 2^(3+pdiv) chooses pair pmul pdiv that approximates with pmul range representing p_mul range pdiv representing p_div ,64, 256, 512, 1024, 2048, 4096, 8192, 16384, 32786, 65536}. There only 1792 pairs (pmul, pdiv). simply possible pairs (pmul, pdiv) with program choose matching pair. find pair, calculates a_max ramp_div-pulse_div
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008) p_mul p_div (128+pmul) 2^(3+pdiv)
each pair (pmul pdiv) select pairs satisfying condition 0.95 1.0. value interpreted function q(a_max, ramp_div, pulse_div, pmul, pdiv) gives quality criterion required. Although indicates that (pmul pdiv) perfectly represents desired given a_max, this could cause overshooting because finite numerical precision. case high resolution microstepping, overshooting micro step negligible most applications. avoid overshooting, pmul-1 instead selected pmul select pair (pmul, pdiv) with 0.95. first given source code example ,,pmulpdiv.c showing programming language based this brute force approach. Some conversions base present equations help reduce calculation effort drastically. 8.11.1 Optimized Calculation p_mul p_div With equations above, simplify calculation parameters pmul pdiv using expression pmul 2^pdiv with a_max pulse_div ramp_div avoid overshooting, p_reduced p_reduction[%]) with p_reduction approximately instead unreduced With this, gets pmul p_reduced 2^pdiv 0.95 2^pdiv 128. With this, pmul becomes function parameter pdiv. find valid pair {pmul, pdiv} just choose that pair {pmul, pdiv} pairs pdiv with pmul within valid range pmul 127. example ,,pmulpdiv.c showing programming language found page This source code directly copied from datasheet file.
8.12 ref_conf ramp_mode (rm) (IDX=%1010)
called (latched position) read only status bit. configuration words ref_conf ramp_mode accessed common address, because these parameters normally initialized only once. configuration bits ref_conf select behavior reference switches, while bits ramp_mode (rm) select four possible stepping modes.
ramp_mode mode RAMP_MODE SOFT_MODE VELOCITY_MODE HOLD_MODE function default mode positioning applications with trapezoidal ramp similar RAMP_MODE, with soft target position approaching mode velocity control applications, change velocities with linear ramps velocity controlled microcontroller, motion parameter limits ignored
Table Outline TMC428 motion modes
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
mode called RAMP_MODE provided default mode positioning tasks, while VELOCITY_MODE applications, where stepper motors have driven precisely with constant velocity. SOFT_MODE similar standard RAMP_MODE except that target position approached exponentially reduced velocity. This feature useful applications where vibrations target position have minimized. HOLD_MODE provided motion control applications, where ramp generation completely controlled microcontroller. TMC428 three reference switch inputs REF1, REF2, REF3. Without additional hardware, three reference switches available. These switches used reference switches used automatic stop switches well. default, reference switch input assigned individually each stepper motor left reference switch (see Figure 9-3, page 32). reference switch input REF3 alternatively assigned right reference switch stepper motor number (see Figure 9-4, page 32). that configuration left right reference switch assigned stepper motor one, left reference switch assigned stepper motor two, reference switch assigned stepper motor three. named mot1r stepper motor global parameter register (rrs=1 address=%111111) selects these configurations. With additional hardware, reference switches- left right assigned each stepper motor -are supported. additional hardware just 74HC157, where three four 2-to-1-multiplexers used (see Figure 9-5, page 32). feature multiplexing controlled named refmux stepper motor global parameter register (rrs=1 address=111111). reference switch used automatic stop switch. reference switch indicates reference position within given tolerance. automatic stop function switches enabled disabled. Also reference tolerance range (see register dx_ref_tolerance, page programmed, allow motion within reference switch active range during reference point search. When reference switch triggered, actual position stored automatically. This allows precise determination reference point. This initiated writing dummy value register x_latched (see page 27). read-only status (latch position waiting) then indicates that next change selected reference switch will trigger latching position x_actual. automatically reset after position latching.
motor left switch right switch
traveller negative direction mechanical inaccuracy switches (switching hysteresis) xleft xtraveler xright positive direction
dx_ref_tolerance
Figure 8-4: Left switch right switch reference search automatic stop function
ref_conf mnemonic function DISABLE_STOP_L Stops motor velocity negative (v_actual left reference switch becomes active. Left reference switch disabled automatic stop switch. DISABLE_STOP_R Stops motor velocity positive (v_actual right reference switch becomes active. Right reference switch disabled automatic stop switch. SOFT_STOP Stopping takes place immediately, motion parameter limits ignored. Stopping takes place consideration motion parameter limits, stops with linear ramp. REF_RnL left reference switch controls reference switch functions. right (not left) reference switch controls reference switch functions. This power-on default (latched position waiting) bit. x_latched been initialized write access latch position change reference switch. after position latched.
Table 8-4: Reference switch configuration bits (ref_conf)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Note: Definition reference switch configuration REF_RnL effect stop function reference switches DISABLE_STOP_L='0' respectively DISABLE_STOP_R='0'. REF_RnL (reference switch Right Left) defines which switch reference switch: ,,1, right, else (set ,,0) left reference switch. bits contained ref_conf control semantic actions reference/stop switch modes interrupt generation explained later. stepper motor stops reference/stop switch, which corresponds actual driving direction, becomes active. configuration bits named DISABLE_STOP_L respectively DISABLE_STOP_R disable these automatic stop functions. SOFT_STOP set, motor stop forced reference switch done within motion parameter limits while otherwise stopping abruptly. Hint: There functional difference between reference switches stop switches. Reference switches used determine reference position stepper motor. Stop switches used automatic stopping motor when reaching limit. signals switches processed inputs named REF1, REF2, REF3 might used automatic stop switches, reference switches, both.
DATAGRAM sent from TMC428 ADDRESS
smda
DATA
ref_conf
RAMP, SOFT, VELOCITY, HOLD
Table 8-5: ref_conf ramp_mode (rm) data positions
8.13 interrupt_mask interrupt_flags (IDX=%1011)
TMC428 provides interrupt register eight flags each stepper motor. Interrupt bits named INT_<mnemonic>. interrupt back writing Each interrupt either enabled (,,1) disabled (,,0) individually associated interrupt mask named MASK_<mnemonic>. interrupt flags forced corresponding mask disabled (,,0). mapping interrupt mask bits interrupt bits itself diagrammed Table page interrupt SDO_C nINT active where interrupt status active high when least interrupt flag motor becomes set. interrupt mask enables disables each interrupt mask individually. interrupt status inactive, nINT high (,,1)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
latched position (waiting)
DISABLE_STOP_L DISABLE_STOP_R SOFT_STOP REF_RnL
TMC428 DATASHEET 2.03 December 2008)
(,,0). interrupt status mapped most significant (31) each datagram sent back (see Table 6-4, page only available SDO_C nINT TMC428 nSCS_C high. Demultiplexing multiplexed interrupt status signal SDO_C nINT done using additional hardware. necessary microcontroller always disables interrupt while sends datagram TMC428.
interrupt mnemonic function INT_POS_END stepper motor reached target position INT_REF_WRONG reference switch signal active outside (dx_ref_tolerance) INT_REF_MISS reference switch signal missing null position INT_STOP stop forced reference switch during motion INT_STOP_LEFT_LOW high transition left reference switch INT_STOP_RIGHT_LOW high transition right reference switch INT_STOP_LEFT_HIGH high transition left reference switch INT_STOP_RIGHT_HIGH high transition right reference switch
reference switch tolerance range
Table 8-6: interrupt mnemonics
DATAGRAM sent from TMC428
ADDRESS
DATA
interrupt mask MASK_STOP_RIGHT_HIGH MASK_STOP_LEFT_HIGH MASK_STOP_RIGHT_LOW MASK_STOP_LEFT_LOW MASK_STOP MASK_REF_MISS MASK_REF_WRONG MASK_POS_END INT_STOP_RIGHT_HIGH INT_STOP_LEFT_HIGH interrupt flags INT_STOP_RIGHT_LOW INT_STOP_LEFT_LOW INT_STOP INT_REF_MISS INT_REF_WRONG INT_POS_END
Table 8-7: interrupt register interrupt mask interrupt flag assigned interrupt condition occurs corresponding interrupt mask (,,1). Interrupt flags reset write access (RW=0) interrupt register address (IDX=%1011) with position cleared. Writing corresponding position leaves interrupt flag untouched. position reached while interrupt mask MASK_POS_END ,,1, named INT_POS_END one. switches processed inputs REF1, REF2, REF3 used stop switches automatic motion limiting, reference switches both. reference switch becomes active reference switch tolerance range- defined dx_ref_tolerance register -the interrupt flag INT_REF_WRONG interrupt mask MASK_REF_WRONG set. interrupt flag INT_REF_MISS reference switch inactive position mask MASK_REF_MISS enabled. INT_STOP flag set, reference switch forced stop interrupt mask MASK_STOP set. INT_STOP_LEFT_LOW flag reference
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
switch changes from high interrupt mask MASK_STOP_LEFT_LOW set. interrupt flag INT_STOP_RIGHT_LOW similar INT_STOP_LEFT_LOW right reference switch. INT_STOP_LEFT_HIGH indicates that left reference switch input changes from high mask MASK_STOP_LEFT_HIGH set. INT_STOP_RIGHT_HIGH indicates right reference switch mask MASK_STOP_LEFT_HIGH set.
8.14 pulse_div ramp_div usrs (IDX=%1100)
frequency external clock signal (see Figure 4-1, page CLK) divided (see Figure 8-2, page block clk_div32). This clock drives programmable clock dividers ramp generator pulse generator. pulse generator clock- defining maximum step pulse rate determined parameter pulse_div. pulse rate given R[Hz] f_clk[Hz] velocity 2^pulse_div 2048 where f_clk[Hz] frequency external clock signal. parameter velocity range 2047 represents parameters v_min, v_max absolute values v_target v_actual. pulse generator TMC428 would generate step pulse with each pulse generator clock pulse velocity could 2048. full step frequency RFS[Hz] R[Hz] 2^usrs. change pulse rate time unit (pulse frequency change second acceleration) given R[Hz/s] f_clk[Hz] f_clk[Hz] a_max 2^(pulse_div+ramp_div+29) constant within exponent because 2^29 2^11 32*32*256*2048, where comes from fixed clock pre-dividers, comes from velocity accumulation clock pre-divider, 2048 comes from velocity accumulation clock divider programmed a_max. parameter a_max range 2047. parameter ramp_div scales acceleration parameter a_max, where parameter pulse_div scales velocity parameters. RFS[Hz] R[Hz] 2^usrs.
significant bits (controlling current amplitude) (MSB) (MSB), (MSB), (MSB), (MSB), (MSB), (LSB)
usrs
[microsteps full step]
comment full step (constant current amplitude) half step
microstepping
Table 8-8: micro step resolution selection (usrs) parameter angular velocity stepper motor calculated based full step frequency Rfs[Hz] given number full steps rotation. Similar, angular acceleration stepper motor calculated based change full step frequency second RFS[Hz]. three wide parameter usrs (micro step resolution selection, where represents determines micro step resolution associated stepper motor according Table 8-8. There individual bits provided each phases (coils) current control provide micro steps full step. Depending micro step resolution, subset bits significant. Using full stepping, current amplitude constant both phases (coils) stepper motor polarity phase (coil) changes with each full step. micro step counters initialized during poweron reset. With each micro step associated counter accumulates programmed micro step resolution value usrs. Generally, number steps during linear acceleration velocity given With R[Hz] R[Hz/s] gets velocity^2 a_max 2^ramp_div 2^pulse_div 2^3. number full steps 2^usrs. Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
8.15 dx_ref_tolerance (IDX=%1101)
switches processed inputs REF1, REF2, REF3 used stop switches automatic motion limiting reference switches defining reference position stepper motor. allow motor drive near reference point, possible exclude motion range steps from stop switch function. parameter dx_ref_tolerance disables automatic stopping switch around origin (see Figure 8-4, page 23). dx_ref_tolerance fare from origin, actual position suitable adapted, e.g. left side reference switch. Additionally, parameter dx_ref_tolerance affects interrupt conditions described before (section 8.13, page 24).
8.16 x_latched (IDX=%1110)
This read-only register stores actual position read from register x_actual reference switch state changes. reference switch defined REF_RnL configuration register ref_conf ramp_mode. Writing dummy value (read-only) register x_latched initializes position storage mechanism. Then actual position saved with next rising edge falling edge signal reference switch depending actual motion direction stepper motor. actual position latched when switch defined reference switch REF_RnL changes (see Table 8-4: Reference switch configuration bits (ref_conf), page 23). status signals, latching position pending. event reference switch associated actual motion direction takes effect only during motion (when v_actual
8.17 Unused Address (IDX=%1111)
This register address (idx=%1111) within each stepper motor register block {smda=%00, %01, %10} unused. Writing this register effect. However, access should avoided, because this address space used future devices. Reading this register gives back actual status bits data bits ,,0.
Global Parameter Registers
registers addressed RRS=0 with SMDA=%11 global parameter registers. emphasize this difference, used index name instead IDX.
datagram_low_word (JDX=%0000) datagram_high_word (JDX=%0001)
TMC428 stores datagrams sent back from stepper motor driver chain with total length bits. register datagram_low_word holds lower bits this bits register datagram_high_word holds higher bits bits. These registers together form shift register, where data from SDI_S shifted left into with each datagram sent stepper motor driver chain signal SDO_S. write these read-only registers initializes them, update their contents with next datagram received from drivers chain.
datagram_high_word
OTPW OCHS
last TMC246 driver chain (stepper motor
datagram_low_word
OTPW OCHS OTPW OCHS
SDI_S
second TMC246 driver chain (stepper motor
first TMC246 driver chain (stepper motor
Figure 9-1: Example status mapping chain three TMC246 TMC249
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
CDGW Cover DataGram Waiting, section page status until datagram received from stepper motor driver chain. read datagram_low_word datagram_high_word CDGW status important able detect when datagram transfer been completed after initial write registers. fact that CDGW formed logical between cover datagram status status datagram_low_word datagram_high_word causes restriction concerning usage. This because write cover_datagram register forces sending datagram which results update datagram_low_word datagram_high_word registers. other side, cover_datagram mechanism used, CDGW status exclusively available status signal datagram_low_word datagram_high_word.
cover_pos cover_len (JDX=%0010)
TMC428 provides direct sending datagrams from microcontroller stepper motor drivers. This necessary initialization different driver chips useful reconfiguration purposes. datagram with bits transferred stepper motor driver covering datagram sent driver chain. parameter cover_pos defines position first datagram covered cover_datagram (JDX=%0011) length cover_len. contrast datagram numbering order bits, position count cover datagram starts with cover_datagram bits indexed from cover_len-1 cover datagram sent drivers chain. Important Note: step used control stepper motor drivers must covered while motor running.
This because coverage step would cause losing that associated step step active. TMC428 stores cover_pos+1 instead cover_pos internal requirements. writes cover_pos reads back cover_pos+1. cover waiting) available read this register. CDGW status (see section 9.3) result logical between internal signal that indicates status stepper motor serial driver chain send register.
cover_datagram (JDX=%0011)
This register holds cover datagram. cover datagram covers next datagram sent stepper motor driver chain. datagrams sent drivers chain, cover datagram sent immediately cover datagram written into this register. status cover datagram mapped status bits sent back with each datagram (see Table 6-4, page CDGW status bit). This status also available readout cover_pos cover_len (JDX=%0010), where CDGW most significant data (23).
datagram bits send stepper motor driver chain position=39: cover_pos
datagram bits covered cover_datagram bits
cover datagram bits cover datagram bits
(MSB)
(LSB)
cover datagram (here sent first. cover_datagram bits
length cover_len
Figure 9-2: Cover datagram example
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
CDGW Cover DataGram Waiting) status checked before writing cover datagram into this register, sure that cover datagram waiting processed. CDGW until cover_datagram sent. CDGW status also used status datagram_low_word datagram_high_word (see section page 27). example cover datagram given Figure page that example bits cover bits datagram from number number cover datagram with length=0 forces sending unchanged datagram driver chain.
Unused Addresses (JDX={%0011, %0111, %1001, %1101})
There unused addresses within address range global parameter registers. Access these addresses effect. ever, access should avoided, because this address space used future devices.
power_down (JDX=%1000)
write register address named power_down sets TMC428 into power down mode until detects falling edge nSCS_C. During power down, internal clocks stopped, outputs remain stable, register contents preserved.
Reference Switches (JDX=%1110)
current state reference switches- demultiplexed internally TMC428 left right reference switches used -can read from this read-only register. named continuous_update Stepper Motor Global Parameter Register (JDX=%1111) important reading reference switches explained below.
Stepper Motor Global Parameter Register (JDX=%1111)
This register holds different configuration bits stepper motor driver chain. absolute address (RRS ADDRESS) stepper motor global parameter register %01111110 (see Table 7-2, page Table 9-1, page 30). datagram configuration number stepper motor drivers important. represented parameter LSMD (Last Stepper Motor Driver). parameter LSMD stepper motor driver, stepper motor drivers, three stepper motor drivers (see Table 9-2).
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
DATAGRAM sent from TMC428
continuous_update refmux mot1r
ADDRESS
DATA clk2_div
csCommonIndividual
polarities
LSMD
last stepper motor driver
polarity_DAC_AB
polarity_nscs_s
polarity_PH_AB
polarity_sck_s
polarity_FD
Table 9-1: Stepper motor global parameter register
LSMD (=0) (=1) (=2) (=3) number stepper motor drivers ALLOWED
Table 9-2: Global parameter LSMD (last stepper motor driver) Five bits used control signal polarities. polarity selection signal nSCS_S stepper motor driver chain controlled polarity polarity_nscs_s. nSCS_S signal active this high active, this ,,1. polarity stepper motor driver chain clock signal SCK_S defined polarity_sck_s. this ,,0, clock polarity according Figure page clock signal SCK_S inverted ,,1. polarity_PH_AB defines polarity phase bits stepper motor. Inverting this changes rotation direction associated stepper motor. polarity_FD defines polarity fast decay controlling bit. fast decay high active fast decay active. named polarity_DAC_AB defines polarity vectors. bits high active bits inverted active. named csCommonIndividual defines either single chip select signal nSCS_S used common stepper motor driver chips (TMC236, TMC239, TMC246, TMC249) three chip select signals nSCS_S, nSCS2, nSCS3 used select stepper motor driver chips individually. This feature useful only TMC428 within larger packages, where additional chip select signals nSCS2, nSCS3 available (see Figure 2-2). common chip select signal nSCS_S used named csCommonIndividual=`0'. polarity control nSCS_S signal must polarity_nscs_s='0' csCommonIndividual='1'. chip select polarity always negative three individual chips select signals. eight bits named clk2_div determine clock frequency stepper motor driver chain clock signal SCK_S. frequency f_sck_s[Hz] stepper motor driver chain clock signal SCK_S f_sck_s[Hz] f_clk[Hz] (clk2_div+1) value (%11111111, $FF) upper limit parameter clk2_div. With clk2_div clock frequency SCK_S minimum. internal processing, value (%00000111, $07) lower limit clock divider parameter
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
clk2_div. With clk2_div clock frequency SCK_S maximum. value clk2_div sufficient drivers TMC236 TMC239 TMC246 TMC249. Note: most applications, setting clk2_div recommended. smooth motion even high step frequencies frequency f_sck_s[Hz] clock signal SCK_S should high possible that compatible with used drivers. frequency f_sck_s[Hz] SCK_S does become higher clk2_div signal SCK_S becomes asymmetric with respect duty cycle. asymmetric duty cycle cause malfunction stepper motor drivers, where stepper motor driver chips work correctly particular clock frequencies CLK. range clk2_div 253, 254, 255}. default value after power-on reset clk2_div clock frequency f_sck_s[Hz] SCK_S should high possible choosing parameter clk2_div consideration data clock frequency limit defined slowest stepper motor driver chip daisy chain. step frequencies reach order magnitude maximum datagram frequency- determined clock frequency SCK_S datagram length -the step frequencies jitter, which inherent property that serial communication. which level variations step frequencies acceptable depends application. Using microstepping driver chips- provided TMC236 TMC239 TMC246 TMC249 driver chips -avoids this problem. datagram frequency f_datagram[Hz] f_sck_s[Hz] datagram_length[bit] This formula approximation upper limit. clk2_div processing requires clock cycle, where processing requires clock cycles clk2_div chain three drivers with datagram length each, upper limit datagram frequency f_datagram[Hz] f_sck_s[Hz] 3*(12+1) f_sck_s[Hz] TMC428 sends datagrams stepper motor driver chain demand only. datagrams send continuous_update during rest periods. This reduces communication traffic. multiplexed reference switch inputs processed while datagrams sent stepper motor driver chain only. reference switches configured stop associated stepper motors automatically, configuration continuous_update must force periodic sending datagrams stepper motor driver chain sample reference switches periodically, stepper motors rest. With this, stepper motor restarts associated reference switch becomes inactive. Without continuous update, stepper motor stopped reference switch would stay rest until datagram sent stepper motor driver chain, reference switch inactive. Then, relevant stepper motor moved into direction opposite reference switch moved both directions disabling automatic stop function. continuous update datagram frequency f_cupd_s[Hz] f_clk[Hz] 2^ramp_div_0 2^ramp_div_1 2^ramp_div_2 32768 where ramp_div_0, ramp_div_1, ramp_div_2 ramp_div settings three stepper motors. continuous_update also important automatic coil current scaling (see page 18). This must sure that coil current also scaled motors rest.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
+VCC +VCC +VCC
REF1 nSCS_C
REF2
REF3 nSCS_S
REF_SW3_LEFT
REF_SW2_LEFT
SDI_C
TMC428
SDO_S
SCK_C SDO_C TEST
SCK_S SDI_S
Figure 9-3: Reference switch configuration `left-side-only' mot1r=0 (and refmux=0)
+VCC
+VCC
REF_SW1_LEFT
+VCC
REF1 nSCS_C
REF2
REF3 nSCS_S
REF_SW1_RIGHT REF_SW2_LEFT REF_SW1_LEFT
SDI_C
TMC428
SDO_S
SCK_C SDO_C TEST
SCK_S SDI_S reference switch stepper motor
Figure 9-4: Reference switch configuration `two-one-null' mot1r=1 (and refmux=0)
74HC157 SEL1/ REF1 nSCS_C REF2 REF3 nSCS_S REF2_RIGHT REF2_LEFT REF3_RIGHT REF3_LEFT REF1_LEFT REF1_RIGHT +VCC
SDI_C
TMC428
SDO_S
SCK_C SDO_C TEST
SCK_S SDI_S
Figure 9-5: Reference switch multiplexing with 74HC157 (refmux=1)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
refmux
mot1r
motor left switch right switch REF1 REF1 REF3 REF1_LEFT REF1_RIGHT REF1_LEFT REF1_RIGHT
motor left switch right switch REF2 REF2 REF2_LEFT REF2_RIGHT REF2_LEFT REF2_RIGHT
motor left switch right switch REF3 REF3_LEFT REF3_RIGHT REF3_LEFT REF3_RIGHT
Table 9-3: Association reference inputs depending configuration bits refmux mot1r continuous_update ,,1, internal reference switch bits updated periodically, even stepper motors rest. Additionally, chip select signal nSCS_S stepper motor driver chain also control signal multiplexer case using reference switch multiplexing option (see Figure 9-5). continuous_update must automatic stop reference switches enabled, multiplexed reference switches used, states reference switches while stepper motors rest. named refmux must enable reference switch multiplexing (see Figure 9-5). variants TMC428-PI24 TMC428-DI20, reference switch multiplexing also works csCommonIndividual=1 using three separate driver selection signals (nSCS_S, nSCS2, nSCS3) signal nSCS_S connected multiplexer 74HC157 according Figure 9-8. reference switch multiplexing enabled, mot1r ignored. With refmux ,,0, association reference switch inputs REF1, REF2, REF3 depends setting configuration mot1r. power-on default value mot1r ,,0. With that default value, REF1 associated left reference switch stepper motor REF2 associated left reference switch stepper motor REF3 associated left reference switch stepper motor mot1r input REF1 also associated with left reference switch stepper motor REF2 also associated left reference switch stepper motor But, input REF3 associated right reference switch stepper motor reference switch input associated stepper motor number#3 (see Figure 9-4). After power-on-reset, default refmux=0 mot1r=0 selects single reference switch configuration outlined Figure 9-3, where each reference switch input (REF1, REF2, REF3) assigned individually each stepper motor left reference switch.
Triple Switch Configuration
programmable tolerance range around reference switch position useful triple switch configuration, outlined Figure 9-6. that configuration switches used automatic stop switches, additional switch used reference switch between left stop switch right stop switch. left stop switch reference switch wired After successful reference search, programming tolerance range into register dx_ref_tolerance allows disable automatic stop within range reference switch only.
left stop switch
motor reference switch
right stop switch
traveller x'left negative direction xtraveler xright positive direction
dx_ref_tolerance
Figure 9-6: Triple switch configuration `left stop switch reference switch right stop switch'
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
reference switch
motor
traveller negative direction mechanical inaccuracy switches (switching hysteresis) xref xtraveler xmax positive direction
dx_ref_tolerance
Figure 9-7: Reference search
Reference Search
goal reference search determine position xref reference switch (see Figure 9-7). mechanical inaccuracy switches, reference switch active within range xref where vary. traveler within range xtraveler before reference search, necessary outside this range, because associated reference switch active. dummy write access x_latched initializes position latch register. Then, with traveler within range xtraveler xmax initialized register x_latched, position simply determined motion with target position x_target -xmax. When reaching position this position latched automatically. With stop switch enabled, stepper motor automatically stops position reached. Then, dx_ref_tolerance set, that motion within active reference switch range xref allowed move traveler position xtraveler desired. Then register x_latched initialized again latch position motion target position xtraveler When positions determined reference position xref set. Finally, should move target position x_target xref x_target x_actual when reached.
9.10 Simultanous Start Three Stepper Motors
Starting stepper motors simultaneously acheved sending successive datagrams starting stepper motors. delay between those datagrams magnitude some microseconds, stepper motors considered started simultaneously. Feeding reference switch signals through gates (see Figure 9-8) allows exact simultaneous start stepper motors under software control.
74HC157 hold SEL1/ 74HC32 REF1 nSCS_C REF2 REF3 nSCS_S REF2_RIGHT REF2_LEFT REF3_RIGHT REF3_LEFT REF1_LEFT REF1_RIGHT +VCC
SDI_C
TMC428
SDO_S
SCK_C SDO_C TEST
SCK_S SDI_S
Figure 9-8: Reference switch gateing exact simultanous stepper motor start
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Address Partitioning Data Organization
on-chip capacity bit. These on-chip cells width addressed addresses (see Table 10-1). from point view addressing on-chip datagrams, address space enfolds addresses wide data, where only bits relevant. These addresses partitioned- selected (Register Select, datagram 31)- into address ranges addresses. registers TMC428 addressed with RRS=0. on-chip addressed with RRS=1. on-chip addresses partitioned into separate ranges most significant address datagram (bit 30). first addresses provided configuration serial stepper motor driver chain. Each these addresses stores configuration words, composed called (Next Motor) together with wide primary signal code. While sending datagram, primary signal code words read internally beginning with first address driver chain datagram configuration memory range. Each primary signal code word selects signal provided micro step unit. internal stepper motor addressing counter incremented. this internal counter equivalent LSMD (last stepper motor driver) parameter, datagram transmission finished counter preset next datagram transmission stepper motor driver chain. second addresses provided store micro step table, which usually quarter sine wave period basic approach quarter period periodic function optimized microstepping given stepper motor type. Different stepper motors step with different micro step resolutions, micro step look table (LUT) same stepper motors controlled TMC428. quarter wave period stored micro step table expanded automatically full period wave together with phase shifted wave.
DATAGRAM sent from TMC428 SDI_C DATA ADDRESS data addresses data even addresses
(2x6 bit) driver chain datagram configuration range (2x6 bit) quarter period sine wave range quarter sine wave values (amplitude) quarter sine wave values (amplitude) NxM_1 NxM_0 signal_codes signal_codes
Table 10-1: Partitioning on-chip address space
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Stepper Motor Driver Datagram Configuration
number control signals required drive 2-phase stepper motors. serial driver interface forms link between TMC428 stepper motor driver chain. stepper motor driver datagram configuration simply defines order control signals serially sent from TMC428 stepper motor driver chain. define serial order control signals, called primary signal codes have written into stepper motor driver datagram configuration area on-chip configuration TMC428. Which control signals required given application, depends choice stepping mode- full step, half step, micro step -and additional options depending stepper motor driver chips used. TMC428 primarily provides full control signals individually each three stepper 2-phase stepper motors respectively stepper motor driver chips daisy chain. Mnemonics primary signal codes given Table 11-1. Names these signals differ signal names used stepper motor drivers. Figure 11-1 page outlines principle connecting control signals- internally provided TMC428 parallel signals -with signals used control digital part stepper motor driver.
DAC_A_0 DAC_A_1 PH_A FD_A DAC_B_0 DAC_B_1 PH_B FD_B Direction Step Zero
Serial Driver Interface
Serial-to-Parallel Interface(s)
control signals status signals
FD_A DAC_A_5 DAC_A_4 DAC_A_3 DAC_A_2 PH_A FD_B DAC_B_5 DAC_B_4 DAC_B_3 DAC_B2 PH_B
Micro Stepping Unit (incl. sequencer)
status signals
Stepper Motor Driver Control Logic
TMC428
Multiple Ported
Stepper Motor Driver (Chain) e.g. TMC236 TMC239 TMC246 TMC249
status signals
Figure 11-1: Serially transmitted control status signals between TMC428 driver chain
PRIMARY SIGNAL CODE %00000 %00001 %00010 %00011 %00100 %00101 %00110 %00111 %01000 %01001 %01010 %01011 %01100 %01101 %01110 %01111 %10000
MNEMONIC DAC_A_0 DAC_A_1 DAC_A_2 DAC_A_3 DAC_A_4 DAC_A_5 PH_A FD_A DAC_B_0 DAC_B_1 DAC_B_2 DAC_B_3 DAC_B_4 DAC_B_5 PH_B FD_B Zero
FUNCTION (LSB) (MSB) phase polarity fast decay (LSB) (MSB) phase polarity fast decay constant
COIL COIL
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Direction Step %10001 %10010 %10011 %10100 %10101 %10110 %10111 %11000 %11001 %11010 %11011 %11100 %11101 %11110 %11111 constant down resp. counter clockwise clockwise step step/direction control drivers
UNUSED (these codes might used future devices)
TMC428-I, TMC428-A, TMC428-PI24, TMC428-DI20
Table 11-1: Primary signal codes control signals each coils 2-phase stepper motor bits controlling current coil, phase polarity bit, fast decay those stepper motor driver chips with fast decay feature coil current. These signals available individually each coil (COIL COIL Constant configuration bits named Zero provided. Additionally, step direction bits available. unique code word- named primary signal code assigned each primary control signal (see Table 11-1). micro step unit (including sequencer) provides full control signals three stepper motor driver chips. subset these control signals selected stepper motor driver datagram configuration, which stored within first addresses representing values on-chip (see Table 10-1, page 35). stepper motor drivers organized daisy chain. addressing stepper motor driver chips within daisy chain position. mentioned before, TMC428 sends datagrams stepper motor driver chain demand. guarantee integrity each datagram sent stepper motor driver chain, status primary control signals buffered internally before sending. Afterwards, transmission starts with selection buffered primary control signals first motor (smda=%00) reading first primary signal code word (even data word on-chip address %00000) from on-chip configuration area. primary signal codes select primary signals provided first stepper motor. first stepper motor addressed until (next motor) read from on-chip configuration RAM. stepper motor driver address incremented with each NxM='1' long current stepper motor driver address below value parameter LSMD (last stepper motor driver). stepper motor driver address equivalent LSMD parameter, NxM='1' indicates completion transmission. With that, stepper motor driver address counter serial interface reinitialized unit waits next transmission request. order primary signal codes on-chip configuration area determines order datagram bits stepper motor driver chain, whereas prefixed determines stepper motor driver positions. with value stored within on-chip RAM, TMC428 will send endlessly. on-chip configured first. After power-on reset, registers TMC428 initialized way, that transmission datagrams motor driver chain required. Access on-chip always possible, also during transmission datagrams driver chain.
11.1 Initialization on-chip-RAM after power-on
registers initialized automatic power-on reset. registers initialized, stepper motors rest. on-chip initialized power-on reset. Writing registers involve action stepper motor units initiated TMC428 resulting sending datagrams stepper motor driver chain. Those datagrams have random power-on configuration on-chip-RAM. before trying move motor, on-chip must initialized first.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
11.2 Example Stepper Motor Driver Datagram Configuration
following example demonstrates, configure datagram shows what stored within on-chip represent desired configuration. That example refers driver chain three TRINAMIC stepper motor drivers type TMC236, TMC239, TMC246, TMC249. From TMC428 datagram configuration point view, there difference between these drivers. these drivers have serial interface bits length. configuration follows. first second stepper motor driver chain fast decay control (FD_A, FD_B) fixed ,,0. third driver fast decay control used. corresponding content configuration on-chip outlined Table 11-2. sequence sent TMC428 this configuration outlined Table 11-3. Hint: stepper motor driver datagram configuration accessed time without conflict, e.g. changed between configuration using fast decay versus configuration where fast decay disabled.
position driver TMC428 TMC428 within signal address data mnemonic datagram code primary signal Zero DAC_A_5 DAC_A_4 DAC_A_3 DAC_A_2 PH_A Zero DAC_B_5 DAC_B_4 DAC_B_3 DAC_B_2 PH_B Zero DAC_A_5 DAC_A_4 DAC_A_3 DAC_A_2 PH_A Zero DAC_B_5 DAC_B_4 DAC_B_3 DAC_B_2 PH_B FD_A DAC_A_5 DAC_A_4 DAC_A_3 DAC_A_2 PH_A FD_B DAC_B_5 DAC_B_4 DAC_B_3 DAC_B_2 PH_B With LSMD (third) address (position finishes datagram transmission driver#1 (SMDA=%00) driver#2 (SMDA=%01) driver#3 (SMDA=%10) TMC23x TMC24x Name
Table 11-2: Datagram example contents three stepper motor driver chain
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
binary datagram specification %10000000-000101-010000 %10000010-000011-000100 %10000100-000110-000010 %10000110-001101-010000 %10001000-001011-001100 %10001010-101110-001010 %10001100-000101-010000 %10001110-000011-000100 %10010000-000110-000010 %10010010-001101-010000 %10010100-001011-001100 %10010110-101110-001010 %10011000-000101-000111 %10011010-000011-000100 %10011100-000110-000010 %10011110-001101-001111 %10100000-001011-001100 %10100010-101110-001010
hexadecimal datagram $80000510 $82000304 $84000602 $86000D10 $88000B0C $8°002E0A $8c000510 $8e000304 $90000602 $92000D10 $94000B0C $96002E0A $98000507 $9°000304 $9c000602 $9e000D0F $a0000B0C $a2002E0A
Table 11-3: Configuration datagram sequence example (with (don't cares))
Initialization Micro Step Look-Up-Table
TMC428 provides look-up-table (LUT) values micro stepping. micro step adapted storing arbitrary quarter period periodic function match individual stepper motor characteristics. common period sine wave function micro stepping. With that function, current phase driven with sine function whereas other phase driven with cosine function. initialize micro stepping simply load quarter sine wave period into micro step LUT. successive values sine wave function included datagram similar primary signal code words stepper motor driver chain configuration. TMC428 automatically expands quarter sine wave period full sine cosine function. necessary data values y(i) represent sine wave period micro step defined y(i) int[ with
where conditional replacement y(i) y(i) done. last five values (which calculated have replaced With this replacement finally gets y(i)
DATAGRAM sent from TMC428 SDI_C
DATA (x)10 data addresses
ADDRESS
(x)10
data even addresses
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Table 12-1: Scheme sine wave period with resolution values These values represent quarter sine period interval which expanded automatically TMC428 full sine cosine period (see section 12.1, page 41). table sent on-chip TMC428 datagrams:
binary representation datagram decimal represented pair values hexadecimal (separated character) representation $C0000200 $C2000503 $C4000806 $C6000B09 $C8000E0C $CA001110 $CC001413 $CE001716 $D0001A18 $D2001D1B $D400201E $D6002221 $D8002524 $DA002726 $DC002A29 $DE002C2B $E0002E2D $E200302F $E4003231 $E6003433 $E8003635 $EA003837 $EC003938 $EE003B3A $F0003C3B $F2003D3C $F4003E3D $F6003E3E $F8003F3F $FA003F3F $FC003F3F $FE003F3F
Table 12-2 Datagrams initialization quarter sine wave period microstep look-up-table
Copyright 2004-2008, TRINAMIC Motion Control GmbH
00000 00000000 000010 000000 00001 00000000 000101 000011 00010 00000000 001000 000110 00011 00000000 001011 001001 00100 00000000 001110 001100 00101 00000000 010001 010000 00110 00000000 010100 010011 00111 00000000 010111 010110 01000 00000000 011010 011000 01001 00000000 011101 011011 01010 00000000 100000 011110 01011 00000000 100010 100001 01100 00000000 100101 100100 01101 00000000 100111 100110 01110 00000000 101010 101001 01111 00000000 101100 101011 10000 00000000 101110 101101 10001 00000000 110000 101111 10010 00000000 110010 110001 10011 00000000 110100 110011 10100 00000000 110110 110101 10101 00000000 111000 110111 10110 00000000 111001 111000 10111 00000000 111011 111010 11000 00000000 111100 111011 11001 00000000 111101 111100 11010 00000000 111110 111101 11011 00000000 111110 111110 11100 00000000 111111 111111 11101 00000000 111111 111111 11110 00000000 111111 111111 11111 00000000 111111 111111
TMC428 DATASHEET 2.03 December 2008)
These datagrams (Table 12-2) sufficient programmable micro step resolutions. micro stepping used least stepper motor, these datagrams have sent once TMC428 initialization micro step table after power-on reset. initialization micro step look-up-table necessary, full stepping used stepper motors. on-chip initialized during power-on reset. full initialization whole micro step look-up-table recommended avoid trouble caused missing look-up table entries. Additionally, fully initialized micro step look-up-table allows selection individual micro step resolutions different steppes. Hint: previous section describes calculate values TMC428 sine wave look-up table, write those values into look-up table TMC428 datagramms. Nevertheless, other formulas might generate sine wave look-up tables that better with respect equidistance micro steps concerning torque ripple. Alternatively, sine wave look-up table based y(i) int[
used. Even, adding some offset within theoretical range from y(i) int[ (63-o)
might enhance micro step behavior together with mixed decay. Finally, sine wave look-up table tested within application might need some fine adjustments optimization.
12.1 Stepping through Wave Look-Up-Table
values wave look-up table (LUT) hold quarter period sine wave, indexed from This quarter sine wave expanded full sine wave full cosine wave indexing values LUT. index mapped from wave index full period from 255. stepping through done with fixed increment width. increment width power depends micro step resolution selection usrs. Table 12-4 gives indices different micro step resolutions. motion positive direction, full period index incremented from micro step micro step. motion into negative direction, full period index decremented from micro step micro step. sine associated phase (PH_A) cosine associated phase (PH_B). phase bits represent sign sine resp. cosine function. polarity phase (PH_A, PH_B) polarity fast decay control bits (FD_A, FD_B) changed polarity bits within global stepper motor parameter register (see section 9.7, page 29). MSBs full wave index (range) (0.63) (64.127) (128.191) (192.255)
Quadrant
PH_A (sin)
PH_B (cos)
FD_A (sin)
FD_B (cos)
Table 12-3: Phase Bits Fast Decay Control Bits
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Hints: should always initialize whole sure read valid wave values, even changes micro step resolution after some micro steps have been done higher resolution. Even uses e.g. times microstepping, gets smoother move stepper motor initializes full sine wave according Table 12-2 Datagrams initialization quarter sine wave period microstep look-up-table page using bits (DAC_A_5, DAC_A_4, DAC_A_3, DAC_A_2 DAC_B_5, DAC_B_4, DAC_B_3, DAC_B_2). should always completely initialize quarter sine wave LUT, matter what micro step resolution used. addressing starts after power-on reset only. Changing micro step resolution after some micro steps have been made causes offset addressing that taken into account positioning stepper motor.
increment wid1
usrs
%110 %101 %100 %011 %010 %001 (HS) %000 (FS)
quadrant
0,1,2, 62,63, 61,.,2,1, 0,2, 60,62, 56,., 40,.,16,
quadrant
61,., 2,1, 0,1,2, 62,63, 56,., 0,2, 60,62, 40,.,16,
quadrant
0,1,2, 62,63, 63,62,61,.,3, 2,1, 0,2, 60,62, 56,., 40,.,16,
quadrant
63,62,61,., 0,1,2, 62,63 56,., 0,2, 60,62 40,.,16,
Table 12-4: Wave look-up table (LUT) indices different microstep resolutions
12.2 Partial look-up table initialization option
partially initialized micro step table sufficient, stepper motors- except those driven full step mode -are programmed same micro step resolution constantly before single micro step processed. with partial initialized micro step look-up table, micro step resolution must changed after step made after power-on reset. partially initialized look-up table should taken into account only, must because small memory host microcontroller. Instead partial initialization look-up table TMC428, initialization with triangular function frhomb( would better choice.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
12.3 Micro Step Enhancement
Even stepper motors optimized sine-cosine control, possible improve micro step behavior adapting micro step look-up table (LUT). different types stepper motors, periodic trapezoidal triangular function similar sine function superposition these function replacement pure sine wave function (Figure 12-1) might better choice. Taking physics stepper motors into account, choice function microstepping determined single shape parameter explained below. programmability micro step look-up table provides simple effective facility enhance microstepping given type two-phase stepper motor. Enhanced microstepping requires accurate current control. stepper motor driver chips with enabled well tuned fast decay (resp. mixed decay) operational mode need used, e.g. TRINAMICs smart power TMC236 TMC239 TMC246 TMC249 drivers. Non-linearity resulting from magnetic field configuration determined shapes pole shoes, ferromagnetic characteristics, other stepper motor characteristics effect non-linearity micro step behavior real stepper motors. non-linearity microstepping causes micro step positioning displacements, vibrations noise, which reduced dramatically with adapted micro step table. best fitting micro step table determined measuring micro step motor behavior, e.g. using laser pointer based sine-cosine microstepping table. Nevertheless sine-cosine microstepping good first order approach microstepping. micro step enhancement possible with TMC428 based replacement look-up table initialization function sin( used sine-cosine microstepping function with shape parameter quarter sine wave period basic approach initialization micro step look-up-table quarter trapezoidal function quarter triangular function chosen depending shape parameter given stepper motor type.
circle circle
with
circle
look-up table TMC428 enfolds quarter period only. This quarter period expanded full period phase shifted companion function value added automatically TMC428 during operation. reach function value automatically gets pair function values respectively {sin( cos( This automatic expansion TMC428- primary provided sine cosine microstepping sin( also works fine with other micro step wave forms
micro steps
full step
Figure 12-1: Microstep enhancemant introduction shape function
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
shape parameter selects three functions fbox(), fcircle(), frhomb(), respectively superposition them. shape parameter selects function fcircle() which sine function sin( used sine cosine microstepping. With this, gets unit circle (r=1.0) transformation Cartesian coordinates sin( cos( outlined Figure 12-1, shape parameter +1.0 results box, shape parameter -1.0 results rhomb. Other values except those, result something between circle respectively something between circle rhomb. data values y(i) look-up table range from argument ranges also from following, natural angles (radians) ranging from used description. three functions superposition controlled shape parameter
circle sin(
together, these three functions combined form function
circle circle circle
circle
circle
shape parameter selects type function also provides continuous transition between circle respectively circle rhomb. estimate, what function would best given type stepper motor, microstepping based different shape parameters downloading different micro step tables on-the-fly into TMC428 during motion stepper motor. calculation data micro step look-up table TMC428, replace ranging from quarter period
with {0,1,2,3,.,
amplitude shape function limited range respectively range on-chip described beginning microstepping section.
Started Running Motor
First all, Stepper Motor Driver Datagram Configuration written into area. Additionally, Microstep Look-Up-Table initialized when using microstepping. parameter LSMD, that part global parameter register, initialized. After that, parameters v_min, v_max, clock pre-dividers pulse_div ramp_div micro step resolution usrs set. Then, a_max together with valid pair pmul pdiv set. switch configuration ref_conf together with ramp mode chosen. reference switch inputs REF1, REF2, REF3 should pulled down ground disabled setting ref_conf. With those settings, TMC428 runs motor writes either x_target v_target, depending choice ramp mode application note named "TMC428 Getting Started" together with source code examples available www.trinamic.com
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Package Outlines Dimensions
14.1 Shrink Small Outline Package with Pins (SSOP16, MIL) TMC428-I TMC428-A
VIEW
LEAD (SIDE VIEW)
WITH PLATING N=16
BASE METAL
SIDE VIEW
AEND VIEW
Figure 14-1: Package Outline Drawing SSOP16, MILS
Symbol
1.55 0.10 1.40 0.20 0.20 0.18 0.18 0.20 0.19 4.80
Dimensions MILLIMETERS 1.63 0.15 1.47 0.25 0.20 0.25 0.20 4.93 3.91 0.635 6.02 0.33 0.635 0.114
1.73 0.25 1.55 0.30 0.28 0.25 0.23 0.31 0.25 4.98
0.061 0.004 0.055 0.008 0.008 0.007 0.007 0.008 0.0075 0.189
Dimensions INCHES 0.064 0.006 0.058 0.010 0.008 0.010 0.008 0.194 0.154 0.025 0.237 0.013 0.025 0.0045
0.068 0.0098 0.061 0.012 0.011 0.010 0.009 0.012 0.0098 0.196
0.25 0.41 0.051
0.41 0.89 0.178
0.010 0.016 0.0020
0.016 0.035 0.0070
Table 14-1: Dimensions Package SSOP16, MILS (Note:
Best Case)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
14.2 Small Outline Package with Pins (SOP24) TMC428-PI24
VIEW
AEND VIEW
SIDE VIEW
Figure 14-2: Package Outline Drawing SOP24, MILS
Symbo
Dimensions MILLIMETERS
2.35 0.33 0.23 15.2 1.27 0.25 10.65 0.75 1.27 0.394 0.01 0.016 2.65 0.51 0.32 15.6 0.0926 0.004 0.013 0.0091 0.5985 0.2914
Dimensions INCHES
0.1043 0.0118 0.02 0.0125 0.6141 0.2992 0.05 0.419 0.029 0.05
Table 14-2: Dimensions Package SOP24, MILS (Note:
Best Case)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
14.3 Dual-In-Line Package with Pins (DIL20) TMC428-DI20
VIEW
SIDE VIEW VIEW
Figure 14-3: Package Outline Drawing DIL20, MILS (not recommended designs)
Symbo
Dimensions MILLIMETERS
0.38 3.05 0.36 1.14 0.20 24.0 7.62 6.99 4.57 3.81 0.56 1.52 0.38 25.02 8.26 7.49 0.015 0.120 0.014 0.045 0.008 0.945 0.300 0.275
Dimensions INCHES
0.180 0.150 0.022 0.060 0.015 0.985 0.325 0.295
3.43 0.46 1.27 0.25 24.51 22.86 7.87 7.24 2.54 7.62 3.30
0.135 0.018 0.050 0.010 0.965 0.900 0.310 0.285 0.100 0.300 0.130
2.79 0.13
10.92
0.110 0.005
0.430 0.150
Table 14-3: Dimensions Package DIL20, MILS (Note:
Best Case)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Marking
Product Name Product Package Date Code bottom only) Number bottom only) Logo Real Size (see note below) TMC428-I 56563A SSOP16 MILS YYWW (year week XXXXXXXXX
TMC428-I Trinamic 56563A
Zoomed Size
TMC428-I Trinamic 56563A
Product Name Product Package Date Code bottom only) Number bottom only) Logo Real Size (see note below)
TMC428-A 56563A SSOP16 MILS YYWW (year week XXXXXXXXX
TMC428-A Trinamic 56563A
Zoomed Size
TMC428-A Trinamic 56563A
Product Name Product Package Date Code Number Logo Real Size (see note below)
TMC424-PI24 56563A SOP24 MILS YYWW (year week XXXXXXXXX
428-PI24 Trinamic 56563A YYWW XXXXXXXXX
Zoomed Size
428-PI24 Trinamic 56563A YYWW XXXXXXXXX
Note: Provided ,,Real Size printed with scale 100% paper DIN-A4 format printed size differ depending printer.
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
On-Chip Voltage Regulator
on-chip voltage regulator delivers 3.3V supply chip core. external ceramic capacitor connected between (see Figure 16-1, page ground, with connections short possible. Additionally, external ceramic capacitor (CBLOCK) connected between ground- with connections short possible operational mode. 3.3V operational mode external ceramic capacitor (see Figure 16-1, page necessary only between ground, with connections short possible.
Symbol TRANGEREG VDD5REG CBLOCK VDD3REG ICCNLREG tSREG tSREGC TDRFT VRIPPLE CREG
Parameter Temperature range Supply voltage vdd5 Block capacitor Supply voltage vdd3 Current consumption Startup time Startup time Temperature drift Ripple vdd3
Conditions Industrial Operational Mode Operational Mode, ceramic capacitor Operational Mode load external capacitor connected C_load
COPT PSRRDC
With ripple over input thresholds differ from that specified data sheet External capacitor pin, ceramic, necessary capacity depending ripple requirements. Using external capacitor with capacity other than typical, ripple should measured sure that requirements satisfied. Optional capacitor Optional parallel capacitor additional reduction high frequency ripple, ceramic, unnecessary most cases power supply ripple rejection
Unit
Table 16-1: Characteristics on-chip voltage regulator
3.3V Operation (CMOS)
REF1 nSCS_C REF2 REF3 nSCS_S nSCS_C
Operation (TTL)
REF1 REF2 REF3 nSCS_S Capacitors should placed cloase possible chip.
SDI_C
TMC428
SDO_S
SDI_C
TMC428
SDO_S
SCK_C SDO_C TEST
SCK_S SDI_S
SCK_C SDO_C
Copt
SCK_S TEST SDI_S
Pinns named TEST have connected ground close possible chip.
+3.3V
100nF
optional capacitor Copt unnecessary most cases.
Figure 16-1: 3.3V operation (CMOS) operation (TTL)
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Power-On-Reset
TMC428 equipped with static dynamic reset with internal hysteresis (see Figure 17-1). performs automatic reset during power-on. power supply voltage goes below threshold, automatic power reset performed also. power reset time tRESPOR also depends power time on-chip voltage regulator (see Table 16-1
Symbol Temp Voff tRESPOR
Parameter Power supply range Temperature Reset on/off Reset Reset Reset time on-chip power-on-reset
Conditions
1.58 1.49 2.14
2.13 1.98
0.80 2.85 2.70 5.52
Unit
Table 17-1: Characteristics on-chip power-on-reset
static Voff
dynamic
Voff
tRESPOR
Figure 17-1: Operating principle power-on-reset
Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Characteristics
Symbol VDD3 VDD5 VESD Parameter Supply Voltage Input Voltage, I/Os Output Voltage, I/Os Supply Voltage Input Voltage, I/Os Output Voltage, I/Os Voltage Conditions Voltage 3.3V mode -0.3 -0.3 -0.3 -0.3 -0.3 -0.3 VDD3 VDD3 VDD5 0.3, VDD5 0.3, 2000 Unit
TEMP_D2 TEMP_D3 TEMP_D4
Ambient Temperature Range Ambient Temperature Range Ambient Temperature Range Storage Temperature
Voltage Continuous Voltage Continuous Voltage cells designed resist voltages according Human Body Model according MIL-STD-883, with guaranteed. Industrial Consumer type Automotive type Industrial type
+125 +105 +150
Table 18-1 Absolute maximum ratings
Symbol
Parameter Input Leakage Current Input Capacitance
Conditions
Unit
Table 18-2: characteristics
Symbol VDD3 VIL3 VIH3 VLTH3 VHTH3 VHYS3 VOL3 VOH3 VOL3 VOH3 Parameter Supply Voltage Input Voltage Level Input Voltage High Level Input Voltage Level Input Voltage Threshold High Level Input Voltage Threshold Schmitt-Trigger Hysteresis Level Output Voltage High Level Output Voltage Level Output Voltage High Level Output Voltage Conditions VDD3 VDD3 VDD3 Unit VDD3 VDD3 VDD3
TEST only TEST only Inputs except TEST Inputs except TEST
Table 18-3: characteristics 3.3V supply mode Note: Ripple VDD3 taken into account concerning measurement thresholds hysteresis.
Symbol VDD5 VIL5 VIH5 VLTH5 VHTH5 VHYS5 VOL5 VOH5 VOL5 VOH5 Parameter Supply Voltage Input Voltage Level Input Voltage High Level Input Voltage Level Input Voltage Threshold High Level Input Voltage Threshold Schmitt-Trigger Hysteresis Level Output Voltage High Level Output Voltage Level Output Voltage High Level Output Voltage Conditions VDD5 VDD5 VDD5 Unit VDD5 VDD5 VDD5
TEST only TEST only Inputs except TEST, VDD5=5V Inputs except TEST, VDD5=5V
Table 18-4: characteristics supply mode Copyright 2004-2008, TRINAMIC Motion Control GmbH
TMC428 DATASHEET 2.03 December 2008)
Symbol ISC16MHZ ISC4MHZ IPDN25C
Parameter Supply Current Supply Current Power Down Current
Conditions Tc=25°C Tc=25°C Power Down Mode Tc=25°C, Supply
1.25
Unit
Table 18-5: Power dissipation
Symbol fCLK tCLK tCL

Other recent searches


WV100V - WV100V   WV100V Datasheet
PWR1208 - PWR1208   PWR1208 Datasheet
PWR1208 - PWR1208   PWR1208 Datasheet
PWR1208 - PWR1208   PWR1208 Datasheet
EPBAD71 - EPBAD71   EPBAD71 Datasheet
CY7C3381A - CY7C3381A   CY7C3381A Datasheet
CY7C3382A - CY7C3382A   CY7C3382A Datasheet
BDX33B - BDX33B   BDX33B Datasheet
BDX33C - BDX33C   BDX33C Datasheet
BDX34B - BDX34B   BDX34B Datasheet
BDX34C - BDX34C   BDX34C Datasheet

 

Privacy Policy | Disclaimer
© 2013 Datasheets.org.uk