ATmega64A Atmel Corporation, ATmega64A Datasheet - Page 114

no-image

ATmega64A

Manufacturer Part Number
ATmega64A
Description
Manufacturer
Atmel Corporation
Datasheets

Specifications of ATmega64A

Flash (kbytes)
64 Kbytes
Pin Count
64
Max. Operating Frequency
16 MHz
Cpu
8-bit AVR
# Of Touch Channels
16
Hardware Qtouch Acquisition
No
Max I/o Pins
53
Ext Interrupts
8
Usb Speed
No
Usb Interface
No
Spi
1
Twi (i2c)
1
Uart
2
Graphic Lcd
No
Video Decoder
No
Camera Interface
No
Adc Channels
8
Adc Resolution (bits)
10
Adc Speed (ksps)
15
Analog Comparators
1
Resistive Touch Screen
No
Temp. Sensor
No
Crypto Engine
No
Sram (kbytes)
4
Eeprom (bytes)
2048
Self Program Memory
YES
Dram Memory
No
Nand Interface
No
Picopower
No
Temp. Range (deg C)
-40 to 85
I/o Supply Class
2.7 to 5.5
Operating Voltage (vcc)
2.7 to 5.5
Fpu
No
Mpu / Mmu
no / no
Timers
4
Output Compare Channels
8
Input Capture Channels
2
Pwm Channels
7
32khz Rtc
Yes
Calibrated Rc Oscillator
Yes

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ATmega64A-AN
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega64A-ANR
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega64A-AU
Manufacturer:
ATMEL
Quantity:
4 500
Part Number:
ATmega64A-AU
Manufacturer:
Atmel
Quantity:
900
Part Number:
ATmega64A-AU
Manufacturer:
ATMEL85
Quantity:
900
Part Number:
ATmega64A-AU
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega64A-AU
Manufacturer:
ATMEL
Quantity:
8 000
Part Number:
ATmega64A-AU
Manufacturer:
AT
Quantity:
20 000
Company:
Part Number:
ATmega64A-AU
Quantity:
1 920
Company:
Part Number:
ATmega64A-AU
Quantity:
1 850
Company:
Part Number:
ATmega64A-AU
Quantity:
1 800
Company:
Part Number:
ATmega64A-AU
Quantity:
267
Company:
Part Number:
ATmega64A-AU
Quantity:
257
Part Number:
ATmega64A-AUR
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega64A-MU
Manufacturer:
Atmel
Quantity:
5 200
15.3
8160C–AVR–07/09
Accessing 16-bit Registers
Interrupt flag and mask bits for Output Compare unit C are added.
The 16-bit Timer/Counter has improvements that will affect the compatibility in some special
cases.
The TCNTn, OCRnA/B/C, and ICRn are 16-bit registers that can be accessed by the AVR CPU
via the 8-bit data bus. The 16-bit register must be byte accessed using two read or write opera-
tions. Each 16-bit timer has a single 8-bit register for temporary storing of the high byte of the 16-
bit access. The same temporary register is shared between all 16-bit registers within each 16-bit
timer. Accessing the low byte triggers the 16-bit read or write operation. When the low byte of a
16-bit register is written by the CPU, the high byte stored in the temporary register, and the low
byte written are both copied into the 16-bit register in the same clock cycle. When the low byte of
a 16-bit register is read by the CPU, the high byte of the 16-bit register is copied into the tempo-
rary register in the same clock cycle as the low byte is read.
Not all 16-bit accesses uses the temporary register for the high byte. Reading the OCRnA/B/C
16-bit registers does not involve using the temporary register.
To do a 16-bit write, the high byte must be written before the low byte. For a 16-bit read, the low
byte must be read before the high byte.
The following code examples show how to access the 16-bit timer registers assuming that no
interrupts updates the temporary register. The same principle can be used directly for accessing
the OCRnA/B/C and ICRn Registers. Note that when using “C”, the compiler handles the 16-bit
access.
Note:
The assembly code example returns the TCNTn value in the r17:r16 register pair.
Assembly Code Examples
C Code Examples
• FOCnA, FOCnB, and FOCnC are added in the new TCCRnC Register.
• WGMn3 is added to TCCRnB.
:.
; Set TCNTn to 0x01FF
ldi r17,0x01
ldi r16,0xFF
out TCNTnH,r17
out TCNTnL,r16
; Read TCNTn into r17:r16
in
in
:.
unsigned int i;
:.
/* Set TCNTn to 0x01FF */
TCNTn = 0x1FF;
/* Read TCNTn into i */
i = TCNTn;
:.
1. See “About Code Examples” on page 8.
r16,TCNTnL
r17,TCNTnH
(1)
(1)
ATmega64A
114

Related parts for ATmega64A