
ĐƠN VỊ: KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN: ĐIỆN TỰ ĐỘNG CÔNG NGHIỆP
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
---------------
Hải Phòng, ngày .... tháng .... năm 2025
ĐỀ CƯƠNG ÔN TẬP
HỌC PHẦN KỸ THUẬT VI ĐIỀU KHIỂN, MÃ 13305
Đề thi tự luận gồm 4 câu từ 3 gói câu hỏi theo tỷ lệ 2:1:1, thời gian làm bài 75 phút,
sinh viên được sử dụng giáo trình khi thi
I. Gói câu hỏi thi “I”
1.1. Gói câu 2,0 điểm (10 phút)
Câu 1: Anh (chị) hãy trả lời các câu hỏi sau:
a. Xác định bít và thanh ghi nào để kích hoạt Timer chạy/dừng?
b. Chỉ ra lệnh khởi tạo ngăn xếp có kích thước 16 bytes?
c. Cho P1=12H, nhận biết xem nhãn NEXT có được gọi không với câu lệnh JNB P1.0, NEXT?
d. Chỉ ra ý nghĩa và sự khác nhau khi nạp TMOD giá trị 50H, 05H?
Câu 2: Anh (chị) hãy trả lời các câu hỏi sau:
a. Chỉ ra các loại Bus trong hệ thống vi xử lý, bus dữ liệu (data bus) có chức năng gì?
b. Xác định vùng RAM có địa chỉ từ 00H đến 2FH được tổ chức như thế nào?
c. Xác định tốc độ truyền thông nối tiếp được tạo ra như thế nào?
d. Chỉ ra lệnh khởi tạo ngăn xếp có kích thước 8 bytes?
Câu 3: Anh (chị) hãy trả lời các câu hỏi sau:
a. Chỉ ra các loại Bus trong hệ thống vi xử lý, bus địa chỉ (address bus) có chức năng gì?
b. Xác định ROM của 8051 có bao nhiêu bytes, địa chỉ thấp nhất, địa chỉ cao nhất là gì?
c. Xác định vai trò của bit TI trong truyền thông nối tiếp với 8051?
d. Chỉ ra lệnh lấy dữ liệu khỏi ngăn xếp lưu vào thanh ghi R1 Bank 1?
Câu 4: Anh (chị) hãy trả lời các câu hỏi sau:
a. Chỉ ra sự khác nhau cơ bản giữa vi điều khiển 8051 – 8052?
b.
Chỉ ra
yêu cầu Timer hoạt động với mục đích tạo thời gian trễ thì tác động vào bit nào
của thanh ghi nào?

c. Cho R0=1,
nhận biết xem
nhãn AGAIN có được gọi không với câu lệnh DJNZ R0, AGAIN?
d. Nếu giá trị nạp cho TH0 – TL0 là FFFAH,
xác định xem
sau bao nhiêu xung thì TF0=1?
Câu 5: Anh (chị) hãy trả lời các câu hỏi sau:
a. Chỉ ra tài nguyên bộ định thời (timer) của vi điều khiển 8051?
b. Chỉ ra vai trò của thanh ghi SBUF trong truyền thông nối tiếp với 8051?
c. Cho A=0, nhận biết nhãn NEXT có được gọi không với câu lệnh JNZ NEXT?
d. Chỉ ra ý nghĩa và sự khác nhau khi nạp TMOD giá trị 90H, 09H?
Câu 6: Anh (chị) hãy trả lời các câu hỏi sau:
a. Chỉ ra VĐK 8051 có mấy bank thanh ghi, bank thanh ghi mặc định sau khi reset có địa
chỉ bắt đầu là bao nhiêu?
b. Cho A=0FH, nhận biết xem nhãn NEXT có được gọi không với câu lệnh JZ NEXT?
c. Chỉ ra ý nghĩa và sự khác nhau khi nạp TMOD giá trị 10H, 01H?
d. Nếu thạch anh sử dụng có tần số 12MHz, xác định xem 1 chu kỳ máy kéo dài bao nhiêu
lâu, chỉ ra thời gian thực hiện lệnh MOV 30H, R0?
Câu 7: Anh (chị) hãy trả lời các câu hỏi sau:
a. Nhận biết vai trò của thanh ghi SCON trong truyền thông nối tiếp với 8051?
b. Chỉ ra lệnh lưu thanh ghi R1 Bank 1 vào ngăn xếp?
c. Lấy ví dụ để Nhãn NEXT phải được gọi khi giá trị trong A<10, viết lệnh thực hiện?
d. Nếu thạch anh sử dụng có tần số 12MHz thì 1 chu kỳ máy kéo dài bao nhiêu lâu, tìm thời
gian thực hiện lệnh MOV 30H, #30H?
Câu 8: Anh (chị) hãy trả lời các câu hỏi sau:
a. Chỉ ra tài nguyên bộ nhớ (RAM,ROM) của vi điều khiển 8051?
b. Chỉ ra xem Timer được sử dụng vào 2 mục đích nào? Kể tên các bộ Timer của 8051?
c. Cho R0=1, nhận biết xem nhãn AGAIN có được gọi không với câu lệnh DJNZ R0, AGAIN?
d. Nếu giá trị nạp cho TH0 – TL0 là FFFFH, xác định xem sau nhiêu xung thì TF0=1?
1.2. Gói câu 2,0 điểm (25 phút)
Câu 9: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #97H
2
MOV R2, #5

