34.9.1 Control A

Table 34-21. Register Bit Attribute Legend
SymbolDescriptionSymbolDescriptionSymbolDescription
RReadable bitHCCleared by Hardware(Grey cell)Unimplemented
WWritable bitHSSet by HardwareXBit is unknown at Reset
KWrite to clearSSoftware settable bit
Name: CTRLA
Offset: 0x00
Reset: 0x00000000
Property: RW

Bit 3130292827262524 
  DORDCPOLCMODEFORM[3:0] 
Access RWRWRWRWRWRWRW 
Reset 0000000 
Bit 2322212019181716 
 SAMPA[1:0]RXPO[1:0]  TXPO[1:0] 
Access RWRWRWRWRWRW 
Reset 000000 
Bit 15141312111098 
 SAMPR[2:0]  RXINVTXINVIBON 
Access RWRWRWRWRWRW 
Reset 000000 
Bit 76543210 
 RUNSTDBY  MODE[2:0]ENABLESWRST 
Access RWRWRWRWRWRW 
Reset 000000 

Bit 30 – DORD Data Order

This bit selects the data order when a character is shifted out from the Data register.

This bit is not synchronized.

ValueNameDescription
0x0MSBMSB is transmitted first.
0x1LSBLSB is transmitted first.

Bit 29 – CPOL Clock Polarity

This bit selects the relationship between data output change and data input sampling in synchronous mode.

This bit is not synchronized.

CPOLTxD ChangeRxD Sample
0x0Rising XCK edgeFalling XCK edge
0x1Falling XCK edgeRising XCK edge

Bit 28 – CMODE Communication Mode

This bit selects asynchronous or synchronous communication.

This bit is not synchronized.

ValueNameDescription
0x0ASYNCAsynchronous communication.
0x1SYNCSynchronous communication.

Bits 27:24 – FORM[3:0] Frame Format

These bits define the frame format.

These bits are not synchronized.

FORM[3:0]Description
0x0USART frame
0x1USART frame with parity
0x2LIN Hosst - Break and sync generation. See LIN Command (CTRLB.LINCMD).
0x3Reserved
0x4Auto-baud (LIN Client) - break detection and auto-baud.
0x5Auto-baud - break detection and auto-baud with parity
0x6 - 0xFReserved
ValueNameDescription
0x0USARTUSART frame
0x1USARTPUSART frame with parity
0x2LINBRKGENLIN Master Break and Synck generation
0x4LINBRKDETLIN Slave break detection and auto-baud
0x5BRKDETBreak detection and auto-baud with parity

Bits 23:22 – SAMPA[1:0] Sample Adjustment

These bits define the sample adjustment.

These bits are not synchronized.

SAMPA[1:0]16x Over-sampling (CTRLA.SAMPR=0 or 1)8x Over-sampling (CTRLA.SAMPR=2 or 3)
0x07-8-9 (Recommended)3-4-5 (Recommended)
0x19-10-114-5-6
0x211-12-135-6-7
0x313-14-156-7-8

Bits 21:20 – RXPO[1:0] Receive Data Pinout

These bits define the receive data (RxD) pin configuration.

These bits are not synchronized.

RXPO[1:0]NameDescription
0x0PAD[0]SERCOM PAD[0] is used for data reception
0x1PAD[1]SERCOM PAD[1] is used for data reception
0x2PAD[2]SERCOM PAD[2] is used for data reception
0x3PAD[3]SERCOM PAD[3] is used for data reception
ValueNameDescription
0x0PAD0SERCOM PAD0 is used for data reception
0x1PAD1SERCOM PAD1 is used for data reception
0x2PAD2SERCOM PAD2 is used for data reception
0x3PAD3SERCOM PAD3 is used for data reception

Bits 17:16 – TXPO[1:0] Transmit Data Pinout

These bits define the transmit data (TxD) and XCK pin configurations.

This bit is not synchronized.

