Hãy đọc yêu cầu và quan sát hình ảnh demo động bên dưới để viết chương trình tương ứng vào phần Mã nguồn.
Lập trình chớp tắt đồng thời toàn bộ 8 LED ở Port 0 với chu kỳ nhấp nháy đều đặn.
Bật sáng dần từng LED một từ phải sang trái (P0.0 đến P0.7), sau đó tắt hết và lặp lại.
Chỉ 1 điểm sáng duy nhất chạy liên tục từ P0.0 đến P0.7 (Chaser hiệu ứng cơ bản).
Sáng xen kẽ các LED chẵn và lẻ (01010101), sau đó đảo ngược trạng thái liên tục.
Một điểm sáng chạy qua lại (Ping-pong) giữa hai biên P0.0 và P0.7 không ngừng.
Cụm 8 LED Port 0 và cụm 8 LED Port 1 thay phiên nhau chớp sáng/tắt.
Điểm sáng chạy xuyên suốt từ P0.0 băng qua P1.7 tạo thành một dải dài.
Điểm sáng bắt đầu từ tâm (giữa P0.7 và P1.0) và chạy ngược ra 2 biên.
Sáng dần vào mảng 16 LED (tương tự lấp đầy thanh Loading tiến độ).
Hai điểm sáng chạy từ 2 biên P0.0 và P1.7, gặp nhau ở giữa rồi dội ngược lại.
Duy trì 1 điểm sáng chạy nối tiếp liên tục qua toàn bộ 32 LED của hệ thống.
Mỗi 4 LED tạo thành 1 cụm. Sáng tắt xen kẽ (11110000 11110000...) trên cả 4 Port.
Tạo 1 vệt sáng dài (khoảng 3-4 LED liền kề) di chuyển với tốc độ cao qua 32 LED.
Hai nửa bảng LED (P1,P0 và P2,P3) sáng lan toả dần từ trung tâm sang 2 biên ngoài.
Các LED chớp tắt loạn nhịp theo cụm ngẫu nhiên, mô phỏng bầu trời sao lấp lánh.
Dưới đây là gợi ý thuật toán và các đoạn mã mẫu giúp sinh viên hoàn thành 15 bài tập. Hãy chọn ngôn ngữ bạn đang theo học để xem hướng dẫn.
Từ tâm (P0.7 và P1.0) lan ra ngoài.
Gợi ý thuật toán: Dùng 2 vòng lặp lồng nhau. Vòng ngoài xác định điểm dừng (j giảm dần từ 15 về 0), vòng trong (i từ 0 đến j) để chạy điểm sáng đến vị trí dừng và cộng dồn bằng toán tử OR (|).
Dùng một dải sáng như 0x07 (3 bit 1) dịch trái liên tục, xử lý nối tràn từ Port này sang Port khác bằng cờ Carry trong ASM hoặc phép toán dịch bit trong C.
P1 và P0 tạo thành nửa trái, P2 và P3 tạo nửa phải. Sáng lan tỏa đồng thời sang 2 hướng.
Chọn mẫu bảng hiệu để xem kết quả khi lập trình Port 0, 1, 2, 3.