24.11.4 UCSRC – USART Control and Status Register C

When using the I/O specific commands IN and OUT, the I/O addresses 0x00 - 0x3F must be used. When addressing I/O Registers as data space using LD and ST instructions, 0x20 must be added to these offset addresses.

The UCSRC Register shares the same I/O location as the UBRRH Register. See the Accessing UBRRH/UCSRC Registers section which describes how to access this register.

Name: UCSRC
Offset: 0x20
Reset: 0x06
Property: When addressing I/O Registers as data space the offset address is 0x40

Bit 76543210 
 URSELUMSELUPMn[1:0]USBSUCSZn[1:0]UCPOL 
Access R/WR/WR/WR/WR/WR/WR/WR/W 
Reset 10000010 

Bit 7 – URSEL Register Select

This bit selects between accessing the UCSRC or the UBRRH Register. It is read as one when reading UCSRC. The URSEL must be one when writing the UCSRC.

Bit 6 – UMSEL Mode Select

This bit selects between Asynchronous and Synchronous mode of operation.

Table 24-4. UMSEL Bit Settings
UMSEL Bit SettingsMode
0Asynchronous Operation
1 Synchronous Operation

Bits 5:4 – UPMn[1:0] Parity Mode [n = 1:0]

These bits enable and set type of Parity Generation and Check. If enabled, the Transmitter will automatically generate and send the parity of the transmitted data bits within each frame. The Receiver will generate a parity value for the incoming data and compare it to the UPM0 setting. If a mismatch is detected, the PE Flag in UCSRA will be set.

Table 24-5. UPM Bits Settings
UPM1UPM0ParityMode
00Disabled
01Reserved
10Enabled, Even Parity
11Enabled, Odd Parity

Bit 3 – USBS Stop Bit Select

This bit selects the number of stop bits to be inserted by the Transmitter. The Receiver ignores this setting.

Table 24-6. USBS Bit Settings
USBSStop Bit(s)
01-bit
12-bit

Bits 2:1 – UCSZn[1:0] Character Size [n = 1:0]

The UCSZ1:0 bits combined with the UCSZ2 bit in UCSRB sets the number of data bits (Character Size) in a frame the Receiver and Transmitter use.

Table 24-7. UCSZ Bits Settings
UCSZ2UCSZ1UCSZ0Character Size
0005-bit
0016-bit
0107-bit
0118-bit
100Reserved
101Reserved
110Reserved
1119-bit

Bit 0 – UCPOL Clock Polarity

This bit is used for Synchronous mode only. Write this bit to zero when Asynchronous mode is used. The UCPOL bit sets the relationship between data output change and data input sample, and the synchronous clock (XCK).

Table 24-8. UCPOL Bit Settings
UCPOLTransmitted Data Changed (Output of TxD Pin)Received Data Sampled (Input on RxD Pin)
0Rising XCK EdgeFalling XCK Edge
1Falling XCK EdgeRising XCK Edge