TXPOTxD Pin LocationXCK Pin Location (When Applicable)RTS/TECTS
0x0SERCOM PAD[0]SERCOM PAD[1]N/AN/A
0x1Reserved
0x2SERCOM PAD[0]N/ASERCOM PAD[2]SERCOM PAD[3]
0x3SERCOM PAD[0]SERCOM PAD[1]SERCOM PAD[2]N/A
ValueNameDescription
0x0PAD0PAD[0] = TxD; PAD[1] = XCK
0x2PAD2PAD[0] = TxD; PAD[2] = RTS; PAD[3] = CTS
0x3PAD3PAD[0] = TxD; PAD[1] = XCK; PAD[2] = TE

Bits 15:13 – SAMPR[2:0] Sample

These bits select the sample rate.

These bits are not synchronized.

SAMPR[2:0]Description
0x016x over-sampling using arithmetic baud rate generation.
0x116x over-sampling using fractional baud rate generation.
0x28x over-sampling using arithmetic baud rate generation.
0x38x over-sampling using fractional baud rate generation.
0x43x over-sampling using arithmetic baud rate generation.
0x5-0x7Reserved
ValueNameDescription
0x0ARITHM16X16x oversampling using arithmetic baud rate generation
0x1FRAC16X16x oversampling using fractional baud rate generation
0x2ARITHM8X8x oversampling using arithmetic baud rate generation
0x3FRAC8X8x oversampling using fractional baud rate generation
0x4ARITHM3X3x oversampling using arithmetic baud rate generation

Bit 10 – RXINV Receive Data Invert

ValueNameDescription
0x0DISABLERxD is not inverted
0x1INVRxD is inverted

Bit 9 – TXINV Transmit Data Invert

ValueNameDescription
0x0DISABLETxD is not inverted
0x1INVTxD is inverted

Bit 8 – IBON Immediate Buffer Overflow Notification

This bit controls when the buffer overflow status bit (STATUS.BUFOVF) is asserted when a buffer overflow occurs.

ValueDescription
0STATUS.BUFOVF is asserted when it occurs in the data stream.
1STATUS.BUFOVF is asserted immediately upon buffer overflow.

Bit 7 – RUNSTDBY Run during Standby

This bit defines the functionality in standby sleep mode.

This bit is not synchronized.

RUNSTDBYExternal ClockInternal Clock
0x0External clock is disconnected when ongoing transfer is finished. All reception is dropped.Generic clock is disabled when ongoing transfer is finished. The device will not wake up on either Receive Start or Transfer Complete interrupt unless the appropriate ONDEMAND bits are set in the clocking chain.
0x1Wake on Receive Start or Receive Complete interrupt.Generic clock is enabled in all sleep modes. Any interrupt can wake up the device.

Bits 4:2 – MODE[2:0] Operating Mode

These bits select the USART serial communication interface of the SERCOM.

These bits are not synchronized.

ValueNameDescription
0x0EXTCLKUSART with external clock
0x1INTCLKUsart with internal clock

Bit 1 – ENABLE Enable

Due to synchronization, there is delay from writing CTRLA.ENABLE until the peripheral is enabled/disabled. The value written to CTRLA.ENABLE will read back immediately and the Enable Synchronization Busy bit in the Synchronization Busy register (SYNCBUSY.ENABLE) will be set. SYNCBUSY.ENABLE is cleared when the operation is complete.

This bit is not enable-protected.

ValueDescription
0The peripheral is disabled or being disabled.
1The peripheral is enabled or being enabled.

Bit 0 – SWRST Software Reset

Writing '0' to this bit has no effect.

Writing '1' to this bit resets all registers in the SERCOM, except DBGCTRL, to their initial state, and the SERCOM will be disabled.

Writing '1' to CTRLA.SWRST will always take precedence, meaning that all other writes in the same write-operation will be discarded. Any register write access during the ongoing reset will result in a bus error. Reading any register will return the reset value of the register.

Due to synchronization, there is a delay from writing CTRLA.SWRST until the reset is complete. CTRLA.SWRST and SYNCBUSY.SWRST will both be cleared when the reset is complete.

This bit is not enable-protected.

Note:
  1. When the CTRLA.SWRST is written, the user should poll the SYNCB.SWRST bit to know when the reset operation is complete.
  2. During a SWRST, access to registers/bits without SWRST are disallowed until the SYNCBUSY.SWRST is cleared by the hardware.
ValueDescription
0There is no reset operation ongoing.
1The reset operation is ongoing.