SAM3XA TC0

Timer Counter (TC0) User Interface

Registers

Register Mapping
Address Register Name Access Reset
0x40080000 Channel Control Register (channel = 0) TC0_CCR0 write-only -
0x40080004 Channel Mode Register (channel = 0) TC0_CMR0 read-write 0x00000000
0x40080008 Stepper Motor Mode Register (channel = 0) TC0_SMMR0 read-write 0x00000000
0x40080010 Counter Value (channel = 0) TC0_CV0 read-only 0x00000000
0x40080014 Register A (channel = 0) TC0_RA0 read-write 0x00000000
0x40080018 Register B (channel = 0) TC0_RB0 read-write 0x00000000
0x4008001C Register C (channel = 0) TC0_RC0 read-write 0x00000000
0x40080020 Status Register (channel = 0) TC0_SR0 read-only 0x00000000
0x40080024 Interrupt Enable Register (channel = 0) TC0_IER0 write-only -
0x40080028 Interrupt Disable Register (channel = 0) TC0_IDR0 write-only -
0x4008002C Interrupt Mask Register (channel = 0) TC0_IMR0 read-only 0x00000000
0x40080040 Channel Control Register (channel = 1) TC0_CCR1 write-only -
0x40080044 Channel Mode Register (channel = 1) TC0_CMR1 read-write 0x00000000
0x40080048 Stepper Motor Mode Register (channel = 1) TC0_SMMR1 read-write 0x00000000
0x40080050 Counter Value (channel = 1) TC0_CV1 read-only 0x00000000
0x40080054 Register A (channel = 1) TC0_RA1 read-write 0x00000000
0x40080058 Register B (channel = 1) TC0_RB1 read-write 0x00000000
0x4008005C Register C (channel = 1) TC0_RC1 read-write 0x00000000
0x40080060 Status Register (channel = 1) TC0_SR1 read-only 0x00000000
0x40080064 Interrupt Enable Register (channel = 1) TC0_IER1 write-only -
0x40080068 Interrupt Disable Register (channel = 1) TC0_IDR1 write-only -
0x4008006C Interrupt Mask Register (channel = 1) TC0_IMR1 read-only 0x00000000
0x40080080 Channel Control Register (channel = 2) TC0_CCR2 write-only -
0x40080084 Channel Mode Register (channel = 2) TC0_CMR2 read-write 0x00000000
0x40080088 Stepper Motor Mode Register (channel = 2) TC0_SMMR2 read-write 0x00000000
0x40080090 Counter Value (channel = 2) TC0_CV2 read-only 0x00000000
0x40080094 Register A (channel = 2) TC0_RA2 read-write 0x00000000
0x40080098 Register B (channel = 2) TC0_RB2 read-write 0x00000000
0x4008009C Register C (channel = 2) TC0_RC2 read-write 0x00000000
0x400800A0 Status Register (channel = 2) TC0_SR2 read-only 0x00000000
0x400800A4 Interrupt Enable Register (channel = 2) TC0_IER2 write-only -
0x400800A8 Interrupt Disable Register (channel = 2) TC0_IDR2 write-only -
0x400800AC Interrupt Mask Register (channel = 2) TC0_IMR2 read-only 0x00000000
0x400800C0 Block Control Register TC0_BCR write-only -
0x400800C4 Block Mode Register TC0_BMR read-write 0x00000000
0x400800C8 QDEC Interrupt Enable Register TC0_QIER write-only -
0x400800CC QDEC Interrupt Disable Register TC0_QIDR write-only -
0x400800D0 QDEC Interrupt Mask Register TC0_QIMR read-only 0x00000000
0x400800D4 QDEC Interrupt Status Register TC0_QISR read-only 0x00000000
0x400800D8 Fault Mode Register TC0_FMR read-write 0x00000000
0x400800E4 Write Protect Mode Register TC0_WPMR read-write 0x00000000

Register Fields

TC0 Channel Control Register (channel = 0)

Name: TC0_CCR0

Access: write-only

Address: 0x40080000

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - SWTRG CLKDIS CLKEN

TC0 Channel Mode Register (channel = 0)

Name: TC0_CMR0

Access: read-write

Address: 0x40080004

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - LDRB LDRA
15 14 13 12 11 10 9 8
WAVE CPCTRG - - - ABETRG ETRGEDG
7 6 5 4 3 2 1 0
LDBDIS LDBSTOP BURST CLKI TCCLKS

Alternate: WAVE_EQ_1

31 30 29 28 27 26 25 24
BSWTRG BEEVT BCPC BCPB
23 22 21 20 19 18 17 16
ASWTRG AEEVT ACPC ACPA
15 14 13 12 11 10 9 8
WAVE WAVSEL ENETRG EEVT EEVTEDG
7 6 5 4 3 2 1 0
CPCDIS CPCSTOP BURST CLKI TCCLKS

