ESP32 Cấu Trúc Code

Để học cách lập trình cho ESP32, bạn cần tìm hiểu cấu trúc code của ESP32. Hướng dẫn này cung cấp và giải thích cấu trúc code ESP32.

Linh Kiện Cần Thiết

1×mô-đun phát triển ESP-WROOM-32
1×Alternatively, ESP32 Uno-form board
1×Alternatively, ESP32 S3 Uno-form board
1×Cáp USB Type-C
1×(Tùy chọn) Jack Nguồn DC
1×breadboard
1×Dây Nối Jumper
1×(Khuyến nghị) Screw Terminal Expansion Board for ESP32
1×(Khuyến nghị) Breakout Expansion Board for ESP32
1×(Khuyến nghị) Power Splitter for ESP32

Or you can buy the following kits:

1×DIYables ESP32 Starter Kit (ESP32 included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Cấu Trúc Code Cơ Bản

Code ESP32 (còn được gọi là ESP32 sketch) có cấu trúc giống với Arduino Code. Nó bao gồm hai phần chính: setup code và loop code.

Setup Code

  • Setup code là code trong hàm setup().
  • Setup code được thực thi ngay sau khi bật nguồn hoặc reset
  • Setup code chỉ được thực thi một lần duy nhất.
  • Setup code được sử dụng để khởi tạo biến, chế độ chân, bắt đầu sử dụng thư viện,

Loop Code

  • Loop code là code trong hàm loop().
  • Loop code được thực thi ngay sau setup code.
  • Loop code được thực thi lặp đi lặp lại (vô hạn).
  • Loop code được sử dụng để thực hiện tác vụ chính của ứng dụng

Ví Dụ

void setup() { // put your setup code here, to executed once: Serial.begin(9600); Serial.println("This is ESP32 setup code"); } void loop() { // put your main code here, to run repeatedly: Serial.println("This is ESP32 loop code"); delay(1000); }

Các Bước Thực Hiện

  • Nếu đây là lần đầu tiên bạn sử dụng ESP32, hãy xem ESP32 - Cài Đặt Phần Mềm.
  • Sao chép đoạn code trên và dán vào Arduino IDE.
  • Biên dịch và upload code lên board ESP32 bằng cách nhấp vào nút Upload trên Arduino IDE
  • Mở Serial Monitor trên Arduino IDE
how to open serial monitor on Arduino ide
  • Xem kết quả trên Serial Monitor
COM6
Send
This is ESP32 setup code This is ESP32 loop code This is ESP32 loop code This is ESP32 loop code This is ESP32 loop code This is ESP32 loop code This is ESP32 loop code This is ESP32 loop code
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Như bạn có thể thấy trên Serial Monitor, "This is ESP32 the setup code" được in một lần, nhưng "This is ESP32 loop code" được in nhiều lần. Điều này có nghĩa là ESP32 setup code được thực thi một lần, ESP32 loop code được thực thi lặp đi lặp lại. Setup code được thực thi trước.

※ Lưu ý:

Hàm setup()loop() BẮT BUỘC phải được sử dụng trong code ESP32. Nếu không, sẽ xuất hiện lỗi.

Các Phần Khác

Ngoài setup và loop code, một ESP32 sketch có thể bao gồm một số phần sau:

  • Block comment: thường được sử dụng để ghi một số thông tin về tác giả, hướng dẫn kết nối, giấy phép ... ESP32 sẽ bỏ qua phần này.
  • Libraries inclusion: được sử dụng để bao gồm các thư viện vào sketch.
  • Constant definition: được sử dụng để định nghĩa hằng số
  • Khai báo biến toàn cục

Ví dụ:

/* * Mã ESP32 này được phát triển bởi newbiely.vn * Mã ESP32 này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/esp32/esp32-code-structure */ #include <ESP32Servo.h> #include <LiquidCrystal.h> #define MAX_COUNT 180 Servo servo; LiquidCrystal lcd(3, 4, 5, 6, 7, 8); int loop_count = 0; void setup() { Serial.begin(9600); lcd.begin(16, 2); servo.attach(9); Serial.println("This is ESP32 setup code"); } void loop() { loop_count++; Serial.print("This is ESP32 loop code, count: "); Serial.println(loop_count); lcd.print("Hello World!"); servo.write(loop_count); if(loop_count >= MAX_COUNT) loop_count = 0; delay(1000); }

Các Bước Thực Hiện

  • Nếu đây là lần đầu tiên bạn sử dụng ESP32, hãy xem ESP32 - Cài Đặt Phần Mềm.
  • Sao chép đoạn code trên và dán vào Arduino IDE.
  • Biên dịch và upload code lên board ESP32 bằng cách nhấp vào nút Upload trên Arduino IDE
  • Mở Serial Monitor trên Arduino IDE
how to open serial monitor on Arduino ide
  • Xem kết quả trên Serial Monitor
COM6
Send
This is ESP32 setup code This is ESP32 loop code, count: 1 This is ESP32 loop code, count: 2 This is ESP32 loop code, count: 3 This is ESP32 loop code, count: 4 This is ESP32 loop code, count: 5 This is ESP32 loop code, count: 6 This is ESP32 loop code, count: 7
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Chúng ta KHÔNG cần phải hiểu code từng dòng một ngay bây giờ. Chúng ta chỉ cần biết về cấu trúc code. Code từng dòng sẽ được giải thích trong các hướng dẫn tiếp theo.

Bình Luận