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

Điều chỉnh thanh gh iA thành số BCD đỳng

Một phần của tài liệu THIẾT KẾ VÀ THI CÔNG MẠCH ĐIỀU KHIỂN THIẾT BỊ BẰNG MÁY VI TÍNH, DÙNG CHUẨN RS485 (Trang 46 -51 )

trong phộp cộng BCD (thường DA A đi kốm với ADD, ADDC).

:(A) â (A) OR (Rn).

:(A) â (A) OR (Rn).

ANL direct, A ANL đirect, # data

ORLL <dest - byte> <src - byte> ORL A, Rn

ORL A, direct : (A) (A) OR (drrect).

:(A) < (A) OR ()).

: (A) — (A) OR # data. : (direct) â— (direct) OR (A). : (direct) (direct) OR # data.

: (A) — (A)e (Rn). : (A) — (A) e (direct).

:(A)< (A)s(@)).

: (A) — (A) s # data. : (direct) â— (direct) e (A). : (directf) <— (direct) e # data.

y=aeb=ab +ab :(A)c0

:(C) <0 : (Bớ) — 0

: Quay vũng thanh ghi A qua trỏi 1 bịt. (An + 1) <— (An); n= 0+6

(Ao)< (A2)

: Quay vũng thanh ghi A qua trỏi l bit cú cờ Carry

(An + 1) — (An); n= 0+6

(C) â (Az) (Aa) < (C)

(Aa) < (C)

: Quay vũng thanh ghi A qua phải 1 bịt. (An + 1) — (An); n= 0+6

(Aa)—> (A7)

ORL A/@

ORL A, # data ORL direct, A

ORL direct, # data

XRL <dest - byte> <src - byfe>

XRL A,Rn XRL A, đirect XRL A,@ Ri XRL A, # data XRL direct, A XRL direct, # data CLR A CLR C CLR Bit RL A RLC A RR A

RRC A : Quay vũng thanh ghi A qua phải l bit cú cờ Carry.

(An + 1) — (An); n= 0+6

(C) —> (A2) (Aa) —> (C)

(Aa) —> (C)

Giới thiệu về cỏc 1C được sử dụng trong mạch


: Đụi chỗ 4 bớt thõp và 4 bớt cao của A cho

nhau (A3+A0)X(A7+A4).

142.3. Cỏc lệnh rẽ nhỏnh.

Cú nhiều lệnh để điều khiển lờn chương trỡnh bao gồm việc gọi hoặc trả lại từ

chương trỡnh con hoặc chia nhỏnh cú điờu kiện hay khụng cú điờu kiện.

Tất cả cỏc lệnh rẽ nhỏnh đều khụng ảnh hưởng đến cờ. Ta cú thể định nhản cần nhảy tới mà khụng cần trỏ địa chỉ, trỡnh biờn dich sẽ được đặt địa chỉ nơi cần nhảy tới vào đỳng khẩu lệnh đó đưa ra.

Sau đõy là sự túm tắt từng hoạt động của lệnh nhảy: JC JNC JB JNB JBC ACALL LCALL RERT

rel : Nhảy đến “rel” nếu cờ Carry C = l. rel : Nhõy đến “rel” nếu cờ Carry C = 0.

bit,rel — : Nhảy đến “rel” nếu (bit) = 1.

bit,rel — : Nhảy nếu “rel” nếu (bit) = 0.

bớt,rel — : Nhảy đến “rel” nếu bit = 1 và xúa bit.

addr1 1 : Lệnh goi tuyệt đối trong page 2K. (PC) — (PC) +2

(SP) (SP)+1 (SP)) — (PC7+PC0) (SP)<(SP)+1 (SP)) — (PC15+PC8)

(PC10+PC0) ôâ page Address.

addr16 : Lệnh gọi dài chương trỡnh con trong 64K.

(PC) (PC) +3 (SP)< (SP) + 1

(SP)< (SP) + 1

((SP)) â (PC7+PC0)

(SP)<— (SP) + I

((SP)) â (PC15:PC8)

(PC) Addr15+Addr0.

: Kết thỳc chương trỡnh con trở về chương trỡnh chớnh.

(PC15+PC8) â (SP) (SP) <â (SP) - I

(SP) <â (SP) - I

Trang 38

(SP) <â (SP) -1.

REN] : Kết thỳc thủ tục phục vụ ngắt quay về chương trỡnh chớnh hoạt động tương tự như RET.

AJMP Addrl1 : Nhảy tuyệt đối khụng điều kiện trong 2 K.

(PC) — (PC) + 2

(PC10+PC0) < page Address.

LIMP Addrl6 : Nhảy dài khụng điều kiện trong 64K.

Hoạt động tương tự lệnh LCALL.

SJMP rel : Nhảy ngắn khụng điều kiện trong (-128+127) byte

- (PC)â(PC)+2

(PC) < (PC) + byte 2

JMP @ A + DPTR : Nhảy khụng điều kiện đến địa chỉ (A) + (DPTR)

(PC) â (A) + (DPTR)

JZ rel : Nhảy đến A=0. Thực hành lệnh kế nếu A z 0.

(PC) — (PC) +2

(A)=0 c (PC) c (PC) + byte 2

JNZ rel : Nhảy đến A + 0. Thực hành lệnh kết nếu A=0. (PC) — (PC) +2

