Search…

Sử Dụng Arduino IDE Lập Trình ESP8266 NodeMCU

03/10/20202 min read
Hướng dẫn việc sử dụng Arduino IDE để tích hợp thư viện hỗ trợ cho việc lập trình ESP8266 NodeMCU cũng như cách biên dịch, nạp code và kiểm tra.

Song song với các phiên bản Arduino khác nhau như Arduino UNO R3, Tiny, ... ESP8266 NodeMCU là một trong những mạch phổ biến trong việc phát triển các dự án IoTs. Ưu điểm của mạch này là module wifi được tích hợp sẵn và sử dụng một vi điều khiển mạnh mẽ hơn so với Arduino nguyên thủy.

Ngoài sử dụng ngôn ngữ lập trình Lua ta còn có thể lập trình sử dụng ngôn ngữ C/C++ thông qua Arduino IDE.

Tích hợp thư viện hỗ trợ ESP8266 NodeMCU

Lần lượt thực hiện các bước sau để tích hợp thư viện hỗ trợ lập trình mạch ESP8266 NodeMCU.

Bước 1: Thêm đường dẫn để tải các package cho NodeMCU vào Arduino IDE

Khởi động Arduino IDE, từ màn hình chính chọn File → Preferences, thêm đường dẫn bên dưới vào mục Addition Boards Manager URLs.

http://arduino.esp8266.com/stable/package_esp8266com_index.json
Thêm Arduino Preferences

Chọn OK để xác nhận.

Bước 2: Tải thư viện hỗ trợ

Từ giao diện chính của Arduino IDE, chọn Tools → Board → Board Managers, ... Tại thanh tìm kiếm của hộp thoại Board Managers nhập vào esp8266, chọn Install để tiến hành tải và cài đặt thư viện.

board-managers-esp

Cài đặt thành công, giao diện của Board Managers sẽ trở nên như hình dưới - hoàn tất cài đặt.

Hoàn tất cài đặt thư viện ESP8266 cho Arduino IDE.
Caption

Lập trình cho ESP8266 NodeMCU

Do đây là một board Arduino-compatable, cấu trúc của một chương trình dành cho mạch này sẽ tuân theo cấu trúc của một chương trình viết cho mạch Arduino bao gồm có 2 phần chính:

  • Hàm setup(): được gọi một lần duy nhất khi mạch được khởi động.
  • Hàm loop(): được gọi lặp lại trong suốt quá trình hoạt động của mạch.

Để làm quen, viết một chương trình cho ESP điều khiển một đèn LED nhấp nháy theo chu kì 1 giây. Linh kiện cần chuẩn bị bao gồm:

  • 1 mạch ESP8266 NodeMCU.
  • 1 đèn LED 5mm.

Sơ đồ mạch

Sơ đồ mạch ESP8266 NodeMCU

Lập trình

Đoạn code sau minh họa việc điều khiển đèn LED chớp theo chu kì 1 giây.

#define LED_PIN 12
#define DELAY_TIME 500

void setup()
{
	pinMode(LED_PIN, OUTPUT);
}

void loop()
{
	digitalWrite(LED_PIN, LOW);
	delay(DELAY_TIME);
	digitalWrite(LED_PIN, HIGH);
	delay(DELAY_TIME);
}

Nạp code

Thao tác nạp code cho mạch ESP8266 NodeMCU cũng tương tự như nạp cho mạch Arduino thông thường. Tuy nhiên, phải chọn phiên bản phù hợp với board đang sử dụng bằng menu Tools → Board. Do mạch trong bài viết là ESP8266 NodeMCU (ESP-12 module) nên phiên bản phù hợp là NodeMCU 0.9.

Upload code to ESP8266 NodeMCU.

Sau khi nạp code thành công, đèn LED nhấp nháy theo chu kì định sẵn.

IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024