Materi :
1
2
3
4
5
6
7
8
9
10
Watchdog Timer
Power saving (Powe down mode)
Power saving (Idle mode)
UART (Serial)
Timer
Interrupts
Program Memory Lock Bits
Programming the Flash (Parallel Mode) + Verification
Programming the Flash (Serial Mode) + Verification
External Memory (Program & Data)
Arahan Tugas :
1)
2)
3)
Arahan Tugas :
KASI?, BAGAIMANA?
1a
1b
Opcode
(Des)
Opcode
(Biner)
1c
Opcod Mnemo
e
nic
(Hex) (Opcode
-nya)
Mnemonic
(Operand-nya berdasarkan
kategori)
Mnemonic
(Operand-nya
berdasarkan spesifik
instruksi)
OPERATION CODE
MHS
BERSAMA >
Andrea Afif
Leksono
14223824
Arif Wijaya
14223827
Cristiander
Joyana
14223893
(Des)
(Biner)
(OPERAND-nya)
(per-kategori)
(spesifik instruksi)
(OPCOD
(Hex) E-nya)
7 0000 0111 07
INC
@Ri
@R1
14 0000 1110 0E
INC
Rn
R6
31 0001 1111 1F
DEC
Rn
R7
32 0010 0000 20
JB
bit,rel
35 0010 0011 23
RL
47 0010 1111 2F
ADD
A,Rn
A,R7
48 0011 0000 30
JNB
bit,rel
52 0011 0100 34
ADDC A, #data
---
60 0011 1100 3C
ADDC A, Rn
A, R4
65 0100 0001 41
(P2)
66 0100 0010 42
ORL
data addr, A
dir, A
77 0100 1101 4D
ORL
A, Rn
A, R5
86 0101 0110 56
ANL
A, @Ri
A, @R0
90 0101 1010 5A
ANL
A,R2
A,R2
XRL
A,R2
A,R2
Syofwan
Fadillah
14223881
Ikrimah Fahmi
15223732
JNZ
rel
code addr
JMP
@A+DPTR
@A+DPTR
MOV
Rn,#data
R0,#data
MOV
direct,Rn
data addr,R3
SUBB A,@Ri
A,@R1
SUBB A,Rn
A,R3
MOV
Rn,direct
R6,data addr
CJNE
Rn,#data,rel
R5,#data,code ad
XCH
A,Rn
A,R1
XCHD A,@Rn
A,@R1
DJNZ Rn,rel
R6,code addr
MOV
A,R1
MOVX @DPTR,A
ACALL addr11
@DPTR,A
code addr
MOV
data addr,A
A,Rn
direct,A
MOV
Rn,A
R4,A
5
Operasi (simbolik)
6
Bytes
(1/2/3)
Format
bytes
( 123 / 132 )
Flags
( C,OV,AC, dsb = X / 0 / 1 )
Addressing Mode
utk Operand-1
(register, direct,
indirect-register,
immediate, immediate16, long-address,
absolut, rellative, bit )
OPERASI
(simbolik)
FLAGS
FORMAT
BYTES
BYTES
ADDRESSING MO
OV
AC
(Operand-1)
((Ri))((Ri))+1
1 ---
---
---
indirect-register
(R6)(R6)+1
1 ---
---
---
register
(R7)(R7)+1
1 ---
---
---
register
(PC)(PC)+3
IF (bit)=1
THEN
(PC)(PC)+rel
123 ---
---
---
bit
(An+1)(An)n=0-6
(A0)(A7)
1 ---
---
---
---
(A)(A)+(R7)
1X
---
(PC)(PC)+3
IF (bit)=0
THEN
(PC)(PC)+rel
123 ---
---
---
bit
12 X
immediate
12 X
register
(PC) f (PC) + 2
(PC10-0)fpage address
132 ---
---
---
bit
12 ---
---
---
direct
1 ---
---
---
register
1 ---
---
---
indirect-register
ANL
(A) (A) ^ (R2)
---
---
---
---
XRL
(A) (A) V (R2)
---
---
---
---
JNZ
(PC) (PC) + 2
IF (A) = 0
THEN (PC) (PC) +
rel
JMP
(PC) (A) + (DPTR)
---
---
---
direct
---
---
---
indirect-register
MOV
(R0) #data
---
---
---
register
MOV
(direct) (R3)
---
---
---
direct
SUBB
(A) (A) - (C) - ((Ri))
1X
direct
SUBB
(A) (A) - (C) - (Rn)
1X
direct
MOV
(Rn) (direct)
12 ---
---
---
register
(PC) (PC) + 3
IF (Rn) < > data
THEN
(PC) (PC) + relative
offset
IF (Rn) < data
THEN
(C) 1
ELSE
(C) 0
---
---
register
XCH
(A) D ((Rn)
1 ---
---
---
direct
XCHD
(A3-0) D ((Ri3-0))
1 ---
---
---
direct
(PC)(PC)
(R6)(R6)-1
IF (R6)>0 or (R6)<0
THEN
(PC)(PC)+rel
12 ---
---
---
register
(A)(R1)
1 ---
---
---
register
(DPTR)(A)
(PC)(PC)+2
(SP)(SP)+1
((SP))(PC7-0)
((SP))(SP)+1
((SP))(PC15-8)
(PC10-0)page address
1
2
1 --12 ---
-----
-----
indirect-register
absolute
(direct)(A)
12 ---
---
---
direct
123 X
(R4)(A)
1 ---
---
---
register
10
11
12
Addressing Mode
utk Operand-2
Addressing Mode
utk Operand-3
Kategori
(Arith, Log, Transf, Bool, Branch )
1) Yg memang TIDAK
1) YgADA
memang
ISINYA,
TIDAK
diisi ADA ISINYA, diisi --- lalu ENTER
ADDRESSING MODE
(Operand-2)
KATEGORI
(Operand-3)
---
---
Arith
---
---
Arith
---
---
Arith
rellative
---
Bool
---
---
Log
register
---
Arith
rellative
---
Bool
---
---
Arith
---
---
Arith
bit
---
Branch
---
---
Log
---
---
Log
---
---
Log
register
---
Log
register
---
Log
---
---
Bool
---
---
Bool
immediate
---
Transf
register
---
Transf
Arith
register
---
Arith
direct
---
Transf
immediate
addr11
Branch
register
---
Transf
Transf
rellative
---
Branch
---
---
Transf
-----
-----
Transf
Branch
---
---
Transf
---
---
Transf
13
14
Deskripsi ( singkat )
Encoding
1) Format Text
2) Antar bit tanpa spasi
3) 1-spasi hanya antar nibble
4) Tiap byte barisnya beda, tapi tetap dalam sel yg sama
5) Subscript
DESKRIPSI SINGKAT
ENCODING
0000 011i
Increment register
0000 1rrr
Decrement register
0001 1rrr
0010 0000
bit address
rel. Address
0010 0011
0010 1rrr
0011 0000
bit address
rel. Address
0011 0100
immediate data
a10a9a80 0001
a7a6a5a4 a3a2a1a0
0100 0101
direct address
0100 1rrr
0101 1rrr
0110 0101
direct address
0111 0000
rel. address
0111 0011
0111 1rrr
immediate data
1000 1rrr
direct address
1101 1rrr
rel. address
1110 1rrrr
1111 0101
direct address
1111 1rrrr
15
16
17
Osc.
Cycles
Fungsi
OSC.
CYCLES
FUNGSI
12
12
12
24
2 Jika bit yang ditunjuk pada kondisi set (1) maka akan lompat ke address yang di
12
12
24
2 Jika bit yang ditunjuk pada kondisi not set (0) maka akan lompat ke address yan
12
12
24
2 Absolute Jump
12
12
12
12
12
24
24
2 Jump indirect
12
24
12
12
24
24
12
12
1 Menukar digit
24
12
24
24
12
12
18
Catatan
( berisi a.l: alternatif penamaan operand, dan sisa info penting dari Description )
CATATAN
Ketika instruksi ini digunakan untuk memodifikasi sebuah port output, nilai yang digunakan sebaga
Ketika instruksi ini digunakan untuk memodifikasi sebuah port output, nilai yang digunakan sebaga
ka akan lompat ke address yang ditunjuk, jika tidak set (0) maka tidak akan lompat ke address yang ditunjuk
Instruksi ADD menyebabkan Flag Carry dan Auxiliary-carry menjadi posisi set, berturut-turut, jika c
maka akan lompat ke address yang ditunjuk, jika set (1) maka tidak akan lompat ke address yang ditunjuk, d
Mode addresing operand yang diperbolehkan : register, direct, register-indirect, atau immediate
Carry dan Auxiliary-carry flag masing-masing set (1), jika ada carry-out dari bit 7 atau bit 3 maka c
AJMP melaksanakan program transfer ke alamat yang ditunjuk, dengan alamat tujuannya harus be
Ketika tujuannya adalah Accumulator, sumbernya dapat menggunakan register, direct, register-ind
Ketika instruksi ini digunakan untuk memodifikasi port output, nilai yang digunakan sebagai port d
Ketika instruksi ini digunakan untuk memodifikasi suatu port keluaran, nilai yang digunakan sebag
Only direct addressing is allowed for the source operand.
When this instruction is used to modify an output port, the value used as the original port data is r
This is by far the most flexible operation. Fifteen combinations of source and destination addressin
This is by far the most flexible operation. Fifteen combinations of source and destination addressin
Sumber operand terdiri dari empat mode alamat : register, direct, register-indirect, or immediate.
Sumber operand terdiri dari empat mode alamat : register, direct, register-indirect, or immediate.
Operasi move ini jauh lebih fleksibel : lima belas sumber kombinasi dan mode alamat penempatan
Dua operand pertama diperbolehkan menggunakan empat mode kombinasi pengalamatan: Accum
maksud dari data byte adalah data address, jadi data dari accumulator dipindahkan ke data addres
yang digunakan sebagai port data asli akan dibaca dari latch data output, bukan dari pin input. Addresing m
yang digunakan sebagai port data asli akan dibaca dari latch data output, bukan dari pin input.
address yang ditunjuk, dan berlanjut ke instruksi selanjutnya
et, berturut-turut, jika carry-out dari bit 7 atau bit 3, dan dihapus jika tidak dari bit 7 atau bit 3. Ketika menam
i bit 7 atau bit 3 maka clear (0), sebaliknya. Ketika menambahkan unsigned integer, Carry flag menjadi over
mat tujuannya harus berada dalam 2 K blok yang sama dari memori program dengan byte pertama dari instr
ster, direct, register-indirect, atau immediate addressing; ketika tujuannya adalah alamat langsung, sumbern
gunakan sebagai port data asli dibaca dari data output latch, bukan pin input.
yang digunakan sebagai port data asli akan dibaca dari keluaran data latch, bukan pin input.
e original port data is read from the output data latch, not the input pins.
ndirect, or immediate.
ndirect, or immediate.
i pengalamatan: Accumulator mungkin dibandingkan langsung dengan alamat byte atau data.
ddressing.
ari pin input. Addresing mode yang diperbolehkan: register, direct, atau register-indirect
7 atau bit 3. Ketika menambahkan unsigned integer, carry flag mengindikasikan terjadinya overflow. OV men
r, Carry flag menjadi overflow. OV set (1) jika ada carry-out dari bit 6 tapi tidak dari bit 7, atau carry-out dari
n pin input.
e atau data.
rjadinya overflow. OV menjadi posisi set jika carry-out dari bit 6 tapi tidak lebih dari bit 7. atau carry out pad
i bit 7, atau carry-out dari bit 7 tetapi tidak dari bit 6; sebaliknya OV clear (0).
i bit 7. atau carry out pada bit 7 tapi tidak pada bit 6, selain itu, OV dihapus. Ketika menambahkan signed in
a menambahkan signed integer, OV mengidikasi menghasikan nilai negatif sebagaimana jumlah dari dua ope
mana jumlah dari dua operand positif, atau penjumalahan positif dari dua operand negatif. Mode Addresing y
negatif. Mode Addresing yang diperbolehkan: register, direct, register-indirect, atau immediete.
u immediete.