Bài giảng Vi xử lý & Vi điều khiển - Chương 2: Họ vi điều khiển 8051 (Lập trình hợp ngữ) - Duy Phan
Mục tiêu
Hiểu được tập lệnh bên trong vđk
8051
Biết được cách sử dụng các lệnh ASM
trên 8051
Biết được cách sử dụng các cấu trúc,
các dữ liệu, hàm ASM
Vận dụng để viết các chương trình
đơn giản trên 8051
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Vi xử lý & Vi điều khiển - Chương 2: Họ vi điều khiển 8051 (Lập trình hợp ngữ) - Duy Phan", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Vi xử lý & Vi điều khiển - Chương 2: Họ vi điều khiển 8051 (Lập trình hợp ngữ) - Duy Phan
09/2015Duy Phan Chương 2: Họ vi điều khiển 8051 (lập trình hợp ngữ) 2 Họ vi điều khiển 8051Duy Phan Mục tiêu Hiểu được tập lệnh bên trong vđk 8051 Biết được cách sử dụng các lệnh ASM trên 8051 Biết được cách sử dụng các cấu trúc, các dữ liệu, hàm ASM Vận dụng để viết các chương trình đơn giản trên 8051 3 Họ vi điều khiển 8051Duy Phan Nội dung Tập lệnh hợp ngữ Cấu trúc chương trình hợp ngữ 4 Họ vi điều khiển 8051Duy Phan Ôn tập chương 2-2 RAM nội được phân chia như thế nào? Tác dụng của các bank thanh ghi, bit nào dùng để chọn bank thanh ghi? Nêu một số thanh ghi có chức năng đặt biệt? Các kiểu định địa chỉ nhớ? 5 Họ vi điều khiển 8051Duy Phan Tập lệnh trong 8051 Cấu trúc chung của lệnh: Mã lê ̣nh Toán hạng 1 Toán hạng 2 Toán hạng 3 Trong đó: Mã lê ̣nh: tên gợi nhớ chức năng của lênh Các toán hạng của lệnh có thể có hoặc không 6 Họ vi điều khiển 8051Duy Phan Tập lệnh trong 8051 (tt) Ví dụ: RET (ko có toán hạng) JZ TEMP (có 1 toán hạng) ADD A, R3 (có 2 toán hạng) CJNE A, #20, LOOP (có 3 toán hạng) 7 Họ vi điều khiển 8051Duy Phan Tập lệnh trong 8051 (tt) Phân loại tập lệnh: Các lê ̣nh toán học Các lê ̣nh logic Các lê ̣nh vận chuyê ̉n dữ liê ̣u Các lê ̣nh thao tác bit Các lệnh đọc cổng Các lệnh điều khiển chương trình 8 Họ vi điều khiển 8051Duy Phan Các lệnh toán học Lệnh Chức năng ADD Lệnh cộng ADDC Lệnh cộng có cờ nhớ SUBB Lệnh trừ INC Tăng 1 DEC Giảm 1 MUL Nhân DA Hiệu chỉnh thập phan DIV Chia 9 Họ vi điều khiển 8051Duy Phan Các lệnh logic Lệnh ChRRức năng ANL Lệnh AND logic ORL Lệnh OR logic XRL Lệnh XOR logic CLR Lệnh xóa logic CPL Lệnh đảo giá trị logic RL Lệnh quay trái RR Lệnh quay phải RLC Lệnh quay trái qua cờ C RRC Lệnh quay phải qua cờ C SWAP Hoán đổi 2 nửa của A 10 Họ vi điều khiển 8051Duy Phan Các lệnh vận chuyển dữ liệu 11 Họ vi điều khiển 8051Duy Phan Các lệnh vận chuyển dữ liệu (tt) 12 Họ vi điều khiển 8051Duy Phan Các lệnh vận chuyển dữ liệu (tt) 13 Họ vi điều khiển 8051Duy Phan Các lệnh thao tác bit Lệnh Chức năng SETB BIT Thiết lập bit = 1 CLR BIT Xóa bit = 0 CPL BIT Bù bit JB BIT, ĐÍCH Nhảy về đích nếu bit = 1 JNB BIT, ĐÍCH Nhảy về đích nếu bit = 0 JBC BIT, ĐÍCH Nhảy về đích nếu bit = 1 và xóa bit 14 Họ vi điều khiển 8051Duy Phan Các lệnh đọc cổng Lệnh Ví dụ Mô tả MOV A, PX MOV A, P2 Chuyển dữ liệu P2 vào ACC JNB PX.Y, ĐÍCH JNB P2.1, ĐÍCH Nhảy tới đích nếu P2.1 = 0 JB PX.Y, ĐÍCH JNB P2.1, ĐÍCH Nhảy tới đích nếu P2.1 = 1 MOV C, PX.Y MOV C, P2.4 Copy trạng thái chân P2.4 vào CY Đọc trạng thái cổng vào 15 Họ vi điều khiển 8051Duy Phan Các lệnh đọc cổng (tt) Đọc chốt trong của cổng ra Lệnh Ví dụ ANL PX ANL P1, A ORL PX ORL P2, A XRL PX XRL P0, A JBC PX.Y, ĐÍCH JBC P1.1, ĐÍCH CPL PX CPL P1.2 INC PX INC P1 DEC PX DEC P2 DJN2 PX DJN2 P1, ĐÍCH MOV PX MOV P1.2, C CLR PX CLR P2.3 SETB PX SETB P2.3 16 Họ vi điều khiển 8051Duy Phan Nhảy có điều kiện Nhảy vô điều kiện Các lệnh gọi Các lệnh điều khiển chương trình 17 Họ vi điều khiển 8051Duy Phan Nhảy có điều kiện Lệnh Hoạt động JZ Nhảy nếu A = 0 JNZ Nhảy nếu A # 0 DJNZ Giảm và nhảy nếu A = 0 CJNE A, byte Nhảy nếu A # byte CJNZ re, #data Nhảy nếu byte = data JC Nhảy nếu CY = 1 JNC Nhảy nếu CY = 0 JB Nhảy nếu bit = 1 JNB Nhảy nếu bit = 0 JBC Nhảy nếu bit = 1 và xóa nó 18 Họ vi điều khiển 8051Duy Phan Nhảy có điều kiện (tt) 19 Họ vi điều khiển 8051Duy Phan Nhảy xa LJMP: Nhảy xa LJMP là một lệnh 3 byte trong đó byte đầu tiên là mã lệnh còn hai byte còn lại là địa chỉ 16 bit của đích. Địa chỉ đích 02 byte có phép một phép nhảy đến bất kỳ vị trí nhớ nào trong khoảng 0000 - FFFFH. Nhảy gần SJMP: Trong 2 byte này thì byte đầu tiên là mã lệnh và byte thứ hai là chỉ tương đối của địa chỉ đích. Đích chỉ tương đối trong phạm vi 00 - FFH được chia thành các lệnh nhảy tới và nhảy lùi: Nghĩa là -128 đến +127 byte của bộ nhớ tương đối so với địa chỉ hiện thời của bộ đếm chương trình. Nếu là lệnh nhảy tới thì địa chỉ đích có thể nằm trong khoảng 127 byte từ giá trị hiện thời của bộ đếm chương trình. Nếu địa chỉ đích ở phía sau thì nó có thể nằm trong khoảng -128 byte từ giá trị hiện hành của PC. Nhảy vô điều kiện 20 Họ vi điều khiển 8051Duy Phan Lệnh gọi xa LCALL: Trong lệnh 3 byte này thì byte đầu tiên là mã lệnh, còn hai byte sau được dùng cho địa chỉ của chương trình con đích.. Lệnh gọi tuyệt đối ACALL (Absolute call): Lệnh ACALL là lệnh 2 byte khác với lệnh LCALL dài 3 byte. Do ACALL chỉ có 2 byte nên địa chỉ đích của chương trình con phải nằm trong khoảng 2k byte địa chỉ vì chỉ có 11bit của 2 byte được sử dụng cho địa chỉ. Các lệnh gọi 21 Họ vi điều khiển 8051Duy Phan Cấu trúc chương trình cho 8051 Các thành phần cơ bản của Assembly Khai báo trong lập trình ASM Cấu trúc một chương trình ASM 22 Họ vi điều khiển 8051Duy Phan Các thành phần cơ bản của ASM Lables: Nhãn – đánh dấu cho một đoạn lê ̣nh Orders: Lê ̣nh Directives: Định hướng cho chương tri ̀nh dịch Comments: các lời chú thích 23 Họ vi điều khiển 8051Duy Phan Các thành phần cơ bản của ASM Mỗi dòng lê ̣nh không quá 255 ký tự Mỗi dòng lệnh phải bắt đầu bằng 1 ký tự, nhãn, lê ̣nh hoặc chỉ thị định hướng Các thành phần của mỗi dòng lê ̣nh cách biê ̣t nhau ít nhất bằng 1 dấu cách Sau “;” là comments 24 Họ vi điều khiển 8051Duy Phan Khai báo biến Khai báo trong lập trình ASM Tên biến DB Gia ́ trị khởi ta ̣o 25 Họ vi điều khiển 8051Duy Phan Khai báo hằng Khai báo trong lập trình ASM (tt) Tên hằng EQU Gia ́ trị 26 Họ vi điều khiển 8051Duy Phan Các toán tử 27 Họ vi điều khiển 8051Duy Phan A-Z, 0-9 ? _ 32 ký tự đê ̉ phân biê ̣t Phải bắt đầu bằng ký tự Không được trùng với các từ khóa Tên PC 28 Họ vi điều khiển 8051Duy Phan Cấu trúc một chương trình ASM PC 29 Họ vi điều khiển 8051Duy Phan Cấu trúc một chương trình ASM (tt) Ví dụ: 30 Họ vi điều khiển 8051Duy Phan Chương trình con 31 Họ vi điều khiển 8051Duy Phan Ôn tập Cấu trúc bên trong RAM Các bank thanh ghi, stack Các thanh ghi chức năng đặt biệt Kết nối ROM, RAM ngoài Các kiểu định địa chỉ 09/2015Duy Phan Kết thúc chương 2-2
File đính kèm:
- bai_giang_vi_xu_ly_vi_dieu_khien_chuong_2_ho_vi_dieu_khien_8.pdf