ATxmega16D4 Atmel Corporation, ATxmega16D4 Datasheet - Page 9
![no-image](/images/manufacturer_photos/0/0/79/atmel_corporation_sml.jpg)
ATxmega16D4
Manufacturer Part Number
ATxmega16D4
Description
Manufacturer
Atmel Corporation
Specifications of ATxmega16D4
Flash (kbytes)
16 Kbytes
Pin Count
44
Max. Operating Frequency
32 MHz
Cpu
8-bit AVR
# Of Touch Channels
16
Hardware Qtouch Acquisition
No
Max I/o Pins
34
Ext Interrupts
34
Usb Speed
No
Usb Interface
No
Spi
4
Twi (i2c)
2
Uart
2
Graphic Lcd
No
Video Decoder
No
Camera Interface
No
Adc Channels
12
Adc Resolution (bits)
12
Adc Speed (ksps)
200
Analog Comparators
2
Resistive Touch Screen
No
Temp. Sensor
Yes
Crypto Engine
No
Sram (kbytes)
2
Eeprom (bytes)
1024
Self Program Memory
YES
Dram Memory
No
Nand Interface
No
Picopower
Yes
Temp. Range (deg C)
-40 to 85
I/o Supply Class
1.6 to 3.6
Operating Voltage (vcc)
1.6 to 3.6
Fpu
No
Mpu / Mmu
no / no
Timers
4
Output Compare Channels
14
Input Capture Channels
14
Pwm Channels
14
32khz Rtc
Yes
Calibrated Rc Oscillator
Yes
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
ATxmega16D4-AU
Manufacturer:
Atmel
Quantity:
438
Part Number:
ATxmega16D4-AU
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
Company:
Part Number:
ATxmega16D4-MH
Manufacturer:
Atmel
Quantity:
1 605
Company:
Part Number:
ATxmega16D4-MHR
Manufacturer:
SANYO
Quantity:
50
Part Number:
ATxmega16D4-MHR
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
3.7
3.8
3.9
8210B–AVR–04/10
Status Register
Stack and Stack Pointer
Register File
The Status Register (SREG) contains information about the result of the most recently executed
arithmetic or logic instruction. This information can be used for altering program flow in order to
perform conditional operations. Note that the Status Register is updated after all ALU opera-
tions, as specified in the instruction set reference. This will in many cases remove the need for
using the dedicated compare instructions, resulting in faster and more compact code.
The Status Register is not automatically stored when entering an interrupt routine nor restored
when returning from an interrupt. This must be handled by software.
The Status Register is accessible in the I/O Memory space.
The Stack is used for storing return addresses after interrupts and subroutine calls. It can also
be used for storing temporary data. The Stack Pointer (SP) register always points to the top of
the Stack. It is implemented as two 8-bit registers that is accessible in the I/O Memory space.
Data is pushed and popped from the Stack using the PUSH and POP instructions. The Stack is
implemented as growing from higher memory locations to lower memory locations. This implies
that a pushing data on the Stack decreases the SP, and popping data off the Stack increases
the SP.The SP is automatically loaded after reset, and the initial value is the highest address of
the internal SRAM. If the SP is changed, it must be set to point above address 0x2000 and it
must be defined before any subroutine calls are executed or before interrupts are enabled.
During interrupts or subroutine calls the return address is automatically pushed on the Stack.
The return address can be two or three bytes, depending of the memory size of the device. For
devices with 128K bytes or less of program memory the return address is two bytes, hence the
Stack Pointer is decremented/incremented by two. For devices with more than 128K bytes of
program memory, the return address is three bytes, hence the SP is decremented/incremented
by three. The return address is popped of the Stack when returning from interrupts using the
RETI instruction, and subroutine calls using the RET instruction.
The SP is decremented by one when data is pushed onto the Stack with the PUSH instruction,
and incremented by one when data is popped off the Stack using the POP instruction.
To prevent corruption when updating the Stack Pointer from software, a write to SPL will auto-
matically disable interrupts for up to 4 instructions or until the next I/O memory write.
The Register File consists of 32 x 8-bit general purpose registers. In order to achieve the
required performance and flexibility, the Register File supports the following input/output
schemes:
• One 8-bit output operand and one 8-bit result input
• Two 8-bit output operands and one 8-bit result input
• Two 8-bit output operands and one 16-bit result input
• One 16-bit output operand and one 16-bit result input
XMEGA D
9