You are on page 1of 3

BÀI TN 1

LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN

MỤC TIÊU:

 Nắm được cách sử dụng kit thí nghiệm, phần mềm lập trình.
 Nắm được cách lập trình giao tiếp IO port
 Nắm được cách lập trình tạo thời gian trễ dùng các lệnh

CHUẨN BỊ:
 Đọc chương 1 và chương 2 của tài liệu hướng dẫn
 Viết chương trình và mô phỏng các bài thí nghiệm

THÍ NGHIỆM 1

Mục tiêu

Nắm được cách thức điều khiển trực tiếp ngoại vi thông qua các port I/O của 8051.

Yêu cầu

Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 và hiển
thị ra led được nối tại chân P3.0 (bit thứ 0 của led thanh BL202).

Kiểm tra

Biên dịch và thực thi chương trình để kiểm tra kết quả thực hiện.

Thử giải thích tại sao có đến 2 led cùng bị tác động khi nhấn hoặc thả nút.

Tổng kết xem các bit nào của 2 port có thể được dùng trong thí nghiệm trên và giải thích tại
sao.

THÍ NGHIỆM 2

Biên dịch và thử nghiệm chương trình cho sẵn sau:

ORG 2000H

MAIN:

Lab Manual for “8051 Microcontroller….”


CPL P3.0

JMP MAIN

END

Kiểm tra

Biên dịch, thực thi và kiểm tra hoạt động của chương trình bằng cách đo dạng sóng trên
oscilloscope.

Câu hỏi

Theo lý thuyết, dạng sóng tạo ra trên chân P3.0 sẽ như thế nào?

Vẽ dạng sóng đo được trên oscilloscope và so sánh với kết qua lý thuyết.

Tần số tối đa một xung tuần hoàn có chu kỳ nhiệm vụ 50% có thể đạt được là bao nhiêu?

THÍ NGHIỆM 3

Mục tiêu

Nắm được cách tạo trễ dùng vòng lặp lệnh

Yêu cầu

Viết chương trình tạo xung vuông 1 Khz, chu kỳ nhiệm vụ 50% trên P3.0

Kiểm tra

Biên dịch, thực thi và kiểm tra chương trình bằng cách sử dụng oscilloscope để kiểm tra.

Câu hỏi

Để tạo xung 1Khz, các vòng trễ tạo ra như thế nào. Tính toán chính xác dựa trên chương trình
đã viết

Vẽ lại dạng sóng đo được trên oscilloscope

Sai số nhỏ nhất có thể đạt được so với yêu cầu là bao nhiêu?

HD: Tính sai số dựa vào tần số thạch anh là 11.0592 Mhz.

THÍ NGHIỆM 4

Mục tiêu
Lab Manual for “8051 Microcontroller….”
BÀI TN 1
LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN
Nắm được cách viết chương trình con để tạo trễ

Yêu cầu

Viết chương trình con Delay1sIns và dùng chương trình con này để chớp/tắt LED đơn gắn
vào P1.0 sau mỗi khoảng thời gian 1s.

Kiểm tra

Biên dịch, thực thi và kiểm tra chương trình bằng cách quan sát LED đơn.

Câu hỏi

Thời gian 1s được tạo ra như thế nào?

THÍ NGHIỆM 5

Mục tiêu

Nắm được cách hiển thị LED và tạo hiệu ứng

Yêu cầu

Viết chương trình tạo hiệu ứng quay LED: các LED đơn trên BARLED1 sáng lần lượt từ trái
sang phải sau thời gian 1s và lặp lại. Sử dụng chương trình con 1s đã viết ở trên.

Kiểm tra

Biên dịch, thực thi và kiểm tra chương trình bằng cách quan sát hiệu ứng trên bar led.

Câu hỏi

Led ngoài cùng bên trái kết nối đến MSB (most significant bit) hay LSB (less significant bit)
của port 1?

Lab Manual for “8051 Microcontroller….”

You might also like