Lập trình Arduino không cần viết code - Phần 14: Timer - Millis()

Đây là phần 14 của chuỗi bài viết "Lập trình Arduino không cần viết code"

- Xem lại phần 13 tại đây.

Xin chào các bạn, hôm nay chúng ta sẽ cùng tìm hiểu về timer và cách sử dụng nó trong mBlock cũng như trong Arduino. Xơi luôn

Timer là gì

Về cơ bản nó chính là bộ đếm thời gian trong vi điều khiển Arduino. Nó sẽ bắt đầu đếm khi chương trình bắt đầu chạy và chỉ dừng lại khi ta dừng chạy chương trình. Bạn có thể tìm hiểu hơn về timer qua từ khóa đó trên mục tìm kiếm. Vậy ứng dụng của nó là gì? Đa số nó được ứng dụng để chạy các hàm, lệnh song song nhau. Phần sau mình sẽ chỉ 1 ví dụ. Nhưng ngay bây giờ bạn hãy nghĩ về việc blink 2 led theo 2 khoảng thời gian nháy khác nhau cùng nhau sẽ như thế nào để chuẩn bị cho phần sau.

Thực hành

Chuẩn bị

1 con arduino và chỉ thế thoi.

Lập trình với mBlock

Trước tiên mở khối Serial ra.

Tạo một biến đếm giây để in ra serial, vì nếu dùng timer trực tiếp nóp sẽ đếm liên tục, trong khi mình chỉ cần đếm theo giây.

Lập trình theo sơ đồ sau.

Sửa code một tí, không cần sửa cũng được nhưng thời gian úp hơi lâu nên sửa đi nha.

Sửa lại như hình

Ok, úp code

Lập trình với Arduino IDE

Trong arduino, để kiểm tra xem thời gian hiện tại là bao nhiêu ta dùng hàm millis().

Code đây

int seconds;
int currentTime = 0;
int getLastTime(){
    	return currentTime = millis()/1000.0;
}
void setup(){
    Serial.begin(9600);
}

void loop(){
    if(seconds==getLastTime())
    {
        Serial.println(seconds);
        seconds += 1;
    }
}

Thành quả đây

Kết luận

Như vậy là ta vừa tìm hiểu xong cách sử dụng timer trong arduino. Ở phần sau mình sẽ đưa ra 1 ví dụ về timer. Cảm ơn đã quan tâm theo dõi, Chúc các bạn thành công.

lên
13 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Tìm hiểu cấu tạo và nguyên lý hoạt động của đèn LED

Chúng ta đã quá quen thuộc với những bé đèn LED. Thế nhưng có bao giờ bạn tự hỏi nó hoạt động ra sao và có cấu tạo như thế nào. Bài viết hôm nay sẽ giải đáp những thắc mắc đó. Nào cùng tìm hiểu.

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

Lập trình Arduino không cần viết code - Phần 3: Chuyển đổi công nghệ, công nghệ khác tốt hơn

Đây là phần 3 của chuỗi bài "Lập trình Arduino không cần viết code".

Xem lại phần 2 tại đây.

Sau vài lần sử dụng phần mềm miniBloq, mình cảm thấy nó còn khá nhiều điểm yếu như có ít đối tượng lệnh nên còn một vài lệnh phải gõ tay hay câu lệnh không thống nhất với Arduino IDE (như trong arduino, lệnh digitalWrite() còn trong miniBloq thì là DigitalWrite),.. Nên mình đã lao đầu lên mạng tìm xem còn phần mềm nào khác tương tự không và mình đã tìm thấy một phần mềm hay hơn nhiều. Đó là mBlock. Và đã đến lúc chúng ta chuyển đổi công nghệ.

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