IC AVR MCU 8K 16MHZ IND 44-TQFP

ATMEGA8515-16AI

Manufacturer Part NumberATMEGA8515-16AI
DescriptionIC AVR MCU 8K 16MHZ IND 44-TQFP
ManufacturerAtmel
SeriesAVR® ATmega
ATMEGA8515-16AI datasheets
 


Specifications of ATMEGA8515-16AI

Core ProcessorAVRCore Size8-Bit
Speed16MHzConnectivityEBI/EMI, SPI, UART/USART
PeripheralsBrown-out Detect/Reset, POR, PWM, WDTNumber Of I /o35
Program Memory Size8KB (4K x 16)Program Memory TypeFLASH
Eeprom Size512 x 8Ram Size512 x 8
Voltage - Supply (vcc/vdd)4.5 V ~ 5.5 VOscillator TypeInternal
Operating Temperature-40°C ~ 85°CPackage / Case44-TQFP, 44-VQFP
Lead Free Status / RoHS StatusContains lead / RoHS non-compliantData Converters-
1
Page 1
2
Page 2
3
Page 3
4
Page 4
5
Page 5
6
Page 6
7
Page 7
8
Page 8
9
Page 9
10
Page 10
11
12
13
14
15
16
17
18
19
20
21
Page 10/21

