Tác giả: Thợ điện vô duyên - Phạm minh liêm
Hé lô anh em, Vô Duyên lại lên đây!
Bữa nay anh em mình lại tỉ tê chuyện nghề ha.
Anh em muốn tui viết bài thứ năm trong chuyên mục "Vô Duyên - Hỏi Đáp Về Smart Home" với chủ đề "Tự học vi điều khiển" đúng không?
Vụ này thì tui khoái nè, vì nó là cái "cần câu cơm" của tui mà.
Ở bài trước, anh em mình đã có đồ nghề, đã cài xong phần mềm Arduino IDE rồi.
Giờ mình bắt đầu làm cái chuyện đầu tiên, cũng là cái chuyện mà tui tin là anh em nào mới học cũng phải làm: làm cho cái đèn nó chớp.
Nghe thì đơn giản, nhưng cái này nó quan trọng lắm, giống như anh em mình mới tập đi xe đạp vậy đó. Đi được rồi thì mới chạy nhanh được.
Thôi, không nói nhiều nữa, anh em mình bắt đầu thôi.
Bài 5: Bài học đầu tiên - Chớp tắt đèn LED và làm quen với lập trình
1. Làm quen với hai thằng bạn thân: setup() và loop()
Nói thẳng luôn, khi anh em mình mở phần mềm Arduino IDE lên, anh em sẽ thấy nó có sẵn hai cái hàm (giống như hai cái "công việc") sau:
- void setup() { ... }: Anh em cứ coi cái này giống như công việc chuẩn bị ban đầu. Mấy việc chỉ làm một lần duy nhất thì anh em mình cứ bỏ hết vào đây.
- void loop() { ... }: Còn cái này thì giống như công việc hằng ngày của anh em mình vậy. Cứ làm đi, làm lại, làm đi, làm lại... không bao giờ ngừng. Mấy việc lặp đi lặp lại thì anh em mình cứ bỏ hết vào đây.
2. Chớp tắt đèn LED với hai câu lệnh thần thánh
Để làm cho cái đèn nó chớp tắt, anh em mình chỉ cần xài hai câu lệnh này thôi:
👉digitalWrite(chân\_pin, trạng\_thái);:
Câu lệnh này giống như cái "công tắc" vậy đó. Có hai trạng thái:
- HIGH: Giống như anh em mình bật công tắc, nó sẽ cấp điện và làm cho cái đèn nó sáng lên.
- LOW: Giống như anh em mình tắt công tắc, nó sẽ ngắt điện và làm cho cái đèn nó tắt đi.
👉delay(thời\_gian);:
- Câu lệnh này giống như một cái "máy hẹn giờ".
- Nó sẽ làm cho chương trình tạm dừng một lúc.
- Anh em mình muốn dừng bao lâu thì ghi số mili giây vào (1000 mili giây là 1 giây).
3. Ví dụ thực tế: Làm cho cái đèn LED trên bo Arduino chớp tắt
Tui nói nhiều quá, giờ anh em mình làm thử cho dễ hình dung.
Trên bo Arduino Uno của anh em có sẵn một cái đèn LED nhỏ, nó nằm gần cái chữ "L".
Anh em mình sẽ làm cho cái đèn đó chớp tắt.
Anh em mình mở phần mềm Arduino IDE lên, rồi copy cái đoạn code dưới đây vào:
void setup() {
// Dạy cho thằng Arduino biết là chân số 13 này mình sẽ dùng để xuất tín hiệu ra.
pinMode(13, OUTPUT);
}
void loop() {
// Bật đèn lên:
digitalWrite(13, HIGH);
// Tạm dừng 1 giây:
delay(1000);
// Tắt đèn đi:
digitalWrite(13, LOW);
// Tạm dừng 1 giây:
delay(1000);
}
Giải thích:
- Trong phần setup(), anh em mình có câu lệnh "pinMode(13, OUTPUT);".
- Câu này giống như anh em mình dặn dò thằng Arduino là: "Mày nhớ nha, cái chân số 13 này mình sẽ dùng để xuất tín hiệu ra ngoài đó!".
- Trong phần loop(), anh em mình có bốn câu lệnh.
- Nó sẽ chạy tuần tự từ trên xuống dưới: bật đèn, đợi 1 giây, tắt đèn, đợi 1 giây.
- Sau khi chạy xong, nó sẽ quay ngược lại, chạy lại từ đầu. Cứ thế, cái đèn nó sẽ chớp tắt liên tục.
4. Nạp code vào bo Arduino
Sau khi copy xong, anh em mình cắm bo Arduino vào máy tính qua cổng USB.
Rồi làm theo mấy bước sau:
- Bước 1: Chọn đúng bo mạch.
- Vào menu Tools -\> Board -\> Arduino Uno.
- Bước 2: Chọn đúng cổng COM.
- Vào menu Tools -\> Port.
- Anh em mình chọn cái cổng nào có chữ "Arduino" hoặc có số cổng
- (ví dụ: COM3, COM4,...).
- Bước 3: Bấm nút "Upload".
- Anh em mình bấm vào nút có hình mũi tên sang phải (nút "Upload") ở góc trên bên trái màn hình.
Đợi một lát, nếu không có lỗi gì thì cái đèn trên bo Arduino sẽ chớp tắt liên tục.
Tổng kết
Tóm lại, bài này anh em mình đã làm được một chuyện rất quan trọng: làm cho cái đèn nó chớp tắt.
Nó giống như anh em mình đã tập đi xe đạp thành công vậy đó.
Anh em mình đã làm chủ được hai thằng bạn thân setup() và loop(), và hai câu lệnh digitalWrite() và delay().
Nói nhiêu đó đủ rồi.
Hẹn anh em ở bài viết tiếp theo, mình sẽ học cách đọc tín hiệu từ nút nhấn!

Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.