MicroPython và ESP32 trong Thí nghiệm Vật lý
Thiết lập ESP32 MicroPython
Bắt đầu với ESP32 và MicroPython
Để bắt đầu hành trình của mình, chúng ta cần chuẩn bị "sân chơi" cho ESP32. Điều này bao gồm việc hiểu cách giao tiếp với nó, nạp "bộ não" MicroPython vào và viết những dòng mã đầu tiên để kiểm tra xem mọi thứ đã sẵn sàng chưa. Bước đầu tiên là làm quen với cấu trúc vật lý của board mạch.
Sơ đồ chân ESP32
Mỗi chân (pin) trên board ESP32 có một chức năng riêng, tương tự như các cổng khác nhau trên máy tính. Một số chân cấp nguồn, một số khác dùng để gửi và nhận dữ liệu. Việc hiểu sơ đồ chân (pinout) là rất quan trọng để kết nối các linh kiện như đèn LED, cảm biến hay động cơ một cách chính xác. Nếu cắm sai, mạch sẽ không hoạt động hoặc thậm chí có thể làm hỏng board.
Đối với các thí nghiệm cơ bản, chúng ta sẽ thường xuyên sử dụng các chân GPIO (General-Purpose Input/Output). Đây là những chân đa năng có thể được lập trình để hoạt động như một đầu vào (đọc trạng thái của một nút nhấn) hoặc một đầu ra (bật/tắt đèn LED). Bên cạnh đó là các chân nguồn như 3V3 (3.3 Volts) và GND (Ground - chân nối đất), là những chân không thể thiếu trong bất kỳ mạch điện nào.
Nạp Firmware và Cài đặt Môi trường
Khi xuất xưởng, ESP32 chưa cài đặt sẵn MicroPython. Chúng ta cần nạp một tệp đặc biệt gọi là firmware. Firmware này chính là trình thông dịch MicroPython, cho phép board mạch hiểu và thực thi mã Python. Quá trình này được gọi là "flashing".
Bạn có thể tải xuống firmware MicroPython mới nhất dành cho ESP32 từ trang web chính thức của MicroPython.
Để nạp firmware, chúng ta sẽ sử dụng một công cụ dòng lệnh có tên là esptool.py. Sau khi cài đặt công cụ này, bạn kết nối ESP32 với máy tính qua cổng USB và chạy lệnh tương tự như sau trong terminal:
# Thay 'COM3' bằng cổng nối tiếp của bạn
# Thay 'esp32-firmware.bin' bằng tên tệp firmware đã tải
esptool.py --chip esp32 --port COM3 --baud 460800 \
write_flash -z 0x1000 esp32-firmware.bin
Sau khi nạp firmware thành công, chúng ta cần một môi trường phát triển tích hợp (IDE) để viết mã. Thonny IDE là một lựa chọn tuyệt vời cho người mới bắt đầu vì sự đơn giản và hỗ trợ tích hợp sẵn cho MicroPython.
Trong Thonny, bạn chỉ cần vào menu Run > Select interpreter..., chọn "MicroPython (ESP32)" và cổng nối tiếp (Port) tương ứng với board của bạn. Khi kết nối thành công, bạn sẽ thấy dấu nhắc lệnh >>> xuất hiện ở cửa sổ Shell phía dưới. Đây chính là REPL - cánh cổng để chúng ta giao tiếp trực tiếp với ESP32.
Lệnh I/O Đầu tiên
Bây giờ, hãy thực hiện một bài kiểm tra kinh điển: làm nhấp nháy đèn LED tích hợp sẵn trên board. Hầu hết các board ESP32 đều có một đèn LED màu xanh được kết nối với chân GPIO 2. Chúng ta sẽ viết một đoạn mã ngắn để bật và tắt nó liên tục.
from machine import Pin
import time
# Khai báo chân GPIO 2 là một đầu ra (Output)
led = Pin(2, Pin.OUT)
# Vòng lặp vô tận
while True:
led.on() # Bật đèn LED
time.sleep(1) # Chờ 1 giây
led.off() # Tắt đèn LED
time.sleep(1) # Chờ 1 giây
Sao chép đoạn mã này vào cửa sổ editor chính của Thonny, lưu nó vào board với tên main.py, và nhấn nút Reset trên ESP32. Bạn sẽ thấy đèn LED màu xanh trên board bắt đầu nhấp nháy. Điều này xác nhận rằng môi trường của bạn đã được thiết lập chính xác và sẵn sàng cho các dự án phức tạp hơn.
Bây giờ bạn đã sẵn sàng để khám phá sâu hơn, hãy kiểm tra lại kiến thức của mình nhé.
Mục đích chính của việc "flashing" firmware MicroPython lên board ESP32 là gì?
Trong một mạch điện tử cơ bản sử dụng ESP32, hai loại chân nào là không thể thiếu để cấp nguồn cho các linh kiện bên ngoài?
Với việc thiết lập đã hoàn tất, chúng ta đã có nền tảng vững chắc để xây dựng các ứng dụng đo lường và điều khiển. Ở phần tiếp theo, chúng ta sẽ bắt đầu kết nối các cảm biến và đọc dữ liệu từ thế giới thực.


