Tải bản đầy đủ (.pdf) (33 trang)

Bài giảng vi điều khiển bài số 3

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (412.27 KB, 33 trang )

T p l nh MCS-51
Nguy n Qu c C
B môn 3i –

ng

HBKHN

1
T p l nh MCS-51
Nguy n Qu c C

ng

Gi i thi u






L nh c a 8051 đ c thi t k v i opcode 8 bit å có kh
n ng mã hóa 256 l nh khác nhau
Th c t có 255 l nh (v i m t t h p không đ
ngh a):

c đ nh

Ngoài opcode m t l nh có th có thêm 1 ho c 2 byte đ mã
hóa ch đ đ a ch :



139 l nh 1 byte



92 l nh 2 byte



24 l nh 3 byte

2
T p l nh MCS-51
Nguy n Qu c C

ng


Các ch đ đ a ch


Cho phép xác đ nh n i c t gi



Co 6 ch đ đ a ch trong MCS-51


Tr c ti p




Gián ti p



T c thì



Thanh ghi



Thanh ghi đ nh tr



Ch s

“data” c a l nh

c

3
T p l nh MCS-51
Nguy n Qu c C

ng


Ch đ đ a ch tr c ti p





Direct addressing
a ch c a toán h ng đ
ch c a code l nh

c ch ra b i 8 bit trong tr

ng đ a

Áp d ng cho


Internal RAM



SFRs

4
T p l nh MCS-51
Nguy n Qu c C

ng



Ch đ đ a ch gián ti p


Indirect addressing



L nh ch ra m t thanh ghi có ch a đ a ch c a toán h ng



Các thanh ghi s





R0 và R1



SP



DPTR

d ng trong ch đ đ a ch gián ti p:

Áp d ng cho:



Internal RAM



External data memory

5
T p l nh MCS-51
Nguy n Qu c C

ng

Ch đ thanh ghi


Register addressing



M t s l nh có toán h ng là các thanh ghi



Các thanh ghi R0 và R7 đ c mã hóa b i 3 bit trong tr ng
opcode (thay vì ph i mã hóa 8 bit trong tr ng đ a ch )

6
T p l nh MCS-51

Nguy n Qu c C

ng


Ch đ thanh ghi đ nh tr


c

M t s l nh đ c thi t k ch ho t đ ng v i m t thanh ghi
đ nh tr c å không c n tr ng đ a ch đ mã hóa toán
h ng

7
T p l nh MCS-51
Nguy n Qu c C

ng

Ch đ đ a ch t c thì



Immediate addressing
Giá tr c a toán h ng là m t h ng s và đ
trong tr ng đ a ch

c ch ngay


8
T p l nh MCS-51
Nguy n Qu c C

ng


Ch đ đ a ch ch s







Indexed addressing
a ch c a toán h ng đ c ch ra nh s d ng m t thanh
ghi làm đ a ch g c và m t thanh ghi đ ch đ l ch
Các thanh ghi s


DPTR



PC



A


d ng

Ch áp d ng cho các l nh thao tác trên vùng nh code

9
T p l nh MCS-51
Nguy n Qu c C

ng

T p l nh MCS-51


Có các ki u l nh


S h c



Logic



Thao tác trên bit



Truy n s li u




R nhánh ch

ng trình

10
T p l nh MCS-51
Nguy n Qu c C

ng


Các l nh s h c


C ng: ADD và ADDC



Tr



Nhân : MUL



Chia : DIV




T ng : INC



Gi m : DEC

: SUBB

11
T p l nh MCS-51
Nguy n Qu c C

ng

ADD


C ng A v i m t toán h ng, k t qu c t tr l i A



Có tác đ ng đ n c : CY, AC, OV



L nh c ng s






Thanh ghi



Tr c ti p



Gián ti p



T c thì

d ng 4 ch đ đ a ch cho toán h ng

Syntax
ADD A, <src-byte>

12
T p l nh MCS-51
Nguy n Qu c C

ng



Ví d :

ADD
ADD

A, R2
A, 3Fh

;c ng A v i thanh ghi R2, k t qu c t tr l i A
;c ng A v i ô nh có đ a ch 3Fh, k t qu c t tr l i A
13

T p l nh MCS-51
Nguy n Qu c C

Ví d :

ng

ADD
ADD

A, @R2 ;c ng A v i ô nh có đ a ch b ng giá tr c t trong thanh
; ghi R2, k t qu c t tr l i A
A, # 3Fh ;c ng A v i h ng s 3Fh, k t qu c t tr l i A
14

T p l nh MCS-51
Nguy n Qu c C


ng


ADDC


C ng có nh : C ng A v i m t toán h ng và v i c c nh
Carry, k t qu c t vào A



Có tác đ ng đ n c : CY, AC, OV



L nh c ng s





Thanh ghi



Tr c ti p



Gián ti p




T c thì

d ng 4 ch đ đ a ch cho toán h ng

Syntax
ADDC A, <src-byte>

15
T p l nh MCS-51
Nguy n Qu c C

ng

16
T p l nh MCS-51
Nguy n Qu c C

ng


17
T p l nh MCS-51
Nguy n Qu c C

ng

MUL AB



Nhân A v i B



K t qu c t vào 2 thanh ghi A và B





A ch a byte tr ng s th p



B ch a byte có tr ng s cao

Tác đ ng đ n c OV và CY (=0)

18
T p l nh MCS-51
Nguy n Qu c C

ng


DIV AB



Chia 2 s không d u 8 bit



L y A chia cho B



K t qu :





Th

ng s c t



S d

c t