3
NEXT:
MOV R3, #2
4
AGAIN:
ORL A, #21H
5
SWAP A
6
DJNZ R3,AGAIN
7
DJNZ R2,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 10: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #5AH
2
MOV R2, #4
3
NEXT:
MOV R3, #2
4
AGAIN:
ORL A, #30H
5
RR A
DJNZ R3,AGAIN
7
DJNZ R2,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 11: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #55H
2
MOV R3, #5
3
NEXT:
MOV R2, #2
4
AGAIN:
CPL A
5
ORL A, #21H
6
DJNZ R2,AGAIN
7
DJNZ R3,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 12: Cho đoạn chương trình viết cho vi điều khiển 8051:
1 MOV A, #73H
2 MOV R3, #5
3 NEXT: MOV R2, #2

4 AGAIN: ANL A, #12H
5 CPL A
6 DJNZ R2,AGAIN
7 DJNZ R3,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 13: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #0C8H
2
MOV R3, #5
3
NEXT:
MOV R2, #2
4
AGAIN:
RL A
5
ADD A, #11H
6
DJNZ R2,AGAIN
7
DJNZ R3,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 14: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #0A2H
2
MOV R3, #5
3
NEXT:
MOV R2, #2
4
AGAIN:
ADD A, #12H
5
RL A
6
DJNZ R2,AGAIN
7
DJNZ R3,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 15: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #39H
2
MOV R2, #5
3
NEXT:
MOV R3, #2
4
AGAIN:
RR A

5
ORL A, #23H
6
DJNZ R3,AGAIN
7
DJNZ R2,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
Câu 16: Cho đoạn chương trình viết cho vi điều khiển 8051:
1
MOV A, #97H
2
MOV R2, #5
3
NEXT:
MOV R3, #2
4
AGAIN:
SWAP A
5
ORL A, #21
6
DJNZ R3,AGAIN
7
DJNZ R2,NEXT
a. Chỉ ra sự thay đổi giá trị của của thanh ghi A 5 lần đầu tiên?
b. Xác định số chu kỳ máy để thực thi đoạn chương trình trên?
II. Gói câu hỏi thi “II” (Mỗi câu 3 điểm, 15 phút)
Câu 17: Viết chương trình tạo xung vuông ở P2.7 sử dụng Timer0: Độ rộng xung 50%,
tần số xung 1kHz, thạch anh sử dụng có tần số 6Mhz?
Câu 18: Viết chương trình tạo xung vuông ở P2.0 sử dụng Timer0: Độ rộng xung 50%,
tần số xung 800Hz, thạch anh sử dụng có tần số 6Mhz?
Câu 19: Viết chương trình tạo xung vuông ở P1.2 sử dụng Timer0: Độ rộng xung 50%,
tần số xung 5kHz, thạch anh sử dụng có tần số 6Mhz?
Câu 20: Viết chương trình tạo xung vuông ở P1.7 sử dụng Timer1: Độ rộng xung 50%,
tần số xung 5kHz, thạch anh sử dụng có tần số 12Mhz?
Câu 21: Viết chương trình tạo xung vuông ở P1.3 sử dụng Timer0: Độ rộng xung 50%,
tần số xung 40kHz, thạch anh sử dụng có tần số 24Mhz?
Câu 22: Viết chương trình tạo xung vuông ở P1.7 sử dụng Timer1: Độ rộng xung 50%,
tần số xung 10Hz, thạch anh sử dụng có tần số 12Mhz?

