ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển MỤC LỤC Trang Lời giới thiệu 2 Phần 1.
Bài tập căn bản 1. Nhóm lệnh di chuyển dữ liệu. 3
Bài tập 1.1 . 1.3 3
Bài tập 1.4 . 1.8 4
Bài tập 1.9 5 2. Nhóm lệnh tính toán số học. 5
Bài tập 2.1 . 2.4 5
Bài tập 2.5 . 2.9 6 3. Nhóm lệnh tính toán logic. 6
Bài tập 3.1 . 3.7 7
Bài tập 3.8 . 3.10 8 4. Nhóm lệnh rẽ nhánh chương trình. 8
Bài tập 4.1 . 4.3 8
Bài tập 4.4 . 4.8 9
Bài tập 4.9 . 4.12 10
Bài tập 4.13 . 4.14 11 5. Nhóm lệnh
điều khiển biến logic. 11
Bài tập 5.1 . 5.4 11 Phần 2.
Bài tập ứng dụng cơ bản 12
Bài tập 1 . 5 12
Bài tập 6 .15 13 Tài liệu tham khảo. 14 Bạch Hưng Trường 06-10-2003 1 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển LỜI GIỚI THIỆU Quyển
bài tập kỹ thuật Vi điều khiển này được biên soạn nhằm phục vụ cho việc giảng dạy bộ môn
Vi điều khiển tại trường Đại học SPKT Hưng yên. Hệ thống các
bài tập ở quyển sách này đã được tác giả biên soạn, tổng hợp sao cho phù hợp với nội dung đào tạo và giáo trình
kỹ thuật Vi điều khiển.
Vì vậy, khi giảng dạy môn này giáo viên cần liên hệ các
bài tập cụ thể để áp dụng cho phù hợp với từng nội dung
bài giảng. Mặc dầu đã rất cố gắng trong quá trình biên soạn nhưng do trình độ và thời gian còn bị hạn chế nên chắc chắn quyển sách này không tránh khỏi những thiếu sót, rất mong nhận được những ý kiến phê bình, đóng góp của bạn đọc. Hưng yên, tháng 10 năm 2003 Tác giả Bạch Hưng Trường 06-10-2003 2 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển PHẦN 1:
BÀI TẬP CĂN BẢN 1. NHÓM LỆNH DI CHUYỂN DỮ LIỆU :
BÀI TẬP 1.1: DỮ KIỆN YÊU CẦU - (30h) ở RAM nội = 40h. - (40h) ở RAM nội = 10h. - Chuyển nội dung tại
vị trí 30h ở RAM nội vào R1 và A. - Chuyển nội dung tại
vị trí 40h ở RAM nội vào B. - Chuyển nội dung 0CAh vào
vị trí 40h ở RAM nội và cổng P2. - Xác định giá trị của các thanh ghi R1, A, B, và nội dung của RAM nội tai các
vị trí trên (bảng Main Registers). - Xuất dữ liệu của A và B ra cổng P1 và P3.
BÀI TẬP 1.2: DỮ KIỆN YÊU CẦU - (C) = 1; (P2) = 0C5h - (P1) = 35h Xác định nội dung mới của P1 sau khi thực hiện các lệnh sau: MOV P1.3, C MOV C, P2.3 MOV P1.2, C
BÀI TẬP 1.3: DỮ KIỆN YÊU CẦU - (R0) = 11h; (R1) = 23h - (11h) ở RAM ngoài = 55h - Sao chép nội dung tại
vị trí 11h ở RAM ngoài vào A. - Sao chép nội dung 55h vào
vị trí 23h của RAM ngoài. - Xuất dữ liệu của A ra cổng P0 bằng phương pháp định địa chỉ trực tiếp. Bạch Hưng Trường 06-10-2003 3 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển BÀI TẬP 1.4: DỮ KIỆN YÊU CẦU (SP) = 05h; (DPTR) = 1123h Lưu nội dung 23h và 11h vào
vị trí 06h và 07h của ngăn xếp ở RAM nội. Xác định nội dung mới của SP.
BÀI TẬP 1.5: DỮ KIỆN YÊU CẦU - (SP) = 32h - (30h), (31h) và (32h) ở RAM nội = 10h, 11h và 12h Xác định nội dung mới của DPTR và SP sau khi thực hiện các lệnh sau: POP DPH POP DPL
BÀI TẬP 1.6: DỮ KIỆN YÊU CẦU - (R1) = 30h; (A) = 0FFh - (30h) ở RAM nội = 0Fh - Hoán chuyển (A) và (30h) ở RAM nội. - Xác định nội dung mới của A và (30h). - Xuất (A) và (30h) ở RAM nội ra P1 và P3.
BÀI TẬP 1.7: DỮ KIỆN YÊU CẦU - (R1) = 20h; (A) = 10001100b - (20h) ở RAM nội = 11100001b - Xác định (A), (20h) ở RAM nội sau khi thực hiện lệnh: XCHD A, @R1 - Xuất (A) và (20h) ở RAM nội ra P0 và P2.
BÀI TẬP 1.8: (2A), (2B), (2C), (2D) và (2E) ở RAM nội là: 00h, 12h, 34h, 56h và 78h. Hãy xác định nội dung của bảng số liệu sau đây theo từng lệnh cho trước. (2A) (2B) (2C) (2D) (2E) (ACC) MOV A, 2Eh MOV 2Eh, 2Dh MOV 2Dh, 2Ch Bạch Hưng Trường 06-10-2003 4 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển MOV 2Ch, 2Bh MOV 2Bh, #0
BÀI TẬP 1.9: (2A), (2B), (2C), (2D) và (2E) ở RAM nội là: 00h, 12h, 34h, 56h và 78h. Hãy xác định nội dung của bảng số liệu sau đây theo từng lệnh cho trước. (2A) (2B) (2C) (2D) (2E) (ACC) CLR A XCH A, 2Bh XCH A, 2Ch XCH A, 2Dh XCH A, 2Eh 2. NHÓM LỆNH TÍNH TOÁN SỐ HỌC
BÀI TẬP 2.1: DỮ KIỆN YÊU CẦU - (A) = 0C3h - (R1) = 0AAh Xác định nội dung của A, AC, CF, OV sau khi thực hiện lệnh: ADD A, R1
BÀI TẬP 2.2: DỮ KIỆN YÊU CẦU - (A) = 0C3h - (R1) = 0AAh Xác định nội dung của A, AC, CF, OV sau khi thực hiện lệnh: ADDC A, R1
BÀI TẬP 2.3: DỮ KIỆN YÊU CẦU (A) = 0C9h, (R2) = 54h Xác định nội dung của A, AC, CF, OV sau khi thực hiện lệnh: SUBB A, R2
BÀI TẬP 2.4: DỮ KIỆN YÊU CẦU (R0) = 7Eh. Xác định lại: (R0); (7Eh) và (7Fh) ở Bạch Hưng Trường 06-10-2003 5 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển (7Eh) và (7Fh) ở RAM nội = 0FFh và 40h RAM nội sau khi thực hiện các lệnh: INC @R0 INC R0 INC @R0
BÀI TẬP 2.5: DỮ KIỆN YÊU CẦU (R0) = 7Fh. (7Eh) và (7Fh) ở RAM nội = 00h và 40h Xác định lại: (R0); (7Eh) và (7Fh) ở RAM nội sau khi thực hiện các lệnh: DEC @R0 DEC R0 DEC @R0
BÀI TẬP 2.6: DỮ KIỆN YÊU CẦU (DPTR) = 12FEh Xác định lại (DPTR) sau khi thực hiện các lệnh: INC DPTR INC DPTR INC DPTR
BÀI TẬP 2.7: DỮ KIỆN YÊU CẦU (A) = 50h, (B) = 0A0h Xác định kết quả và (A), (B), (CF), (OV) sau khi thực hiện lệnh: MUL AB
BÀI TẬP 2.8: DỮ KIỆN YÊU CẦU (A) = 0FBh, (B) = 12h Xác định kết quả và (A), (B), (CF), (OV) sau khi thực hiện lệnh: DIV AB
BÀI TẬP 2.9: DỮ KIỆN YÊU CẦU (A) = 56h, (R2) = 67h, (CF) = 1 Xác định (A) sau khi thực hiện các lệnh: ADDC A,R2 DA A 3. NHÓM LỆNH TÍNH TOÁN LOGIC Bạch Hưng Trường 06-10-2003 6 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển BÀI TẬP 3.1: DỮ KIỆN YÊU CẦU (A) = 0C3H, (R0) = 55h Sau khi thực hiện lệnh: ANL A, R0 (A)= ?
BÀI TẬP 3.2: DỮ KIỆN YÊU CẦU P1.0=1, ACC.7=1 và OV=0 Hãy thiết lập cờ nhớ bằng lệnh ANL
BÀI TẬP 3.3: DỮ KIỆN YÊU CẦU (A) = 0C3H, (R0) = 55h Sau khi thực hiện lệnh: ORL A, R0 (A) = ?
BÀI TẬP 3.4: DỮ KIỆN YÊU CẦU P1.0=1, ACC.7=1 và OV=0 Hãy thiết lập cờ nhớ bằng lệnh ORL
BÀI TẬP 3.5: DỮ KIỆN YÊU CẦU (A) = 0C3H, (R0) = 0AAh Sau khi thực hiện lệnh: XRL A, R0 (A) = ?
BÀI TẬP 3.6: DỮ KIỆN YÊU CẦU (A) = 0C5h. Sau khi thực hiện lệnh: RL A (A) = ?
BÀI TẬP 3.7: DỮ KIỆN YÊU CẦU (A) = 0C5h, (C) = 0. Sau khi thực hiện lệnh: RLC A Bạch Hưng Trường 06-10-2003 7 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển (A) =?, (C) =?
BÀI TẬP 3.8: DỮ KIỆN YÊU CẦU (A) = 0C5h. Sau khi thực hiện lệnh: RR A (A) =?
BÀI TẬP 3.9: DỮ KIỆN YÊU CẦU (A) = 0C5h, (C) = 0. Sau khi thực hiện lệnh: RRC A (A) =?, (C) =?
BÀI TẬP 3.10: DỮ KIỆN YÊU CẦU (A) = 0C5h Sau khi thực hiện lệnh: SWAP A (A) =? 4. NHÓM LỆNH RẼ NHÁNH CHƯƠNG TRÌNH
BÀI TẬP 4.1: DỮ KIỆN YÊU CẦU (SP) = 07h. Nhãn CT_CON được đặt tại
vị trí 0345h trong bộ nhớ chương trình. Sau khi thực hiện lệnh ACALL CT_CON tại
vị trí 0123h thì : (SP), (08h), (09h) và (PC) = ?
BÀI TẬP 4.2: DỮ KIỆN YÊU CẦU (SP) = 07h. Nhãn CT_CON được đặt tại
vị trí 1234h trong bộ nhớ chương trình. Sau khi thực hiện lệnh LCALL CT_CON tại
vị trí 0123h thì: (SP), (08h), (09h) và (PC) =?
BÀI TẬP 4.3: DỮ KIỆN YÊU CẦU Bạch Hưng Trường 06-10-2003 8 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển (SP) = 0Bh. (0Ah) và (0Bh) trong RAM nội = 23h và 01h. -Xác định (SP) sau khi thực hiện lệnh RET - XĐ địa chỉ tiếp theo của chương trình.
BÀI TẬP 4.4: DỮ KIỆN YÊU CẦU (SP) = 0Bh. (0Ah) và (0Bh) trong RAM nội = 23h và 01h. Một ngắt được phát hiện trong khi lệnh ở địa chỉ 0123h đang thực thi. -Xác định (SP) sau khi thực hiện lệnh RETI - XĐ địa chỉ tiếp theo của chương trình.
BÀI TẬP 4.5: DỮ KIỆN YÊU CẦU (P1) = 0CAh. (A) = 56h. Xác định địa chỉ rẽ nhánh của chương trình, khi thực hiện các lệnh: JB P1.2, Label1 JB ACC.2, Lable2
BÀI TẬP 4.6: DỮ KIỆN YÊU CẦU (P1) = 0CAh. (A) = 56h. Xác định địa chỉ rẽ nhánh của chương trình, khi thực hiện các lệnh: JNB P1.3, Label1 JNB ACC.3, Lable2
BÀI TẬP 4.7: DỮ KIỆN YÊU CẦU (A) = 56h Xác định địa chỉ rẽ nhánh của chương trình và nội dung mới của A, khi thực hiện các lệnh: JBC ACC.3, Label1 JBC ACC.2, Lable2
BÀI TẬP 4.8: DỮ KIỆN YÊU CẦU (C) = 0 Xác định địa chỉ rẽ nhánh của chương Bạch Hưng Trường 06-10-2003 9 ĐẠI HỌC SPKT HƯNG YÊN
Bài tập:
Kỹ thuật Vi Điều Khiển trình và nội dung mới của C, khi thực hiện các lệnh: JC Label1 CPL C JC Lable2
BÀI TẬP 4.9: DỮ KIỆN YÊU CẦU (C) = 1. Xác định địa chỉ rẽ nhánh của chương trình và nội dung mới của C, khi thực hiện các lệnh: JNC Label1 CPL C JNC Lable2
BÀI TẬP 4.10: DỮ KIỆN YÊU CẦU (A) = 01h. Xác định địa chỉ rẽ nhánh của chương trình và nội dung mới của A, khi thực hiện các lệnh: JZ Label1 DEC A JZ Lable2
BÀI TẬP 4.11: DỮ KIỆN YÊU CẦU (A) = 00h. Xác định địa chỉ rẽ nhánh của chương trình và nội dung mới của A, khi thực hiện các lệnh: JNZ Label1 INC A JNZ Lable2
BÀI TẬP 4.12: DỮ KIỆN YÊU CẦU (40h), (50h) và (60h) ở RAM nội = 01h, 70h và 15h. Xác định địa chỉ rẽ nhánh của chương trình và nội dung mới tại các
vị trí 40h, 50h và 60h ở RAM nội, khi thực hiện các lệnh: Bạch Hưng Trường 06-10-2003 10 [...]... lại nhiều lần
BÀI TẬP 5 :
Vi t chương trình
đìêu khiển LED 7 thanh hiển thị theo sơ đồ khối sau: 12 Bạch Hưng Trường 06-10-2003
Bài tập:
Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN
Khiển Start Đếm tiến Đếm lùi
BÀI TẬP 6 :
Vi t chương trình
đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT0=0 thì hiển thị số 0, - Nếu INT0=1 thì hiển thị số 1
BÀI TẬP 7 :
Vi t chương trình
đìêu khiển LED 7 thanh... LỆNH
ĐIỀU KHIỂN BIẾN LOGIC
BÀI TẬP 5.1: DỮ KIỆN (P1) = 5Dh YÊU CẦU Thực hiện lệnh xoá bit để có (P1) = 59h
BÀI TẬP 5.2: DỮ KIỆN (C) = 0, (P1) = 34h YÊU CẦU Sử dụng lệnh thiết lập bit để có: (P1) = 35h, và (C) = 1
BÀI TẬP 5.3: DỮ KIỆN YÊU CẦU Cổng P1 vừa được ghi nội Sử dụng lệnh lấy bù bit để có: (P1) = dung 5Bh 5Dh Bạch Hưng Trường 11 06-10-2003
Bài tập:
Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN
Khiển BÀI... Hz tại bit 0 của cổng P1 Bạch Hưng Trường 13 06-10-2003
Bài tập:
Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN
Khiển BÀI TẬP 13:
Vi t chương trình tạo tín hiệu âm thanh với tần số 500 Hz tại bit 0 của cổng P1, có giới hạn về mặt thời gian: âm thanh kéo dài 5 s sau đó tắt
BÀI TẬP 14:
Vi t chương trình để VXL thực hiện chức năng biến đổi A/D
BÀI TẬP 15:
Vi t chương trình để VXL thực hiện chức năng biến đổi D/A.. .Bài tập:
Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN
Khiển DJNZ 40h, Label1 DJNZ 50h, Label2 DJNZ 60h, Label3
BÀI TẬP 4.13: DỮ KIỆN Sử dụng các lệnh: MOV CPL DJNZ YÊU CẦU
Vi t chương trình tạo ra 4 xung xuất hiện ở bit 7 của cổng P1 Mỗi một xung chiếm 3 chu
kỳ máy
BÀI TẬP 4.14: DỮ KIỆN YÊU CẦU Sử dụng các lệnh SETB, CLR
Vi t chương trình tạo ra một xung có và NOP... hiện xong
vi c gọi bảng số liệu
BÀI TẬP 10 :
Vi t chương trình
đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT1=0 thì hiển thị, INT1=1 thì dừng - Nếu INT0=0 thì đếm lùi, INT0=1 thì đếm tiến - Chỉ thay đổi khi thực hiện xong
vi c gọi bảng số liệu
BÀI TẬP 11:
Vi t chương trình nạp giá trị hằng số (1) vào RAM ngoài tại vùng nhớ được định địa chỉ từ 1000h đến 10FFh
BÀI TẬP 12:
Vi t chương... hàm Wait với thời gian chính xác 1 s
BÀI TẬP 2 :
Vi t chương trình
đìêu khiển hệ thống quảng cáo điện tử chạy tự động với nhiều chế độ hiển thị khác nhau
BÀI TẬP 3 :
Vi t chương trình
đìêu khiển hệ thống quảng cáo điện tử hiển thị bán tự động với nhiều chế độ khác nhau (cho phép người sử dụng lựa chọn các chế độ hiển thị khác nhau)
BÀI TẬP 4 :
Vi t chương trình
đìêu khiển hiển thị LED 7 thanh (đếm tiến... INT0=1 thì hiển thị số 1 - Nếu INT1=0 thì hiển thị, INT1=1 thì không hiển thị
BÀI TẬP 8 :
Vi t chương trình
đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT1=0 thì hiển thị, INT1=1 thì không hiển thị - Nếu INT0=0 thì hiển thị số 0 nhấp nháy, INT0=1 thì hiển thị số 1 nhấp nháy
BÀI TẬP 9 :
Vi t chương trình
đìêu khiển LED 7 thanh hiển thị theo các yêu cầu sau: - Nếu INT1=0 thì hiển thị,... dung 5Bh 5Dh Bạch Hưng Trường 11 06-10-2003
Bài tập:
Kỹ thuật Vi Điều ĐẠI HỌC SPKT HƯNG YÊN
Khiển BÀI TẬP 5.4: DỮ KIỆN YÊU CẦU Sau khi thực hiện xong lệnh: CPL A (A) = 0A3h Xác định nội dung ban đầu của A PHẦN 2:
BÀI TẬP ỨNG DỤNG CƠ BẢN
BÀI TẬP 1 : Kiểm tra cổng vào/ ra của
Vi xử lý On-chip 8 bit Yêu cầu:
Vi t chương trình xuất dữ liệu ra cổng P1 theo bảng số liệu sau: P1 11111110 11111100 11111000 11110000... Microcomputer Components – SAB80C515 8 bit Single-chip Microcontroller Family - SIEMENS - 1995 Mikrocomputertechnik – Prof.Dr.Ing G.Schnell – Fachhochschule Frankfurt am Main - 2001
Kỹ thuật Vi xử lý - Văn Thế Minh - NXB GD - 1997
Kỹ thuật VXL & lập trình ASSEMBLY cho hệ VXL - Đỗ Xuân Tiến – NXB KH&KT - 2001 Họ VĐK 8051 - Tống Văn On & Hoàng Đức Hải - NXB LĐXH - 2001 Bạch Hưng Trường 14 06-10-2003 . tập: Kỹ thuật Vi Điều Khiển LỜI GIỚI THIỆU Quyển bài tập kỹ thuật Vi điều khiển này được biên soạn nhằm phục vụ cho vi c giảng dạy bộ môn Vi điều khiển tại. YÊN Bài tập: Kỹ thuật Vi Điều Khiển MỤC LỤC Trang Lời giới thiệu 2 Phần 1. Bài tập căn bản 1. Nhóm lệnh di chuyển dữ liệu. 3 Bài tập 1.1 . 1.3 3 Bài tập