ATMEGA64-16MC Atmel, ATMEGA64-16MC Datasheet - Page 181

no-image

ATMEGA64-16MC

Manufacturer Part Number
ATMEGA64-16MC
Description
IC AVR MCU 64K 16MHZ COM 64-QFN
Manufacturer
Atmel
Series
AVR® ATmegar
Datasheets

Specifications of ATMEGA64-16MC

Core Processor
AVR
Core Size
8-Bit
Speed
16MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
53
Program Memory Size
64KB (32K x 16)
Program Memory Type
FLASH
Eeprom Size
2K x 8
Ram Size
4K x 8
Voltage - Supply (vcc/vdd)
4.5 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
Internal
Operating Temperature
0°C ~ 70°C
Package / Case
64-MLF®, 64-QFN
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
Data Reception –
The USART
Receiver
Receiving Frames with
5 to 8 Data Bits
2490Q–AVR–06/10
The USART Receiver is enabled by writing the Receive Enable n (RXENn) bit in the UCSRnB
Register to one. When the Receiver is enabled, the normal pin operation of the RxD pin is over-
ridden by the USART and given the function as the receiver’s serial input. The baud rate, mode
of operation 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 UDRn I/O location.
The following code example shows a simple USART receive function based on polling of the
Receive Complete n (RXCn) flag. When using frames with less than eight bits the most signifi-
cant bits of the data read from the UDRn 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 RXCn 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 UCSRnA, RXCn
rjmp USART_Receive
; Get and return received data from buffer
in
ret
/* Wait for data to be received */
while ( !(UCSRnA & (1<<RXCn)) )
/* Get and return received data from buffer */
return UDRn;
1. See “About Code Examples” on page 9.
r16, UDRn
;
(1)
(1)
ATmega64(L)
181

Related parts for ATMEGA64-16MC