Phần này tôi sẽ đưa ra cấu trúc một chương trình Arduino trong Arduino IDE. Đồng thời giải thích một số lệnh thường được sử dụng để thuận tiện cho người dùng. Bài viết này phù hợp với các bạn lần đầu tiếp cận với Arduino IDE.
Xét một ví dụ đơn giản: Chương trình nhấp nháy đèn Led.
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. */ // the setup function runs once when you press reset or power the board #define led = 13 void setup() { // initialize digital pin 13 as an output. pinMode(led, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Sau đây chúng ta sẽ cùng tìm hiểu cấu trúc của một chương trình trong Arduino IDE qua ví dụ này.
Phần 1: Khai báo biến
Đây là phần khai báo kiểu biến trong Arduino IDE, tên các biến, định nghĩa các chân trên board hay định nghĩa các biến constant.
#define constantName value
constantName: Tên hằng số được define.value: giá trị của hằng số được define.
Nghĩa của từ define là định nghĩa, hàm #define có tác dụng định nghĩa, hay còn gọi là gán, tức là gán một chân, một ngõ ra nào đó với 1 cái tên.
Ví dụ #define led 13
Chú ý: sau #define thì không có dấu “,” (dấy phẩy)
*Khai báo các kiểu biến khác như: int (kiểu số nguyên), float,…
Các bạn có thể tham khảo thêm các kiểu biến cũng như công dụng tại arduino.cc
Phần 2: Thiết lập (void setup())
Phần này dùng để thiết lập cho một chương trình Arduino IDE. Ví dụ: định nghĩa input, output,…Cấu trúc hàm setup:
void setup() { …… }
Trong chương trình nhấp nháy led ở trên, pinMode(led, OUTPUT); có nghĩa là chân led = 13 sẽ được cấu hình là chân OUTPUT.
Hàm setup() sẽ được gọi ngay khi bắt đầu chương trình. Sử dụng nó để khởi tạo các biến, Pin mode, bắt đầu sử dụng thư viện, v.v. Hàm setup() sẽ chỉ chạy một lần, sau mỗi lần khởi động hoặc reset Arduino.
Phần 3: Vòng lặp
void loop() { ………………. }
Sau khi chạy hàm Setup(), khai báo và khởi tạo các biến. Hàm loop() giống như tên của nó, sẽ run và lặp lại liên tục. Hàm loop() sẽ chứa những chức năng chính mà ta lập trình trên arduino, cho phép xử lý và phản hồi. Sử dụng hàm loop() để điều khiển Arduino của bạn.
Trong trương chình nhấp nháy led ở trên lệnh digitalWrite(led, HIGH); tức là xuất mức logic high ra chân led = 13. Sau đó delay(1000); là dừng chương trình 1 giây. Tiếp tục digitalWrite(led,LOW); để xuất mức điện áp thấp ra chân led = 13. Chương trình sẽ nhấp nháy đèn led 1s sáng và 1s tối.