Hướng dẫn cài đặt Platform IO lập trình ESP32

huong dan cai dat va su dung platform io lap trinh esp32]

Trước khi đến với serie Học lập trình ESP32 từ A tới Z chúng ta cần cài đặt Platform IO, đây là một Extension của VS Code, cho phép chúng ta có thể lập trình nhiều dòng vi điều khiển khác nhau như Arduino, Esp8266, Esp32, STM32 …

Cài đặt Visual Studio Code (VS Code)

Truy cập link: https://code.visualstudio.com/

Download và Cài đặt như một software bình thường

Hướng dẫn cài đặt Visual Studio Code

Cài đặt Platform IO

Trước khi cài Extension này, chúng ta cần cài đặt Python cho máy tính đã.

Truy cập link: https://www.python.org/downloads/

lap trinh esp32 8

Lưu ý: Hãy tích chọn Add Python 3.8 to PATH để có thể run Python ở bất cứ đâu

Sau đó mở VS code, chuyển đến tab Extension, trong ô tìm kiếm gõ Platformio IDE

lap trinh esp32 18

Nhấn cài đặt, sau khi cài đặt xong sẽ hiển thị như hình

lap trinh esp32 19

Restart lại VS code sau đó chờ cho tất cả các extension được load.

Lưu ý: máy tính bạn cần phải có mạng nhé

Cài đặt Driver nạp cho mạch

Tùy vào trường hợp mạch bạn sử dụng IC UART nào, chúng ta sẽ cài đặt driver cho chip đó:

Thường là 2 loại

Hướng dẫn sử dụng Platform IO lập trình ESP32

Tạo một dự án lập trình ESP32 với Platform io

Chúng ta nhấn vào biểu tượng logo của Platform io, trong tab Quick Acccess nhấn Open. Vs code sẽ mở ra trang PIO Home.

Sau đó nhân vào New Project để tạo 1 dự án mới

platformio

Đặt tên dự án, Chọn KIT sử dụng, ở đây là board DOIT ESP32 DEV KIT (loại thường gặp nhất đó).

Chọn Framwork là Arduino

platformio 2

Bỏ tick Use Defaul Location, sau đó trỏ tới nơi bạn lưu project, nhấn Finish để hoàn thành.

platformio 3

Chờ 1 chốc lát để VS Code tạo dự án nhé

Giao diện lập trình của Platform IO

Sau khi project được tạo, giao diện như sau:

platformio 4

Gồm :

  • Phần cây thư mục dự án: cho chúng ta thêm, sửa, xóa các file nhanh
  • Phần Text editor: là nơi viết code
  • Cửa sổ Terminal: Nơi gõ các câu lênh
  • Thanh công cụ: Lần lượt là Home, Build, Upload code, Clean, Serial Monitor(màn hình serial), Terminal

Thư mục Src: Chứa Source code của chương trình, đây là nơi lưu trữ code và bạn sẽ code trên đó. File thực thi chính là: main.cpp

platformio 5

Trên thực tế, các bạn có thể Copy trực tiếp các đoạn code viết bằng Arduino IDE và Paste thẳng vào đây. Chỉ cần giữ #include <Arduino.h> là code cũng có thể chạy bình thường.

Thế nên các dự án mà bạn viết bằng Arduino cũng đều có thể viết bằng VS code nhé.

File platformio.ini là file cấu hình PlatformIO cho project của bạn. Nó hiển thị các thông tin như platform, board và framework được sử dụng. Bạn cũng có thể thêm các cấu hình khác như các thư viện được đưa vào, tùy chọn upload code, hay tốc độ truyền của Serial Monitor, đường dẫn thư viện và các cấu hình khác.

platformio 6

Thực tế các bạn nên để nguyên.

Nếu muốn thay đổi tốc độ baud của Serial Monitor có thể sử dụng lệnh: monitor_speed = 115200

Nếu muốn thêm đường dẫn của thư viện chúng ta dùng: lib_deps = E:/thuvien 

Trong đó E:/thuvien là đường dẫn tới file thư viện bạn cài đặt

Cài đặt thư viện cho Platformio

