AT90CAN128-16AE ATMEL Corporation, AT90CAN128-16AE Datasheet - Page 377

no-image

AT90CAN128-16AE

Manufacturer Part Number
AT90CAN128-16AE
Description
8-bit Avr Microcontroller With 128K Bytes of Isp Flash And CAN Controller.flash (Kbytes) 128 Vcc (V) 2.7-5.5 EEPROM (Kbytes) 4 SRAM (bytes) 4K CAN (mess. Obj.) 15
Manufacturer
ATMEL Corporation
Datasheet
Instruction Set Summary
4250C–CAN–03/04
Mnemonics
FMULSU
MULSU
FMULS
RCALL
BREQ
BRCC
BRGE
BRHC
MULS
FMUL
RJMP
ICALL
CPSE
SBRC
SBRS
BRBS
BRBC
BRNE
BRCS
BRSH
BRLO
BRHS
BRTC
BRVS
BRVC
ADIW
SBIW
CALL
BRMI
BRPL
BRLT
BRTS
SUBI
SBCI
ANDI
COM
IJMP
RETI
SBIC
SBIS
ADD
ADC
SUB
SBC
AND
EOR
NEG
SBR
CBR
DEC
SER
MUL
CPC
TST
CLR
JMP
RET
ORI
INC
CPI
OR
CP
Operands
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd, Rr
Rd,Rr
Rd,Rr
Rd,Rr
Rdl,K
Rd, K
Rd, K
Rdl,K
Rd, K
Rd, K
Rd,K
Rd,K
Rd,K
Rr, b
Rr, b
P, b
P, b
s, k
s, k
Rd
Rd
Rd
Rd
Rd
Rd
Rd
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
k
ARITHMETIC AND LOGIC INSTRUCTIONS
BRANCH INSTRUCTIONS
Fractional Multiply Signed with Unsigned
Subtract with Carry Constant from Reg.
Logical AND Register and Constant
Branch if Greater or Equal, Signed
Logical OR Register and Constant
Compare Register with Immediate
Branch if Overflow Flag is Cleared
Subtract with Carry two Registers
Branch if Less Than Zero, Signed
Skip if Bit in I/O Register Cleared
Branch if Half Carry Flag Cleared
Subtract Constant from Register
Subtract Immediate from Word
Skip if Bit in I/O Register is Set
Multiply Signed with Unsigned
Branch if Overflow Flag is Set
Add with Carry two Registers
Skip if Bit in Register Cleared
Branch if Status Flag Cleared
Branch if Half Carry Flag Set
Fractional Multiply Unsigned
Skip if Bit in Register is Set
Fractional Multiply Signed
Branch if Same or Higher
Branch if Status Flag Set
Relative Subroutine Call
Branch if T Flag Cleared
Add Immediate to Word
Exclusive OR Registers
Branch if Carry Cleared
Compare, Skip if Equal
Subtract two Registers
Logical AND Registers
Clear Bit(s) in Register
Test for Zero or Minus
Direct Subroutine Call
Logical OR Registers
Set Bit(s) in Register
Compare with Carry
Branch if T Flag Set
One’s Complement
Two’s Complement
Indirect Jump to (Z)
Branch if Not Equal
Branch if Carry Set
Add two Registers
Subroutine Return
Multiply Unsigned
Indirect Call to (Z)
Interrupt Return
Multiply Signed
Branch if Equal
Branch if Lower
Branch if Minus
Description
Clear Register
Relative Jump
Branch if Plus
Set Register
Direct Jump
Decrement
Increment
Compare
if (SREG(s) = 1) then PC PC+k + 1
if (SREG(s) = 0) then PC PC+k + 1
if (N
if (N
if (T = 1) then PC
if (C = 1) then PC
if (C = 0) then PC
if (C = 0) then PC
if (C = 1) then PC
if (N = 1) then PC
if (N = 0) then PC
if (H = 1) then PC
if (H = 0) then PC
if (Z = 1) then PC
if (Z = 0) then PC
if (T = 0) then PC
if (V = 1) then PC
if (V = 0) then PC
if (Rd = Rr) PC
if (Rr(b)=0) PC
if (Rr(b)=1) PC
if (P(b)=0) PC
if (P(b)=1) PC
R1:R0
R1:R0
R1:R0
Rdh:Rdl
Rdh:Rdl
Rd
V= 0) then PC
V= 1) then PC
Rd
PC
Rd
R1:R0
R1:R0
R1:R0
PC
Rd
Rd
Rd
Rd
Rd
Rd
Rd
Rd
Rd
PC
PC
Rd
Rd
Rd
Rd
Rd
Rd
Operation
Rd
Rd
Rd
Rd (0xFF - K)
PC
PC
PC
PC
Rd
Rd
Rd + Rr + C
Rd - Rr - C
PC + k + 1
0xFF
(Rd x Rr) << 1
(Rd x Rr) << 1
(Rd x Rr) << 1
Rd - K - C
0x00
PC + k + 1
Rd
Rd
Rd + Rr
Rd Rd
Rd - Rr
Rd Rr
Rd v Rr
STACK
STACK
Rr
Rdh:Rdl + K
Rd v K
Rd + 1
Rd K
Rd v K
Rd
Rd - K
Rdh:Rdl - K
0xFF
Rd x Rr
Rd x Rr
Rd x Rr
Rr
K
Z
Z
k
k
PC + 2 or 3
PC + 2 or 3
PC + 2 or 3
PC + 2 or 3
PC + 2 or 3
C
PC + k + 1
Rr
Rd
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
PC + k + 1
1
PC + k + 1
PC + k + 1
Rd
Rd
PC + k + 1
PC + k + 1
AT90CAN128
Z, N,V,C,H
Z, N,V,C,H
Z, N,V,C,H
Z,C,N,V,H
Z,C,N,V,H
Z,C,N,V,S
Z,C,N,V,H
Z,C,N,V,H
Z,C,N,V,H
Z,C,N,V,H
Z,C,N,V,S
Z,C,N,V,H
Z,C,N,V
Flags
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
Z,N,V
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
Z,C
Z,C
Z,C
Z,C
Z,C
Z,C
I
#Clocks
1/2/3
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
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
3
4
4
4
1
1
1
377

Related parts for AT90CAN128-16AE