TC0 Stepper Motor Mode Register (channel = 0)

Name: TC0_SMMR0

Access: read-write

Address: 0x40080008

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - DOWN GCEN

TC0 Counter Value (channel = 0)

Name: TC0_CV0

Access: read-only

Address: 0x40080010

31 30 29 28 27 26 25 24
CV
23 22 21 20 19 18 17 16
CV
15 14 13 12 11 10 9 8
CV
7 6 5 4 3 2 1 0
CV

TC0 Register A (channel = 0)

Name: TC0_RA0

Access: read-write

Address: 0x40080014

31 30 29 28 27 26 25 24
RA
23 22 21 20 19 18 17 16
RA
15 14 13 12 11 10 9 8
RA
7 6 5 4 3 2 1 0
RA

TC0 Register B (channel = 0)

Name: TC0_RB0

Access: read-write

Address: 0x40080018

31 30 29 28 27 26 25 24
RB
23 22 21 20 19 18 17 16
RB
15 14 13 12 11 10 9 8
RB
7 6 5 4 3 2 1 0
RB

TC0 Register C (channel = 0)

Name: TC0_RC0

Access: read-write

Address: 0x4008001C

31 30 29 28 27 26 25 24
RC
23 22 21 20 19 18 17 16
RC
15 14 13 12 11 10 9 8
RC
7 6 5 4 3 2 1 0
RC

TC0 Status Register (channel = 0)

Name: TC0_SR0

Access: read-only

Address: 0x40080020

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - MTIOB MTIOA CLKSTA
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Enable Register (channel = 0)

Name: TC0_IER0

Access: write-only

Address: 0x40080024

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Disable Register (channel = 0)

Name: TC0_IDR0

Access: write-only

Address: 0x40080028

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Mask Register (channel = 0)

Name: TC0_IMR0

Access: read-only

Address: 0x4008002C

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Channel Control Register (channel = 1)

Name: TC0_CCR1

Access: write-only

Address: 0x40080040

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - SWTRG CLKDIS CLKEN

TC0 Channel Mode Register (channel = 1)

Name: TC0_CMR1

Access: read-write

Address: 0x40080044

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - LDRB LDRA
15 14 13 12 11 10 9 8
WAVE CPCTRG - - - ABETRG ETRGEDG
7 6 5 4 3 2 1 0
LDBDIS LDBSTOP BURST CLKI TCCLKS

Alternate: WAVE_EQ_1

31 30 29 28 27 26 25 24
BSWTRG BEEVT BCPC BCPB
23 22 21 20 19 18 17 16
ASWTRG AEEVT ACPC ACPA
15 14 13 12 11 10 9 8
WAVE WAVSEL ENETRG EEVT EEVTEDG
7 6 5 4 3 2 1 0
CPCDIS CPCSTOP BURST CLKI TCCLKS

TC0 Stepper Motor Mode Register (channel = 1)

Name: TC0_SMMR1

Access: read-write

Address: 0x40080048

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - DOWN GCEN

TC0 Counter Value (channel = 1)

Name: TC0_CV1

Access: read-only

Address: 0x40080050

31 30 29 28 27 26 25 24
CV
23 22 21 20 19 18 17 16
CV
15 14 13 12 11 10 9 8
CV
7 6 5 4 3 2 1 0
CV

TC0 Register A (channel = 1)

Name: TC0_RA1

Access: read-write

Address: 0x40080054

31 30 29 28 27 26 25 24
RA
23 22 21 20 19 18 17 16
RA
15 14 13 12 11 10 9 8
RA
7 6 5 4 3 2 1 0
RA

TC0 Register B (channel = 1)

Name: TC0_RB1

Access: read-write

Address: 0x40080058

31 30 29 28 27 26 25 24
RB
23 22 21 20 19 18 17 16
RB
15 14 13 12 11 10 9 8
RB
7 6 5 4 3 2 1 0
RB

TC0 Register C (channel = 1)

Name: TC0_RC1

Access: read-write

Address: 0x4008005C

31 30 29 28 27 26 25 24
RC
23 22 21 20 19 18 17 16
RC
15 14 13 12 11 10 9 8
RC
7 6 5 4 3 2 1 0
RC

TC0 Status Register (channel = 1)

Name: TC0_SR1

Access: read-only

Address: 0x40080060

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - MTIOB MTIOA CLKSTA
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Enable Register (channel = 1)

Name: TC0_IER1

Access: write-only

Address: 0x40080064

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Disable Register (channel = 1)

Name: TC0_IDR1

Access: write-only

Address: 0x40080068

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Mask Register (channel = 1)

Name: TC0_IMR1

Access: read-only

Address: 0x4008006C

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Channel Control Register (channel = 2)

Name: TC0_CCR2

Access: write-only

