ATMEGA16-16AU SL602 Atmel, ATMEGA16-16AU SL602 Datasheet - Page 154
ATMEGA16-16AU SL602
Manufacturer Part Number
ATMEGA16-16AU SL602
Description
Manufacturer
Atmel
Datasheet
1.ATMEGA16-16AU_SL602.pdf
(357 pages)
- Current page: 154 of 357
- Download datasheet (8Mb)
Data Reception –
The USART
Receiver
Receiving Frames with
5 to 8 Data Bits
2466T–AVR–07/10
The USART Receiver is enabled by writing the Receive Enable (RXEN) bit in the UCSRB Regis-
ter to one. When the receiver is enabled, the normal pin operation of the RxD pin is overridden
by the USART and given the function as the receiver’s serial input. The baud rate, mode of oper-
ation and frame format must be set up once before any serial reception can be done. If
synchronous operation is used, the clock on the XCK pin will be used as transfer clock.
The receiver starts data reception when it detects a valid start bit. Each bit that follows the start
bit will be sampled at the baud rate or XCK clock, and shifted into the receive Shift Register until
the first stop bit of a frame is received. A second stop bit will be ignored by the receiver. When
the first stop bit is received, that is, a complete serial frame is present in the receive Shift Regis-
ter, the contents of the Shift Register will be moved into the receive buffer. The receive buffer
can then be read by reading the UDR I/O location.
The following code example shows a simple USART receive function based on polling of the
Receive Complete (RXC) Flag. When using frames with less than eight bits the most significant
bits of the data read from the UDR will be masked to zero. The USART has to be initialized
before the function can be used.
Note:
The function simply waits for data to be present in the receive buffer by checking the RXC Flag,
before reading the buffer and returning the value.
Assembly Code Example
C Code Example
USART_Receive:
unsigned char USART_Receive( void )
{
}
; Wait for data to be received
sbis UCSRA, RXC
rjmp USART_Receive
; Get and return received data from buffer
in
ret
/* Wait for data to be received */
while ( !(UCSRA & (1<<RXC)) )
/* Get and return received data from buffer */
return UDR;
1. See “About Code Examples” on page 7.
r16, UDR
;
(1)
(1)
ATmega16(L)
154
Related parts for ATMEGA16-16AU SL602
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
Part Number:
Description:
Manufacturer:
Atmel Corporation
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ 5V 40DIP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ 5V 44-QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ 5V 44TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
MCU AVR 16K FLASH 16MHZ 44-QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ COM 40-DIP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ COM 44-QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ IND 40-DIP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ IND 44-QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ IND 44-TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
8-bit Microcontrollers - MCU AVR 16K FLASH 1K SRAM 512B EE
Manufacturer:
Atmel
Part Number:
Description:
IC MCU 8BIT 16KB FLASH 44TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
MCU AVR 16K FLASH 16MHZ 44-TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 16K 16MHZ COM 44-TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC MCU AVR 16K 5V 16MHZ 44-TQFP
Manufacturer:
Atmel
Datasheet: