Lắp đèn led vào các chân khác của mạch UNO và sửa code để khiển khiển đèn led đó (chân 0 đến chân 13, chân A0 đến A5 của đầu ra). Mỗi đèn led nối với một điện trở 220 OhmLắp 8 led vào các chân ngỏ ra rồi viết code để tạo hiệu ứng điều khiển các led đó, dùng nhiều loại vòng lặp khác nhau, 3 led chạy nối đuôi xoay vòngLắp 8 led vào các chân ngỏ ra rồi viết code để tạo hiệu ứng điều khiển các led đó, dùng nhiều loại vòng lặp khác nhau, số led sáng tăng dần từ 1 đến 8 led và giảm dần từ 8 về 1.Tạo hiệu ứng sao băng trên các led nối với chân PWM 3, 5 ,6 ,9 ,10 ,11. Hiệu ứng sao băng là một điểm sáng nhất di động và có đuôi mờ dần về phía sau.Điều chỉnh độ sáng của đèn led khi vặn biến trở volumeĐiều khiển tốc độ chuỗi sao băng bằng biến trở volume.Tạo dòng chữ hello world chạy từ trái sang phải trên dòng 1.Viết mã để nhận tín hiệu từ 4 nút bấm, sao cho mỗi khi nhấn 1 nút mạch sẽHiển thị “func” và số thứ tự của nút bấm đó Viết mã để nhận tín hiệu từ 4 nút bấm, sao cho mỗi khi nhấn 1 nút mạch sẽCác đèn led sẽ sáng theo 1 hiệu ứng trong 4 hiệu ứng mặc định cho từng nút.Bố trí 4 quang trở cùng nằm trên đường thẳng nằm ngang và dùng 4 led để chỉ thị lệnh. Viết chương trình:Quét ngón tay qua 4 quang trở từ trái sang phải: bật tất cảQuét ngón tay qua 4 quang trở từ phải sang trái: tắt tất cảMột chạm vào mỗi quang trở sẽ bật led tương ứngHai chạm liên tiếp vào mỗi quang trở sẽ tắt led tương ứng
Trang 1Thực hành Lập trình hệ thống
Sinh viên: Trần Văn Dương
Lớp: 16TCLC2 MSSV: 102160211
Trang 2Danh sách linh kiện
9 Bread board 80 cột 1 30,000
10 Dây nối 2 đầu dương 20 10,000
11 Mạch CPU Arduino UNO R3 1 150,000
Trang 3Bài tập mở rộng 1.1
Yêu cầu: Lắp đèn led vào các chân khác của mạch UNO và sửa code để khiển khiển
đèn led đó (chân 0 đến chân 13, chân A0 đến A5 của đầu ra) Mỗi đèn led nối với một điện trở 220 Ohm
Ý tưởng: Chỉ đổi chân 2 bằng các chân khác (0 đến 13, A0 đến A5 của đầu ra)
Trang 4Bài tập mở rộng 1.2a
Yêu cầu: Lắp 8 led vào các chân ngỏ ra rồi viết code để tạo hiệu ứng điều khiển các led đó,
dùng nhiều loại vòng lặp khác nhau, 3 led chạy nối đuôi xoay vòng
Ý tưởng: 0: đèn sáng, 1: đèn sáng (8 chữ số đại diện cho 8 đèn)
Hoạt động: 10000000 11000000 11100000 01110000 … 00000111 10000011 1100000001
Trang 5Bài tập mở rộng 1.2a
Một số code sử dụng các loại vòng lặp khác:
Trang 6Bài tập mở rộng 1.2b
Yêu cầu: Lắp 8 led vào các chân ngỏ ra rồi viết code để tạo hiệu ứng điều
khiển các led đó, dùng nhiều loại vòng lặp khác nhau, số led sáng tăng dần
Trang 7Bài tập mở rộng 1.2b
Một số code sử dụng các loại vòng lặp khác:
Trang 8Bài tập mở rộng 2.1
Yêu cầu: Tạo hiệu ứng sao băng trên các led nối với chân PWM 3, 5 ,6 ,9 ,10 ,11
Hiệu ứng sao băng là một điểm sáng nhất di động và có đuôi mờ dần về phía sau
Ý tưởng: Tương tự như 1.2a nhưng mức sáng sẽ giảm dần từ đầu đến đuôi
Trang 9Bài tập mở rộng 2.2
Yêu cầu: Điều chỉnh độ sáng của đèn led khi vặn biến trở volume
Ý tưởng: Đọc giá trị từ biến trở, sau đó thiết lập mức sáng tương ứng cho LED
Trang 10Bài tập mở rộng 2.3
Yêu cầu: Điều khiển tốc độ chuỗi sao băng bằng biến trở volume.
Ý tưởng: Đọc giá trị từ biến trở, sau đó thiết lập thời gian delay cho mỗi lần dịch chuyển,
ta đã có thể điều chỉnh tốc độ sao băng
Trang 11Bài tập mở rộng 3.1
Yêu cầu: Tạo dòng chữ “hello world” chạy từ trái sang phải trên dòng 1.
Ý tưởng: Dịch chuyển từng kí tự 1 sang phải
Trang 12Bài tập mở rộng 3.2a
Yêu cầu: Viết mã để nhận tín hiệu từ 4 nút bấm, sao cho mỗi khi nhấn 1 nút mạch sẽ
Hiển thị “func” và số thứ tự của nút bấm đó
Ý tưởng: Vì không có nút bấm nên sẽ nhận input nút bấm từ Serial Monitor Kiểm tra có
phải trong khoảng 1 đến 4 hay không? Phải, thì in ra func và số đó: Không, thì không in
Trang 13Bài tập mở rộng 3.2b
Yêu cầu: Viết mã để nhận tín hiệu từ 4 nút bấm, sao cho mỗi khi nhấn 1 nút mạch sẽ
Các đèn led sẽ sáng theo 1 hiệu ứng trong 4 hiệu ứng mặc định cho từng nút
Ý tưởng: Tương tự 3.1a và ta sẽ tạo thêm 4 hàm tương ứng 4 hiệu ứng Kiểm tra đầu vào
là phím 1 thì gọi hàm hiệu ứng 1, phím 2 thì gọi hàm hiệu ứng 2,…
Trang 14Bài tập mở rộng 3.2b
Trang 15Bài tập mở rộng 4.1
Yêu cầu: Viết chương trình để mở rộng thành 4 quang trở và 4 led
Ý tưởng: Dựa vào sự thay đổi điện trở trong quang trở khi có ánh sáng hoặc tối,
khi chạm tay và thả ra tức tối - sáng, sẽ thay đổi trạng thái của đèn.
Trang 16Bài tập mở rộng 4.2
Yều cầu: Bố trí 4 quang trở cùng nằm trên đường thẳng nằm ngang và dùng 4
led để chỉ thị lệnh Viết chương trình:
• Quét ngón tay qua 4 quang trở từ trái sang phải: bật tất cả
• Quét ngón tay qua 4 quang trở từ phải sang trái: tắt tất cả
• Một chạm vào mỗi quang trở sẽ bật led tương ứng
• Hai chạm liên tiếp vào mỗi quang trở sẽ tắt led tương ứng
Trang 17Bài tập mở rộng 4.2
Trang 19Bài tập mở rộng 4.2
Trang 20Bài tập 5
Yêu cầu: Lắp mạch và viết chương trình điều khiển 2 led 7 thanh (Anode chung)
hiển thị đếm từ 0 đến 20 với các yêu cầu:
- Sử dụng IC 74HC595 để truyền dữ liệu nối tiếp từ mạch UNO vào các thanh diode của led 7 thanh
- Thời gian thay đổi biến hiển thị là 500ms
Trang 21Bài tập 5