Download datasheet (228Kb)Embed
PrevNext
Instruction Set Summary
Description
Mnemonics
Operands
ARITHMETIC AND LOGIC INSTRUCTIONS
ADD
Rd, Rr
Add two Registers
ADC
Rd, Rr
Add with Carry two Registers
ADIW
Rdl,K
Add Immediate to Word
SUB
Rd, Rr
Subtract two Registers
SUBI
Rd, K
Subtract Constant from Register
SBC
Rd, Rr
Subtract with Carry two Registers
SBCI
Rd, K
Subtract with Carry Constant from Reg.
SBIW
Rdl,K
Subtract Immediate from Word
AND
Rd, Rr
Logical AND Registers
ANDI
Rd, K
Logical AND Register and Constant
OR
Rd, Rr
Logical OR Registers
ORI
Rd, K
Logical OR Register and Constant
EOR
Rd, Rr
Exclusive OR Registers
COM
Rd
One’s Complement
NEG
Rd
Two’s Complement
SBR
Rd,K
Set Bit(s) in Register
CBR
Rd,K
Clear Bit(s) in Register
INC
Rd
Increment
DEC
Rd
Decrement
TST
Rd
Test for Zero or Minus
CLR
Rd
Clear Register
SER
Rd
Set Register
MUL
Rd, Rr
Multiply Unsigned
MULS
Rd, Rr
Multiply Signed
MULSU
Rd, Rr
Multiply Signed with Unsigned
FMUL
Rd, Rr
Fractional Multiply Unsigned
FMULS
Rd, Rr
Fractional Multiply Signed
FMULSU
Rd, Rr
Fractional Multiply Signed with Unsigned
BRANCH INSTRUCTIONS
RJMP
k
Relative Jump
IJMP
Indirect Jump to (Z)
RCALL
k
Relative Subroutine Call
ICALL
Indirect Call to (Z)
RET
Subroutine Return
RETI
Interrupt Return
CPSE
Rd,Rr
Compare, Skip if Equal
CP
Rd,Rr
Compare
CPC
Rd,Rr
Compare with Carry
CPI
Rd,K
Compare Register with Immediate
SBRC
Rr, b
Skip if Bit in Register Cleared
SBRS
Rr, b
Skip if Bit in Register is Set
SBIC
P, b
Skip if Bit in I/O Register Cleared
SBIS
P, b
Skip if Bit in I/O Register is Set
BRBS
s, k
Branch if Status Flag Set
BRBC
s, k
Branch if Status Flag Cleared
BREQ
k
Branch if Equal
BRNE
k
Branch if Not Equal
BRCS
k
Branch if Carry Set
BRCC
k
Branch if Carry Cleared
BRSH
k
Branch if Same or Higher
BRLO
k
Branch if Lower
BRMI
k
Branch if Minus
BRPL
k
Branch if Plus
BRGE
k
Branch if Greater or Equal, Signed
BRLT
k
Branch if Less Than Zero, Signed
BRHS
k
Branch if Half Carry Flag Set
BRHC
k
Branch if Half Carry Flag Cleared
BRTS
k
Branch if T Flag Set
BRTC
k
Branch if T Flag Cleared
BRVS
k
Branch if Overflow Flag is Set
BRVC
k
Branch if Overflow Flag is Cleared
BRIE
k
Branch if Interrupt Enabled
BRID
k
Branch if Interrupt Disabled
ATmega8515(L)
10
Operation
Flags
Rd ← Rd + Rr
Z,C,N,V,H
Rd ← Rd + Rr + C
Z,C,N,V,H
Rdh:Rdl ← Rdh:Rdl + K
Z,C,N,V,S
Rd ← Rd - Rr
Z,C,N,V,H
Rd ← Rd - K
Z,C,N,V,H
Rd ← Rd - Rr - C
Z,C,N,V,H
Rd ← Rd - K - C
Z,C,N,V,H
Rdh:Rdl ← Rdh:Rdl - K
Z,C,N,V,S
Rd ← Rd • Rr
Z,N,V
Rd ← Rd • K
Z,N,V
Rd ← Rd v Rr
Z,N,V
Rd ← Rd v K
Z,N,V
Rd ← Rd ⊕ Rr
Z,N,V
Rd ← $FF − Rd
Z,C,N,V
Rd ← $00 − Rd
Z,C,N,V,H
Rd ← Rd v K
Z,N,V
Rd ← Rd • ($FF - K)
Z,N,V
Rd ← Rd + 1
Z,N,V
Rd ← Rd − 1
Z,N,V
Rd ← Rd • Rd
Z,N,V
Rd ← Rd ⊕ Rd
Z,N,V
Rd ← $FF
None
R1:R0 ← Rd x Rr
Z,C
R1:R0 ← Rd x Rr
Z,C
R1:R0 ← Rd x Rr
Z,C
<< 1
R1:R0 ← (Rd x Rr)
Z,C
<< 1
R1:R0 ← (Rd x Rr)
Z,C
<< 1
R1:R0 ← (Rd x Rr)
Z,C
PC ← PC + k + 1
None
PC ← Z
None
PC ← PC + k + 1
None
PC ← Z
None
PC ← STACK
None
PC ← STACK
I
if (Rd = Rr) PC ← PC + 2 or 3
None
Rd − Rr
Z, N,V,C,H
Rd − Rr − C
Z, N,V,C,H
Rd − K
Z, N,V,C,H
if (Rr(b)=0) PC ← PC + 2 or 3
None
if (Rr(b)=1) PC ← PC + 2 or 3
None
if (P(b)=0) PC ← PC + 2 or 3
None
if (P(b)=1) PC ← PC + 2 or 3
None
if (SREG(s) = 1) then PC←PC+k + 1
None
if (SREG(s) = 0) then PC←PC+k + 1
None
if (Z = 1) then PC ← PC + k + 1
None
if (Z = 0) then PC ← PC + k + 1
None
if (C = 1) then PC ← PC + k + 1
None
if (C = 0) then PC ← PC + k + 1
None
if (C = 0) then PC ← PC + k + 1
None
if (C = 1) then PC ← PC + k + 1
None
if (N = 1) then PC ← PC + k + 1
None
if (N = 0) then PC ← PC + k + 1
None
if (N ⊕ V= 0) then PC ← PC + k + 1
None
if (N ⊕ V= 1) then PC ← PC + k + 1
None
if (H = 1) then PC ← PC + k + 1
None
if (H = 0) then PC ← PC + k + 1
None
if (T = 1) then PC ← PC + k + 1
None
if (T = 0) then PC ← PC + k + 1
None
if (V = 1) then PC ← PC + k + 1
None
if (V = 0) then PC ← PC + k + 1
None
if ( I = 1) then PC ← PC + k + 1
None
if ( I = 0) then PC ← PC + k + 1
None
#Clocks
1
1
2
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
4
4
1/2/3
1
1
1
1/2/3
1/2/3
1/2/3
1/2/3
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
1/2
2512JS–AVR–10/06