Address: 0x40080080

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - SWTRG CLKDIS CLKEN

TC0 Channel Mode Register (channel = 2)

Name: TC0_CMR2

Access: read-write

Address: 0x40080084

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - LDRB LDRA
15 14 13 12 11 10 9 8
WAVE CPCTRG - - - ABETRG ETRGEDG
7 6 5 4 3 2 1 0
LDBDIS LDBSTOP BURST CLKI TCCLKS

Alternate: WAVE_EQ_1

31 30 29 28 27 26 25 24
BSWTRG BEEVT BCPC BCPB
23 22 21 20 19 18 17 16
ASWTRG AEEVT ACPC ACPA
15 14 13 12 11 10 9 8
WAVE WAVSEL ENETRG EEVT EEVTEDG
7 6 5 4 3 2 1 0
CPCDIS CPCSTOP BURST CLKI TCCLKS

TC0 Stepper Motor Mode Register (channel = 2)

Name: TC0_SMMR2

Access: read-write

Address: 0x40080088

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - DOWN GCEN

TC0 Counter Value (channel = 2)

Name: TC0_CV2

Access: read-only

Address: 0x40080090

31 30 29 28 27 26 25 24
CV
23 22 21 20 19 18 17 16
CV
15 14 13 12 11 10 9 8
CV
7 6 5 4 3 2 1 0
CV

TC0 Register A (channel = 2)

Name: TC0_RA2

Access: read-write

Address: 0x40080094

31 30 29 28 27 26 25 24
RA
23 22 21 20 19 18 17 16
RA
15 14 13 12 11 10 9 8
RA
7 6 5 4 3 2 1 0
RA

TC0 Register B (channel = 2)

Name: TC0_RB2

Access: read-write

Address: 0x40080098

31 30 29 28 27 26 25 24
RB
23 22 21 20 19 18 17 16
RB
15 14 13 12 11 10 9 8
RB
7 6 5 4 3 2 1 0
RB

TC0 Register C (channel = 2)

Name: TC0_RC2

Access: read-write

Address: 0x4008009C

31 30 29 28 27 26 25 24
RC
23 22 21 20 19 18 17 16
RC
15 14 13 12 11 10 9 8
RC
7 6 5 4 3 2 1 0
RC

TC0 Status Register (channel = 2)

Name: TC0_SR2

Access: read-only

Address: 0x400800A0

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - MTIOB MTIOA CLKSTA
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Enable Register (channel = 2)

Name: TC0_IER2

Access: write-only

Address: 0x400800A4

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Disable Register (channel = 2)

Name: TC0_IDR2

Access: write-only

Address: 0x400800A8

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Interrupt Mask Register (channel = 2)

Name: TC0_IMR2

Access: read-only

Address: 0x400800AC

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
ETRGS LDRBS LDRAS CPCS CPBS CPAS LOVRS COVFS

TC0 Block Control Register

Name: TC0_BCR

Access: write-only

Address: 0x400800C0

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - - SYNC

TC0 Block Mode Register

Name: TC0_BMR

Access: read-write

Address: 0x400800C4

31 30 29 28 27 26 25 24
- - - - - - MAXFILT
23 22 21 20 19 18 17 16
MAXFILT FILTER - IDXPHB SWAP
15 14 13 12 11 10 9 8
INVIDX INVB INVA EDGPHA QDTRANS SPEEDEN POSEN QDEN
7 6 5 4 3 2 1 0
- - TC2XC2S TC1XC1S TC0XC0S

TC0 QDEC Interrupt Enable Register

Name: TC0_QIER

Access: write-only

Address: 0x400800C8

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - QERR DIRCHG IDX

TC0 QDEC Interrupt Disable Register

Name: TC0_QIDR

Access: write-only

Address: 0x400800CC

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - QERR DIRCHG IDX

TC0 QDEC Interrupt Mask Register

Name: TC0_QIMR

Access: read-only

Address: 0x400800D0

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - QERR DIRCHG IDX

TC0 QDEC Interrupt Status Register

Name: TC0_QISR

Access: read-only

Address: 0x400800D4

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - DIR
7 6 5 4 3 2 1 0
- - - - - QERR DIRCHG IDX

TC0 Fault Mode Register

Name: TC0_FMR

Access: read-write

Address: 0x400800D8

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
- - - - - - - -
15 14 13 12 11 10 9 8
- - - - - - - -
7 6 5 4 3 2 1 0
- - - - - - ENCF1 ENCF0

TC0 Write Protect Mode Register

Name: TC0_WPMR

Access: read-write

Address: 0x400800E4

31 30 29 28 27 26 25 24
WPKEY
23 22 21 20 19 18 17 16
WPKEY
15 14 13 12 11 10 9 8
WPKEY
7 6 5 4 3 2 1 0
- - - - - - - WPEN