SERIAL_INPUT_SERIAL_COMMAND_ARGUMENT

Gợi ý ngắn: 
Sử dụng thư viện Serial và Serial Command để tiến hành làm
Cấp độ: 

Xây dựng 2 hàm LED và FADE.

  • Baudrate: 9600
  • LED
    • điều khiển sáng tắt của LED 13
    • có 1 tham số:
      • status: boolean
    • Kịch bản chính
      • status = 1 hoặc status = TRUE (không phân biệt hoa thường) ==> Đèn LED sáng.
      • status = 0 hoặc status = FALSE (không phân biệt hoa thường) ==> Đèn LED tắt.
    • Kịch bản phụ:
      • Truyền nhiều hơn 1 tham số: không ảnh hưởng
      • Không truyền tham số: LED 13 đảo trạng thái (ví dụ, đang tắt thì bật đèn và ngược lại khi người dùng gõ lệnh LED)
  • FADE
    • Điều chỉnh độ sáng của đèn LED theo tham số.
    • Có 2 tham số:
      • ledPin: các chân LED thuộc tập hợp (3, 5, 6, 9, 10, 11) = (tập hợp các chân PWM).
      • amount: byte [0 - 255].
    • Ràng buộc dữ liệu:
      • amount: luôn nằm trong đoạn [0-255], nếu amount không thuộc đoạn này thì bạn cứ việc chỉnh sửa theo ý bạn, thoải mái.
    • Kịch bản chính:
      • Điều chỉnh độ sáng bằng hàm analogWrite với các chân LED thuộc tập hợp trên với gí trị là amount.
    • Kịch bản phụ:
      • Nếu người không truyền tham số:
        • Toàn bộ LED trong tập hợp trên sẽ bị tắt.
        • Báo ra Serial Monitor nội dung: "Vo hieu hoa hieu ung Fade".
      • Nếu người dùng truyền 1 tham số là ledPin:
        • Nếu ledPin thuộc đoạn trên
          • LED tại vị trí ledPin sẽ bị tắt.
        • Còn lại:
          • In ra Serial Monitor nội dung: "Khong tim thấy LED"
      • Nếu người dùng truyền 3 tham số trở lên:
        • Báo ra serial monitor: "Cau truc lenh FADE khong hop le. Moi nhap lai".

Tài liệu tham khảo

ĐỆ TRÌNH BÀI GIẢI NGAY

Điểm: 
10
Các bài viết cùng tác giả

Lưu các biến CHỈ ĐỌC với PROGMEM

Trong bài Tiết kiệm RAM trong Arduino?, chúng ta đã biết cách lưu chuỗi hằng vào bộ nhớ FLASH thay cho việc lưu hết bọn chúng vào RAM. Như vậy, một hằng chuỗi có thể được lưu vào bộ nhớ FLASH thay vì lưu vào RAM. Vậy, câu hỏi đặt ra là, những biến hằng khác (hằng số, hẳng mảng, hẳng số thực) có thể được lưu vào FLASH thay vì vào RAM hay không?

Trong thực tế, các biến hằng (trừ hằng chuỗi) hầu hết chỉ tốn vài chục byte để lưu trữ nên RAM, nên chúng ta cũng chưa gặp vấn đề gì trong việc lưu trữ hằng số hay hằng mảng cả. Nhưng thỉnh thoảng, có những lúc, ta phải tìm cách lưu trữ chúng ở một nơi khác, ví dụ Bài 12: Phát nhạc bằng Arduino với một cái loa hoặc buzzer.

Chần chừ gì nữa, biết muốn phám khá khả năng của Arduino - hay không?

lên
8 thành viên đã đánh giá bài viết này hữu ích.

Comments - Viết tài liệu tham khảo trong khi viết code Arduino

Bạn rất khó ghi nhớ từng dòng code một trong một chương trình thật là dài, với những thuật toán phức tạp, vì vậy Arduino đã làm cho bạn một cú pháp để giải quyết vấn đề này, đó là Comments. Comments sẽ giúp bạn ghi chú cho từng dòng code hoặc trình bày nhiệm vụ của nó để bạn hoặc những người khác có thể hiểu được chương trình này làm được những gì. Và comments sẽ không được Arduino biên dịch nên cho dù bạn viết nó dài đến đâu thì cũng không ảnh hưởng đến bộ nhớ flash của vi điều khiển. Để comments trong Arduino, bạn có 2 cách.

lên
10 thành viên đã đánh giá bài viết này hữu ích.