Bài tập thực hành và đáp án môn Kỹ thuật vi xử lý và ứng dụng
Bài tập thực hành và đáp án môn Kỹ thuật vi xử lý và ứng dụng
Tải đáp án phía cuối :D
1) Lập trình sử dụng 8 nút ấn để
điều khiển bật 8 LED đơn tương ứng. Khi ấn nút thì LED tương ứng sẽ sáng.
2) Lập trình sử dụng 8 nút ấn để điều khiển bật 8 LED đơn tương ứng. Khi ấn nút thì LED tương ứng sẽ sáng, nhả nút thì LED tắt
3) Lập trình sử dụng 8 nút ấn để
điều khiển đảo trạng thái của 8 LED đơn tương ứng. Khi ấn nút thì LED đang sáng sẽ tắt và ngược lại
4) Điều khiển 8 LED nhấp nháy với chu
kì 1(s)
5) Điều khiển dãy LED chạy từ trái
sang phải
6) Dieu khien hien thi 1 LED 7 thanh.
So hien thi tang dan tu 0 den 9, sau khi den 9 thi LED lai hien thi ve 0.
7) Điều khiển hiển thị 1 LED 7 thanh
hiển thị số từ 0 đến 9. Sử dụng 2 nút bấm: 1 nút làm tăng số hiển thị, 1 nút
làm giảm số hiển thị
8) Điều khiển hiển thị 1 LED 7 thanh
hiển thị số từ 0 đến 9. So hien thi ban dau la 0. So hien thi se tang dan, sau
khi tang den 9 thi lai giam dan ve 0, sau khi giam den 0 lai tang dan len 9.
9) Điều khiển hiển thị 4 LED 7 thanh
bằng phương pháp quét. Sau mỗi 1(s) thì số trên LED sẽ tăng 1 đơn vị, nếu tăng
quá 9999 thì quay lại 0. Biết 8 chân dữ liệu cắm vào PORTB, 4 chân điều khiển
sáng/tắt các LED là PC4, PC5, PC6, PC7.
10) Điều khiển hiển thị 4 LED 7 thanh
bằng phương pháp quét. Sử dụng 2 nút bấm: 1 nút làm tăng số hiển thị, 1 nút làm
giảm số hiển thị. Biết 8 chân dữ liệu cắm vào PORTB, 4 chân điều khiển sáng/tắt
các LED là PC4, PC5, PC6, PC7.
11) Điều khiển hiển thị 4 LED 7 thanh
bằng phương pháp quét. Thiết lập 2 ngắt ngoài 0 và 1 hoạt động ở chế độ Falling
Edge. Mỗi khi có sự kiện ngắt 0 xảy ra thì số hiển thị trên LED 7 thanh tăng
lên 1 đơn vị, sự kiện ngắt 1 xảy ra thì số hiển thị trên LED 7 thanh giảm 1 đơn
vị.
12) Điều khiển 8 LED đơn nhấp nháy
xen kẽ nhau. Thiết lập 2 ngắt ngoài 0 và 1 hoạt động. Sử dụng 2 nút bấm: 1 nút
làm tăng tần số nhấp nháy, 1 nút làm giảm tần số nhấp nháy.
13) Sử dụng 1 biến trở để điều chỉnh
điện áp thay đổi từ 0-5V. Sử dụng chức năng ADC của vi điều khiển để đo điện
áp, hiển thị giá trị lên LED 7 thanh với độ chính xác là 0.1V
14) Sử dụng 1 biến trở để điều chỉnh
điện áp thay đổi từ 0-5V. Sử dụng chức năng ADC của vi điều khiển để đo điện
áp, hiển thị giá trị lên LED 7 thanh với độ chính xác là 0.01V
15) Sử dụng 1 biến trở để điều chỉnh
điện áp thay đổi từ 0-5V. Sử dụng chức năng ADC của vi điều khiển để đo điện
áp, hiển thị giá trị lên LED 7 thanh. Độ chính xác đo được có thể lựa chọn 1
trong 2 mức là 0.1V và 0.01V bằng cách sử dụng nút bấm
16) Sử dụng cảm biến nhiệt độ LM35 để
đo nhiệt độ, hiển thị giá trị đo được lên LED 7 thanh
17) Thiết lập
Timer 0 hoạt động ở chế độ Normal, kích hoạt ngắt tràn Timer 0. Lựa chọn một tần số hoạt động cho Timer, ghi
lại chú thích về cách tính toán thời gian chính xác 1(s) vào chương trình phục
vụ ngắt.
Lập trình 4 LED 7 thanh hiển thị số. Số ban đầu hiển thị là 1234. Sau mỗi
1(s) thì số tự động tăng lên 1 đơn vị, tăng đến 9999 thì vòng lại 0.
18) Thiết lập
Timer 0 hoạt động ở chế độ Normal, kích hoạt ngắt tràn Timer 0. Lựa chọn một tần số hoạt động cho Timer, ghi
lại chú thích về cách tính toán thời gian chính xác 1(s) vào chương trình phục
vụ ngắt.
Lập trình 4 LED 7 thanh hiển thị số. Số ban đầu hiển thị là 1234.
Sử dụng 1 nút bấm nối vào PD0. Ấn và giữ nút thì sau mỗi 1(s) thì số tự động
tăng lên 1 đơn vị, tăng đến 9999 thì vòng lại 0, nhả nút ra số dừng lại
19) Thiết kế mạch sử dụng vi điều khiển Atmega16
để lập trình hiển thị 4 LED 7 thanh bằng phương pháp quét, sử dụng 3 nút bấm nối
vào PA0, PA1, PA2
- Thiết lập Timer 0 hoạt động ở chế độ Normal, kích hoạt ngắt tràn
- Lựa chọn một tần số hoạt động cho Timer, ghi lại chú thích về cách tính
toán thời gian chính xác 1(s) vào chương trình phục vụ ngắt
- Số ban đầu hiển thị là 1000
- Ấn nút 1 (sau đó nhả ra) thì số hiển thị tự động tăng sau mỗi 1(s),
tăng tối đa đến 9000 thì dừng lại
- Ấn nút 2 (sau đó nhả ra) thì số hiển thị tự động giảm sau mỗi 1(s), giảm
tối thiểu đến 0 thì dừng lại
- Ấn nút 3 (sau đó nhả ra) thì số
hiển thị dừng lại ngay lập tức
20) Thiết kế mạch sử dụng vi điều khiển Atmega16
để lập trình hiển thị 4 LED 7 thanh bằng phương pháp quét, sử dụng 3 nút bấm nối
vào PA0, PA1, PA2
- Thiết lập ngắt ngoài 0 hoạt động ở chế độ Falling Edge
- Thiết lập Timer 0 hoạt động ở chế độ Normal, kích hoạt ngắt tràn
- Lựa chọn một tần số hoạt động cho Timer, ghi lại chú thích về cách tính
toán thời gian chính xác 1(s) vào chương trình phục vụ ngắt
- Số ban đầu hiển thị là 1000
- Ấn nút 1 thì số hiển thị sẽ tự động tăng sau mỗi khoảng thời gian t,
tăng tối đa đến 9000 thì dừng lại
- Ấn nút 2 thì số hiển thị tự động giảm sau mỗi khoảng thời gian t, giảm
tối thiểu đến 0 thì dừng lại
- Ấn nút 3 thì số hiển thị dừng lại ngay lập tức
-
Ngắt ngoài 0 được kích hoạt thì số hiển thị sẽ reset về 1000
21) Thiết kế mạch sử dụng vi điều khiển Atmega16
để lập trình hiển thị 4 LED 7 thanh bằng phương pháp quét, sử dụng 1 nút bấm nối
vào PA0
- Thiết lập ngắt ngoài 0 và 1 hoạt động ở chế độ Falling Edge
- Thiết lập Timer 0 hoạt động ở chế độ Normal, kích hoạt ngắt tràn
- Lựa chọn một tần số hoạt động cho Timer, ghi lại chú thích về cách tính
toán thời gian chính xác 1(s) vào chương trình phục vụ ngắt
- Số ban đầu hiển thị là 3333
- Ấn nút lần thứ nhất thì số hiển thị sẽ tự động tăng sau mỗi khoảng thời
gian t, tăng quá 9000 thì vòng lại 0
- Ấn nút lần thứ 2 thì số hiển thị sẽ dừng lại
-
Ngắt ngoài 0 được kích hoạt thì tăng khoảng thời gian t
-
Ngắt ngoài 1 được kích hoạt thì giảm khoảng thời gian t
22) Thiết kế mạch sử dụng vi điều khiển Atmega16 để lập trình đồng hồ hiển
thị giờ, phút, giây, sử dụng các cặp LED đơn để ngăn cách giờ và phút, phút và
giây
Lập trình chương trình hoạt động như sau:
- Thiết lập Timer 0 hoạt động ở chế độ Normal, kích hoạt ngắt tràn
- Lựa chọn một tần số hoạt động cho Timer, ghi lại chú thích về cách tính
toán thời gian chính xác 1(s) vào chương trình phục vụ ngắt
- Thiết lập Timer 2 hoạt động ở chế độ CTC, kích hoạt ngắt so sánh để phục
vụ quét LED 7 thanh
- Thời gian ban đầu hiển thị là 10:10:00
- Sử dụng 1 nút bấm để reset thời gian về mốc
10:10:00
23)
Sử dụng 8 biến trở để điều chỉnh điện áp thay đổi từ 0-5V. Sử dụng chức năng
ADC của vi điều khiển để đo điện áp, hiển thị giá trị lên LED 7 thanh. Sử dụng
1 nút bấm để lựa chọn tín hiệu đo từ 0-7, sử dụng 8 LED đơn hiển thị để biết
đang lựa chọn tín hiệu đo nào.
Link
hoạt động:
https://youtu.be/nw8sFOq2Bkc
24) Điều khiển hiển thị 4 LED 7 thanh
bằng phương pháp quét. Thiết lập 2 ngắt ngoài 0 và 1 hoạt động ở chế độ Falling
Edge. Sử dụng thêm 2 nút bấm nối vào PD0 và PD1.
-
Ban đầu LED hiển thị số 1234
-
Ấn nút thứ nhất thì số hiển thị sẽ tự động tăng sau khoảng thời gian t
-
Ấn nút thứ hai thì số hiển thị sẽ dừng lại
-
Ngắt ngoài 0 làm nhiệm vụ tăng khoảng thời gian t
-
Ngắt ngoài 1 làm nhiệm vụ giảm khoảng thời gian t
25) Điều khiển hiển thị 4 LED 7 thanh
bằng phương pháp quét. Thiết lập 2 ngắt ngoài 0 và 1 hoạt động ở chế độ Rising
Edge. Sử dụng thêm 1 nút bấm nối vào PD0.
-
Ban đầu LED hiển thị số 1234
-
Ấn nút lần thứ nhất thì số hiển thị sẽ tự động tăng sau khoảng thời gian t
-
Ấn nút lần thứ hai thì số hiển thị sẽ dừng lại
-
Ngắt ngoài 0 làm nhiệm vụ tăng khoảng thời gian t
-
Ngắt ngoài 1 làm nhiệm vụ giảm khoảng thời gian t
26) Điều khiển hiển thị 4 LED 7 thanh
bằng phương pháp quét. Thiết lập ngắt ngoài 0 hoạt động ở chế độ Rising Edge. Sử
dụng thêm 2 nút bấm nối vào PD0 và PD1.
-
Ban đầu LED hiển thị số 1234
-
Ngắt ngoài làm nhiệm vụ START/STOP, ngắt lần 1 thì số tự động tăng sau khoảng
thời gian t, ngắt lần 2 thì số dừng lại,…
-
Ấn nút 1 thì tăng thời gian t, nhưng không tăng quá 2(s)
-
Ấn nút 2 thì giảm thời gian t, nhưng không giảm dưới 200(ms)
==========================
Tải file đáp án tại đây:
===========================================
Nhận xét