Cách 1: Sử dụng công cụ Libraly trong Platformio

Làm theo quy trình dưới đây nếu bạn cần cài đặt thư viện trong PlatformIO IDE.

  • Nhấp vào biểu tượng Home để chuyển đến Trang chủ PlatformIO. Nhấp vào biểu tượng Libraries trên thanh bên trái.
  • Tìm kiếm thư viện bạn muốn cài đặt. Ví dụ Adafruit_BME280 .

platfomrio thu vien 3

Nhấp vào thư viện bạn muốn đưa vào dự án của mình. Sau đó, nhấp vào Add to Project.

platfomrio thu vien 1

Chọn dự án bạn muốn sử dụng thư viện.

platfomrio thu vien 2

Thao tác này sẽ thêm code định danh thư viện bằng cách sử dụng lid_depschỉ thị trên file platformio.ini . Nếu bạn mở file platformio.ini của dự án , nó sẽ trông nh thể hiện trong hình ảnh sau.

platfomrio thu vien 4

Ngoài ra, trên cửa sổ thư viện, nếu bạn chọn tab Installation và cuộn một chút, bạn sẽ thấy code định danh cho thư viện. Bạn có thể chọn bất kỳ số nhận dạng nào tùy thuộc vào tùy chọn bạn muốn sử dụng. Các mã nhận dạng thư viện được đánh dấu màu đỏ.

platfomrio thu vien 5

Cách 2: Sử dụng lệnh trên Terminal

Thực tế mình hay sử dụng cách này hơn, vì nó nhanh và tiện lợi và trông ngầu nữa 😀

Các bạn lên google gõ thư viện bạn cần add. Ví dụ: Con cảm biến siêu âm SRF05

platfomrio thu vien 6

Click vào link của platformio.org, sau đó copy câu lệnh

platfomrio thu vien 7

Trong vs code, mở terminal lên, và paste câu lệnh đó vào bằng phím tắt Shift+insert

platfomrio thu vien 8

Nhấn Enter để cài thư viện, sau khi cài xong, các bạn sẽ thấy thư viện sẽ tự có trên file platformio.ini, nếu không có các bạn dùng cú pháp lib_deps = sau đó copy đường dẫn hiển thị trong Terminal vào là OK

VD: lib_deps = E:\Hoc ESP32\Bai1\.pio\libdeps\esp32doit-devkit-v1

Build và Upload code cho ESP32 bằng Platform io

Mình sẽ chọn một example huyền thoại là Blink Led trên Arduino IDE, copy đoạn code đó, sau đó paste vào VS code

Screenshot 1

Nhớ giữ lại #include <Arduino.h> nhé!

Screenshot 2

Sau đó nhấn Build để biên dịch chương trình, Khi terminal báo Success là ok. Nếu chương trình có lỗi, hãy chuển tab Problems để view lỗi nhé!

Cắm mạch vào và nhấn Upload, nếu đến đoạn connecting mà vscode ko tìm thấy esp, các bạn nhấn nút BOOT trên mạch giữ 1 chút rồi nhả ra nhé. Để ESP vào chế độ Nạp.

Screenshot 3

Sau khi nạp xong, thì xem thành quả thôi!!!

KẾT 

Sau bài này mình hi vọng các bạn đã biết sử dụng Platform io để bắt đầu thực hành các bài hướng dẫn lập trình ESP32 của mình. Đừng quên chia sẻ nếu bạn thấy bài viết này có ích và tham gia Nhóm Anh Em Nghiện Lập Trình để có thể kết nối với những người khác nhé

5/5 - (2 bình chọn)

6 những suy nghĩ trên “Hướng dẫn cài đặt Platform IO lập trình ESP32

  1. Moon nói:

    Chào Ad. Mình mới bắt đầu làm quen với ESP32. Tài liệu có nói ESP32 có thể có 2 giao tiếp I2C. mặc định là 2 chân GPIO21 và GPIO22. Nếu muốn sử dụng 2 chân khác thí dụ GPIO32 và GPIO33 thì làm cách nào? Giả sử như đang kết nối ESP32 với RTC DS1307. Cám ơn Ad những những kiến thức đã chia sẻ.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *