Electronic Components Datasheet Search
  English  ▼

X  

ATmega16U4 Datasheet(PDF) 162 Page - ATMEL Corporation

Part # ATmega16U4
Description  8-bit Microcontroller with 16/32K Bytes of ISP Flash and USB Controller
PDF  408 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  ATMEL [ATMEL Corporation]
Direct Link  http://www.atmel.com
Logo ATMEL - ATMEL Corporation

ATmega16U4 Datasheet(HTML) 162 Page - ATMEL Corporation

Back Button ATmega16U4 Datasheet HTML 158Page - ATMEL Corporation ATmega16U4 Datasheet HTML 159Page - ATMEL Corporation ATmega16U4 Datasheet HTML 160Page - ATMEL Corporation ATmega16U4 Datasheet HTML 161Page - ATMEL Corporation ATmega16U4 Datasheet HTML 162Page - ATMEL Corporation ATmega16U4 Datasheet HTML 163Page - ATMEL Corporation ATmega16U4 Datasheet HTML 164Page - ATMEL Corporation ATmega16U4 Datasheet HTML 165Page - ATMEL Corporation ATmega16U4 Datasheet HTML 166Page - ATMEL Corporation Next Button
Zoom Inzoom in Zoom Outzoom out
 162 / 408 page
background image
162
7766D–AVR–01/09
ATmega16U4/ATmega32U4
The following code examples show how to do an atomic write of the TCNTn register contents.
Writing any of the OCRnA/B/C/D registers can be done by using the same principle.
Note:
1. The example code assumes that the part specific header file is included.
For I/O registers located in extended I/O map, “IN”, “OUT”, “SBIS”, “SBIC”, “CBI”, and “SBI”
instructions must be replaced with instructions that allow access to extended I/O. Typically
“LDS” and “STS” combined with “SBRS”, “SBRC”, “SBR”, and “CBR”.
The assembly code example requires that the r17:r16 register pair contains the value to be writ-
ten to TCNTn.
15.11.1
Reusing the temporary high byte register
If writing to more than one 10-bit register where the high byte is the same for all registers written,
then the high byte only needs to be written once. However, note that the same rule of atomic
operation described previously also applies in this case.
Assembly Code Example
TIM1_WriteTCNT
n:
; Save global interrupt flag
in
r18,SREG
; Disable interrupts
cli
; Set TCNT
n to r17:r16
out
TC
nH,r17
out
TCNT
n,r16
; Restore global interrupt flag
out
SREG,r18
ret
C Code Example
void
TIM1_WriteTCNTn( unsigned int i )
{
unsigned char
sreg;
unsigned int
i;
/* Save global interrupt flag */
sreg = SREG;
/* Disable interrupts */
_CLI();
/* Set TCNTn to i */
TCnH = (i >> 8);
TCNTn = (unsigned char)i;
/* Restore global interrupt flag */
SREG = sreg;
}



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