A

B

Syntax:
DIV AB


19
T p l nh MCS-51
Nguy n Qu c C

ng

INC


L nh t ng toán h ng lên 1



N u giá tr tr



Không tác đ ng đ n c



Ch đ đ a ch c a toán h ng:



c khi t ng là FF thì sau khi t ng s là 00




Thanh ghi đ nh ngh a tr



Thanh ghi (R0 – R7)



Tr c ti p



Gián ti p

c (thanh ghi A)

Syntax:
INC <byte>

20
T p l nh MCS-51
Nguy n Qu c C

ng


21
T p l nh MCS-51
Nguy n Qu c C


ng

22
T p l nh MCS-51
Nguy n Qu c C

ng


INC DPTR


T ng n i dung c a thanh ghi 16 bit DPTR lên 1



Không tác đ ng đ n c



Syntax:
INC DPTR

23
T p l nh MCS-51
Nguy n Qu c C

ng

Các l nh logic



AND, OR, Exclusive-OR (XOR), Bù



Quay trái, ph i

24
T p l nh MCS-51
Nguy n Qu c C

ng


ANL


Th c hi n phép AND logic



Không tác đ ng đ n c



Syntax:
AND <dest-byte>,<src-byte>

25

T p l nh MCS-51
Nguy n Qu c C

ng

26
T p l nh MCS-51
Nguy n Qu c C

ng


(direct) ä (direct)

(A)

27
T p l nh MCS-51
Nguy n Qu c C

ng

RL A


Quay trái thanh ghi A:


Các bit d ch qua trái 1 bit




Bit 7 s đ

c đ a v bit 0



Không tác đ ng đ n c



Syntax
RL A

28
T p l nh MCS-51
Nguy n Qu c C

ng


RLC A


Quay trái thanh ghi A qua Carry:
0 đ n 6 s d ch qua trái




N i dung các bit t



C Carry s chuy n vào v trí bit 0



Bit 7 d ch vào Carry



Không tác đ ng đ n c (ngo i tr



Syntax:

Carry)

RLC A

29
T p l nh MCS-51
Nguy n Qu c C

ng

Các l nh chuy n s li u



Chuy n s li u v i internal RAM: MOV, XCH, XCHD



Chuy n s li u v i external RAM: MOVX




c s li u t

b nh ch

ng trình:MOVC

Truy c p ng n x p: PUSH, POP

30
T p l nh MCS-51
Nguy n Qu c C

ng


MOV


S li u c a toán h ng ngu n đ


c copy vào toán h ng đích



N i dung c a toán h ng ngu n không thay đ i



Không tác đ ng đ n c



Syntax:
MOV <dest-byte>,<src-byte>

31
T p l nh MCS-51
Nguy n Qu c C

ng

32
T p l nh MCS-51
Nguy n Qu c C

ng


33
T p l nh MCS-51

Nguy n Qu c C

ng

34
T p l nh MCS-51
Nguy n Qu c C

ng


35
T p l nh MCS-51
Nguy n Qu c C

ng

36
T p l nh MCS-51
Nguy n Qu c C

ng


MOVX


Chuy n s li u gi a thanh ghi A và m t ô nh extarnal data
memory




Không tác đ ng đ n c



Syntax:
MOVX <dest-byte>,<src-byte>

37
T p l nh MCS-51
Nguy n Qu c C

ng

38
T p l nh MCS-51
Nguy n Qu c C

ng


39
T p l nh MCS-51
Nguy n Qu c C

ng

MOVC



c m t byte t

b nh code vào thanh ghi A



Không tác đ ng đ n c



Syntax:
MOVC A,@A+<base-reg>

40
T p l nh MCS-51
Nguy n Qu c C

ng


41
T p l nh MCS-51
Nguy n Qu c C

ng

PUSH



C t m t byte vào ô nh ng n x p



Không tác đ ng đ n c



Syntax:
PUSH direct

42
T p l nh MCS-51
Nguy n Qu c C

ng


POP


L y m t byte t

ng n x p



Không tác đ ng đ n c




Syntax:
POP direct

43
T p l nh MCS-51
Nguy n Qu c C

ng

Các l nh thao tác trên bit


Xóa, thi t l p bit: CLR, SET



Logic: ANL, ORL, CPL (bù)



Copy bit: MOV

44
T p l nh MCS-51
Nguy n Qu c C

ng



CLR


Xóa m t bit (=0)





trong các thanh ghi có th truy c p đ n t ng bit
ho c các ô nh đánh đ a ch theo bit (ô nh 20h đ n 2fh c a
internal RAM)

Syntax
CLR bit

45
T p l nh MCS-51
Nguy n Qu c C

ng

46
T p l nh MCS-51
Nguy n Qu c C

ng


SET



Thi t l p bit (=1):





trong các thanh ghi có th truy c p đ n t ng bit
ho c các ô nh đánh đ a ch theo bit (ô nh 20h đ n 2fh c a
internal RAM)

Syntax
SET bit

47
T p l nh MCS-51
Nguy n Qu c C

ng

48
T p l nh MCS-51
Nguy n Qu c C

ng


MOV



Copy n i dung m t bit:


M t trong 2 toán h ng ph i là c Carry



Toán h ng còn l i là các bit c a các thanh ghi ho vùng nh có
th truy c p đ n bit



Syntax



MOV <dest-bit>,<src-bit>

49
T p l nh MCS-51
Nguy n Qu c C

ng

MOV
MOV

Ví d :


P1.3,C
C, P0.1
50

T p l nh MCS-51
Nguy n Qu c C

ng


×