Bài 1: Chớp tắt LED trên Arduino Uno
Trong bài viết hôm nay mình xin giới thiệu với các bạn cách chớp tắt Led trên Arduino Uno.
Và cách tạo một biến ra sao, cách thức làm việc của các hàm trên Arduino IDE.
Nếu bạn là một người mới chưa biết Arduino là cái quái gì? Và cần học Arduino để làm gì?
Thì xem 2 bài viết bên dưới nhé.
- Xem bài viết: Arduino IDE là gì?
- Xem bài viết: Arduino Uno là gì?
Code ví dụ chớp tắt Led
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 10 has an LED connected on most Arduino boards. // give it a name: int ledPin = 10; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(ledPin, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(ledPin,HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(ledPin,LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Giải thích Code
Comment
Trong Arduino bạn sẽ bắt gặp 2 dạng comment: Comment đơn dòng và đa dòng
- Comment theo kiểu đa dòng
Mở đầu bằng /* và kết thúc */ ở dạng comment này không giới hạn ký tự và số dòng.
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */
- Comment theo kiểu đơn dòng
Mở đầu bằng // và kéo dài cho tới cuối dòng
digitalWrite(ledPin,HIGH); // turn the LED on (HIGH is the voltage level)
Kiểu số nguyên int
int ledPin = 10;
Kiểu dữ liệu | Độ rộng bit | Dãy giá trị |
int (số nguyên) | 2 byte (16bit) | -32,768 đến 32,767 |
- ledPin = 10: Là tên biến (ở đây bạn có thể đặt tên gì mà bạn mong muốn, tốt nhất là các bạn đặt theo tên của chức năng để dễ dàng nhớ khi code. Ở đây mình kết nối LED vào chân số 10 trên Arduino UNO).
- Kết thúc khai báo bằng dấu (;): Trong trường hợp bạn không có (;) thì trình biên dịch sẽ báo lỗi.
Hàm setup()
void setup() {}
Hàm setup() được Arduino đọc khi bắt đầu khởi động. Nó dùng để khởi tạo biến, khởi tạo thư viện và thiết lập thông số.
Hàm setup()
chỉ chạy một lần khi bật nguồn hoặc reset lại chương trình.
pinMode
pinMode(ledPin, OUTPUT);
"pinMode"
: Cấu hình quy định hoạt động của một chân như là một đầu vào (INPUT) hoặc đầu ra (OUTPUT).- “Pin”: Là chân mà bạn muốn đặt.
- “Mode”: INPUT, OUTPUT hoặc INPUT_PULLUP.
Vòng lặp
void loop() {}
Sau khi hàm setup ()
chạy xong, những lệnh trong vòng loop ()
sẽ thực hiện và chúng sẽ lặp đi lặp lại cho đến khi Arduino bị ngắt nguồn hoặc reset lại chương trình.
digitalWrite(ledPin,HIGH); // turn the LED on (HIGH is the voltage level)
digitalWrite
ghi giá trị mức “CAO” (bật) hoặc mức “THẤP” (tắt) vào chân được cấu hình. Nếu chân được cấu hình là OUTPUT bởi pinMode, thì điện áp của nó sẽ tương ứng với giá trị được đặt: 5V (hoặc 3.3V trên bo là 3.3V) là mức “CAO”, 0V là mức “THẤP”.
Delay()
delay(1000); // wait for a second
delay()
: Tạm dừng chương trình trong khoảng thời gian chỉ định (được tính bằng mili giây) và ở đây (1000 mili giây sẽ bằng 1 giây).
Mối quan hệ của pinMode, digitalWrite và digitalRead
Nếu pinMode()
cấu hình điều khiển là đầu vào (INPUT), bạn nên sử dụng hàm digitalRead()
. Nếu chân cấu hình là đầu ra (OUTPUT), bạn nên sử dụng hàm digitalWrite()
.
LED, Buzzer | Button |
pinMode(pin,OUTPUT) |
pinMode(pin,INPUT) |
digitalWrite(pin,HIGH/LOW) |
digitalRead(pin) |
Sơ đồ đấu nối
Các linh kiện cần thiết cho bài học
Tên linh kiện | Số lượng | Shopee |
Arduino Uno R3 | 1 | Mua ngay |
Cáp nạp | 1 | Mua ngay |
Dây cắm (Đực – Đực) | 1 | Mua ngay |
Điện trở 220R | 1 | Mua ngay |
Led 5mm | 1 | Mua ngay |
Breadboard | 1 | Mua ngay |
Tổng kết
Qua bài học đầu tiên các bạn sẽ nắm được những kiến thức về kiểu dữ liệu số nguyên (int), cách sử dụng biến như thế nào, sử dụng hàm và cách làm việc của vòng lặp.
Nếu các bạn bạn thấy bài viết bổ ích nhớ Like và Share để mọi người cùng học nha.
- Để nhận thêm nhiều kiến thức bổ ích Đăng ký để nhận thông báo khi có bài viết mới nhất.
- Tham gia Cộng đồng Arduino KIT trên Fanpage.
Chúc các bạn thành công!
Trân trọng.