(A)<>0 câ (PC) (PC) + byte 2

CJNE A, đirect, rel : So sỏnh nhảy đến A z direct

(PC) — (PC) + 3

(A)<> (direct) â (PC) <â (PC) + Relative Address.

(A) < (direct) C C = 1 |

(A)> (direct) C =0

(A) = (direct): thực hành lệnh kế tiếp.

CJNE A, # data, rel : Tương Tự lệnh CJNE A, direct, rel. CJNE Rn, # data, rel : Tương tự lệnh CJNE A, direct, rel. CJINE (@ Rị, # data, rel : Tương tự lệnh CJNE A, direct, rel.

DJNE Rhn, rel : Giảm Rn và nhảy nếu Rn z 0.

(PC) (PC) +2

(Rn) ô (Rn) - _.

(Rn) <> 0 â (PC) â (PC) + byte 2.

DJNZ direct, rel : Tương tự lệnh DJNZ Rn, rel.

142.4. Cỏc lệnh dịch chuyển dữ liệu.

Cỏc lệnh dịch chuyển đữ liệu trong những vựng nhớ nội thực thi 1 hoặc 2 chu kỳ mỏy. Mẫu lệnh MOV <destination>, <source> cho phộp di chuyển đữ liệu bất kỳ 2 vựng nhớ nào của RAM nội hoặc cỏc vựng nhớ của thanh ghi chức năng đặc biệt mà khụng thụng qua thanh ghi A.

Vựng Stack của 8051 chỉ chứa 128 byte RAM nội, nếu con trỏ Stack SP được tăng quỏ địa chỉ 7FH thỡ cỏc byte được PUSH vào sẽ mất đi và cỏc byte POP ra thỡ khụng biết rừ.

Cỏc lệnh dịch chuyển bộ nhớ nội và bộ nhớ ngoài dựng sự định vị giỏn tiếp. Địa chỉ giỏn tiếp cú thể dựng địa chỉ 1 byte (@ Ri) hoặc địa chỉ 2 byte (@ DPTR). Tất cả cỏc lệnh dịch chuyền hoạt động trờn toàn bộ nhớ ngoài thực thi trong 2 chu kỳ mỏy và dựng thanh ghi A làm toỏn hạng DESTINATION.

Việc đọc và ghi RAM ngoài (RD và WR) chỉ tớch cực trong suốt quỏ trỡnh thực thi của lệnh MOVX, cũn bỡnh thường RD và WR khụng tớch cực (mức 1).

Tất cả cỏ lệnh dịch chuyển đều khụng ảnh hưởng đến cờ. Hoạt động của từng lệnh được túm tắt như sau:

MOV A,Rn :(A) — (Rn)

MOV A, direct : (A) â (direct)

MOV A,@Ri :(A) â (Œ)))

MOV A, # data :(A) — # data

MOV Rn, A : (Rn) â (A)

MOV Rn, direct : (Rn) â (direct) MOV Rn, # data : (Rn) — # data MOV direct, A : (direct) — (A) MOV đirect, Rn : (direct) — (Rn) MOV direct, direct : (direct) — (direct) MOV direct, (@) Ri : (direct) — ((Ri)) MOV direct, # data : (direct) <— data

MOV @Ri,A :(R)) â (A)

MOV (@ Ri, direct : ((Rj)) â (direct)

Trang 40

MOVX MOVX MOVX MOVX PUSH POP XCH X<XCH XCH XCHD

I4.2.5 Cỏc lệnh luận lý (Boolean Instruction)

I1C89C51 chứa một bộ xử lý luận lý đầy đủ cho cỏc hoạt động bịt đơn, đõy là một điểm mạnh của họ vi điều khiến MSC-51 mà cỏc họ vi xử lý khỏc khụng cú.

RAM nội chứa 128 bớt đơn vị và cỏc vựng nhớ cỏc thanh ghỉ chức năng đặc biệt cấp lờn đến 128 đơn vị khỏc. Tất cả cỏc đường Port là định vị, mỗi đường cú thể được xữ lý như Port đơn vị riờng biệt. Cỏch duy nhất cỏc bit này khụng chỉ cỏc lệnh rẽ nhỏnh khụng, mà là một danh mục đầy đủ cỏc lệnh MOVE, SET, CLEAR,

DPTR, # datalú6 A,@A+DPTR @A +PC

A,@Ri

A, @DPTR

@Ri, A

@ DPTR, A

direct direct A,Rn A, direct A, (@Ri A,@Ri

COMPLEMENT, OR, AND.

Giới thiệu về cỏc 1C được sở dụng trong mạch

: Lấy từ Stack ra direct

:{A) Ä (direct) :(A) í(Œi)

:(A) í(Œi)

: ((R))) â # data : (DPTR) <— # datal6 :(A)<(A)+ (DPTR) : (PC) (PC) + 1

(A)<(A)+(PO)

:(A)< (Rj)

:(A) ((DPTR))

:((R)) â (A)

:((DPTR)) c (A)

Một phần của tài liệu THIẾT KẾ VÀ THI CÔNG MẠCH ĐIỀU KHIỂN THIẾT BỊ BẰNG MÁY VI TÍNH, DÙNG CHUẨN RS485 (Trang 46 -51 )

×