Electronic Components Datasheet Search
  English  ▼

X  

ATMEGA640 Datasheet(PDF) 211 Page - Microchip Technology

Part # ATMEGA640
Description  8-bit Microcontroller with 16/32/64KB In-System Programmable Flash
PDF  436 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  MICROCHIP [Microchip Technology]
Direct Link  http://www.microchip.com
Logo MICROCHIP - Microchip Technology

ATMEGA640 Datasheet(HTML) 211 Page - Microchip Technology

Back Button ATMEGA640 Datasheet HTML 207Page - Microchip Technology ATMEGA640 Datasheet HTML 208Page - Microchip Technology ATMEGA640 Datasheet HTML 209Page - Microchip Technology ATMEGA640 Datasheet HTML 210Page - Microchip Technology ATMEGA640 Datasheet HTML 211Page - Microchip Technology ATMEGA640 Datasheet HTML 212Page - Microchip Technology ATMEGA640 Datasheet HTML 213Page - Microchip Technology ATMEGA640 Datasheet HTML 214Page - Microchip Technology ATMEGA640 Datasheet HTML 215Page - Microchip Technology Next Button
Zoom Inzoom in Zoom Outzoom out
 211 / 436 page
background image
211
ATmega640/V-1280/V-1281/V-2560/V-2561/V [DATASHEET]
DS40002211A
Note:
1. See “About Code Examples” on page 10.
The receive function example reads all the I/O Registers into the Register File before any computation is done.
This gives an optimal receive buffer utilization since the buffer location read will be free to accept new data as early
as possible.
Assembly Code Example(1)
USART_Receive:
; Wait for data to be received
lds
r17, UCSRnA
sbrs
r17, RXCn
rjmp
USART_Receive
; Get status and 9th bit, then data from buffer
lds
r18, UCSRnA
lds
r17, UCSRnB
lds
r16, UDRn
; If error, return -1
andi
r18,(1<<FEn)|(1<<DORn)|(1<<UPEn)
breq
USART_ReceiveNoError
ldi
r17, HIGH(-1)
ldi
r16, LOW(-1)
USART_ReceiveNoError:
; Filter the 9th bit, then return
lsr
r17
andi
r17, 0x01
ret
C Code Example(1)
unsigned int
USART_Receive( void )
{
unsigned char
status, resh, resl;
/* Wait for data to be received */
while
( !(UCSRnA & (1<<RXCn)) )
;
/* Get status and 9th bit, then data */
/* from buffer */
status = UCSRnA;
resh = UCSRnB;
resl = UDRn;
/* If error, return -1 */
if
( status & (1<<FEn)|(1<<DORn)|(1<<UPEn) )
return
-1;
/* Filter the 9th bit, then return */
resh = (resh >> 1) & 0x01;
return
((resh << 8) | resl);
}



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  ...More


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com