0
Tải bản đầy đủ (.docx) (74 trang)

TẬP LỆNH CỦA PIC16F877A TRONG NGÔN NGỮ ASM

Một phần của tài liệu ĐỒ ÁN MÔN HỌC DÙNG VI ĐIỀU KHIỂN PIC 16F877A KẾT HỢP VỚI DS1307 ĐỂ ĐIỀU KHIỂN HỆ THỐNG ĐÈN GIAO THÔNG (Trang 73 -74 )

GIỚI THIỆU MẠCH THỰC HIỆN ĐỒ ÁN MÔN HỌC

TẬP LỆNH CỦA PIC16F877A TRONG NGÔN NGỮ ASM

Có tất cả 35 lệnh đối với pic 16f877A, các lệnh đó đươc liệt kê trong bảng sau:

Lệnh Mô tả MCSố Mã máy (14 bit) Ảnh hưởng MSB LSB Các lệnh theo byte ADDWF f, d d w+ f 1 00 0111 dfff ffff C,DC,Z ANDWF f, d dw and f 1 00 0101 dfff ffff Z CLRF f Xóa f 1 00 0001 1fff ffff Z

CLRW Xóa thanh ghi W 1 00 0001 0xxx xxxx Z

COMF f, d d 1 00 1001 dfff ffff Z

DECF f, d df-1 1 00 0011 dfff ffff Z

DECFSZ f, d

ff-1 df

Nếu f=0, lệnh kếliếp được bỏ qua vàø được thay bằng NOP

1(2) 00 1011 dfff ffff

INCF f, d df+1 1 00 1010 dfff ffff Z

INCFSZ f, d

ff+1 df

Nếu f=0, lệnh kế tiếp được bỏ qua vàø được thay bằng lệnh NOP

1(2) 00 1111 dfff ffff

IORWF f, d dw or f 1 00 0100 dfff ffff Z

MOVWF f fw 1 00 0000 1fff 0000 Z

NOP Không làm gì cả, dùng để delay 1 00 0000 0xx0 ffff RLF f, d dquay trái f qua cờ nhớ 1 00 1101 dfff ffff C

RRF f, d dquay phải f qua cờ nhớ 1 00 1100 dfff ffff C

SUBWF f, d dw-f 1 00 0010 dfff ffff C,DC,Z

SWAPF f, d dfbyte sau khi hoán đổi 2 digit của 1 00 1110 dfff ffff XORWF f, d dw xor f 1 00 0110 dfff ffff Z

*Ghi chú: Nếu d là W (hay 0) thì kết quả sẽ được cất trở lại vàøo W. Nếu d là f (hay 1) thì kết quả sẽđược cất trở lại vàøo F

Các lệnh theo bit

BCF f, b Xóa bit b của thanh ghi f về 0 1 01 00bb bfff ffff BSF f, b Set của b của thanh ghi f lên 1 1 01 01bb bfff ffff BTFSC f, b Kiểm tra bit b trong thanh ghi f. Nếu 1(2) 01 10bb bfff ffff

bỏ qua vàø được thay bằng lệnh NOP

BTFSS f, b

Kiểm tra bit b trong thanh ghi f. Nếu bit này bằng 1, lệnh tiếp theo được

bỏ qua vàø được thay bằng lệnh NOP 1(2) 01 11bb bfff ffff

Các lệnh đối với hằng số vàø lệnh điều khiển

ADDLW k ww+k 1 11 111x kkkk kkkk C,DC,Z

ANDLW k ww and k 1 11 1001 kkkk kkkk Z

CALL k Gọi chương trình con có tên là k 2 10 0kkk kkkk kkkk

CLRWDT Xóa Watch Dog Timer 1 00 0000 0110 0100 TO,PD

GOTO k Nhảy đến nhãn k 2 10 1kkk kkkk kkkk IORLW k ww or k 1 11 1000 kkkk kkkk Z

MOVLW k wk 1 11 00xx kkkk kkkk RETFIE Trở về từ chương trình phục vụ ngắt 2 00 0000 0000 1001 RETLW k Trả về với giá trị k trong thanh ghi w 2 11 01xx kkkk kkkk RETURN Trở về từ chương trình con 2 00 0000 0000 1000

SLEEP Chuyển sang Sleep mode 1 00 0000 0110 0011 TO, PD

SUBWF k ww-k 1 11 110x kkkk kkkk C,DC,Z

Một phần của tài liệu ĐỒ ÁN MÔN HỌC DÙNG VI ĐIỀU KHIỂN PIC 16F877A KẾT HỢP VỚI DS1307 ĐỂ ĐIỀU KHIỂN HỆ THỐNG ĐÈN GIAO THÔNG (Trang 73 -74 )

×