Khóa học chuyên sâu dài hạn 9 - 12 tháng dành cho học sinh THCS & THPT (13-18 tuổi), giúp các em làm chủ trọn vẹn tư duy lập trình nhúng, giao tiếp 20+ linh kiện ngoại vi, xây dựng Web Server Sockets và kết nối đám mây thời gian thực.
Thay vì sử dụng C/C++ khô khan với cú pháp con trỏ phức tạp, MicroPython mở ra cánh cửa sáng tạo phần cứng nhanh chóng, trực quan và hiện đại nhất cho học sinh lứa tuổi THCS & THPT.
Không còn lỗi thiếu dấu chấm phẩy ; hay rò rỉ bộ nhớ con trỏ như C++. Python ép học sinh viết code thụt lề chuẩn chỉ, cấu trúc như tiếng Anh, giúp các em tập trung vào tư duy thuật toán thay vì đánh vật với cú pháp.
Với Thonny IDE, học sinh gõ lệnh led.value(1) và đèn thực tế sáng lên ngay lập tức! Không tốn vài phút chờ nạp biên dịch (compile) như Arduino. Việc gỡ lỗi (Debug) trở nên siêu tốc, sinh động và đầy cảm hứng.
Sức mạnh vượt trội của ESP32 là Wi-Fi & Bluetooth. MicroPython cung cấp các module chuẩn socket, urequests, umqtt.simple. Học sinh có thể tự tạo Web Server, gửi cảnh báo Telegram, tạo Smart Home chỉ với vài chục dòng code.
Nắm vững điện áp 3.3V/5V, chân GPIO, điện trở kéo lên/xuống và an toàn linh kiện.
Đọc cảm biến ADC, xuất xung PWM làm mờ đèn, giao tiếp chuẩn I2C màn hình OLED.
Làm chủ Socket HTTP, cấu trúc Publish/Subscribe MQTT, tương tác REST API đám mây.
Đóng gói sản phẩm, đấu nối nguồn 220V qua Relay, thiết kế vỏ hộp và bảo vệ đồ án.
Thiết kế cho hành trình 9 - 12 tháng. Đủ sâu và thực chiến để học sinh THCS/THPT hoàn toàn làm chủ ngôn ngữ Python và chế tạo thiết bị IoT độc lập.
Học sinh nạp firmware MicroPython vào chip ESP32. Học cú pháp Python chuẩn và cách điều khiển tín hiệu Điện tử cơ sở qua chân GPIO.
if/elif, vòng lặp for/while, Functions, Lists.machine.Pin. Nháy LED, mô phỏng đèn giao thông ngã tư. Băm xung PWM (machine.PWM) làm hiệu ứng đèn nhịp thở (Breathing LED) và điều chỉnh độ sáng.Giao tiếp với các module phức tạp qua chuẩn giao tiếp công nghiệp. Thu thập dữ liệu thực tế và tạo phản hồi vật lý linh hoạt.
dht. Đo khoảng cách chính xác bằng cảm biến siêu âm (HC-SR04) để làm radar lùi xe và đo mực nước bồn chứa.Cốt lõi của khóa học. Đưa phần cứng cục bộ kết nối mạng toàn cầu thông qua chip Wi-Fi tích hợp sẵn của ESP32.
network.WLAN và socket. ESP32 tự tạo Access Point hoặc kết nối Router nhà, host một trang HTML để điều khiển thiết bị trực tiếp qua trình duyệt điện thoại.urequests. Gọi API lấy dữ liệu thời tiết thực tế (OpenWeatherMap) và đồng bộ đồng hồ mạng chính xác tới từng giây qua giao thức NTP.Gắn kết toàn diện kiến thức. Đóng gói sản phẩm phần cứng, xử lý đóng ngắt điện lưới 220V và triển khai dự án Hackathon tốt nghiệp.
Trải nghiệm Bài học số 26: Dùng MicroPython với thư viện Socket tiêu chuẩn để biến ESP32 thành Web Server điều khiển thiết bị qua điện thoại di động.
Hiểu tường tận cách các thiết bị trên mạng giao tiếp với nhau trước khi gõ dòng code đầu tiên.
Trong mô hình mạng IoT cục bộ, mỗi bên đảm nhiệm một vai trò rõ ràng:
network.WLAN(network.STA_IF) kết nối vào Access Point nhà bạn, nhận địa chỉ IP nội bộ (ví dụ: 192.168.1.150).
GET /?led=on HTTP/1.1. ESP32 phân tích chuỗi ký tự này và lệnh cho chân GPIO bật Relay!
Học sinh hiểu rõ bản chất của Internet thay vì chỉ sử dụng các thư viện "mì ăn liền". Đây là hành trang kỹ thuật vô giá để bước vào chuyên ngành Kỹ sư Mạng và Hệ thống Nhúng.
Học sinh sử dụng thư viện socket mở cổng 80 chuẩn HTTP và bóc tách chuỗi HTTP Header truyền đến.
import machine
import network
import socket
# 1. Khởi tạo chân GPIO số 2 nối với LED onboard hoặc Module Relay
led = machine.Pin(2, machine.Pin.OUT)
# 2. Hàm sinh mã HTML cho trang giao diện điều khiển
def web_page():
led_state = "ON (BẬT)" if led.value() == 1 else "OFF (TẮT)"
html = f"""<!DOCTYPE html><html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>ESP32 Smart Home</title>
<style>body {{ font-family: sans-serif; text-align: center; padding: 40px; background: #0f172a; color: white; }}
.btn {{ padding: 15px 30px; font-size: 18px; border-radius: 12px; border: none; cursor: pointer; }}
.btn-on {{ background: #22c55e; color: white; }} .btn-off {{ background: #ef4444; color: white; }}</style>
</head>
<body>
<h1>ESP32 Smart Home Dashboard</h1>
<p>Trạng thái đèn hiện tại: <strong>{led_state}</strong></p>
<p><a href="/?led=on"><button class="btn btn-on">BẬT ĐÈN</button></a>
<a href="/?led=off"><button class="btn btn-off">TẮT ĐÈN</button></a></p>
</body></html>"""
return html
# 3. Mở Socket lắng nghe cổng 80 (HTTP Server)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', 80))
s.listen(5)
print("Server đang chạy trên cổng 80... Sẵn sàng nhận kết nối!")
# 4. Vòng lặp chính tiếp nhận Client
while True:
conn, addr = s.accept()
print("Kết nối từ:", addr)
request = conn.recv(1024)
request_str = str(request)
# Phân tích lệnh GET
if '/?led=on' in request_str:
led.value(1)
print("=> Lệnh: BẬT ĐÈN")
elif '/?led=off' in request_str:
led.value(0)
print("=> Lệnh: TẮT ĐÈN")
# Trả về trang Web cho Client
response = web_page()
conn.send('HTTP/1.1 200 OK\r\n')
conn.send('Content-Type: text/html\r\n')
conn.send('Connection: close\r\n\r\n')
conn.sendall(response.encode())
conn.close()
Mỗi học viên được trang bị bộ Kit phần cứng độc quyền tại trung tâm hoặc hỗ trợ mang về nhà để thực hành xuyên suốt 48 buổi học.
Wi-Fi & BLE 4.2
128x64 Pixels I2C
Cảm biến nhiệt ẩm
Sóng siêu âm đo cự ly
Đóng ngắt điện 220V
Đọc thẻ từ SPI
Giúp con bứt phá từ việc chơi game sang sáng tạo công nghệ. Phụ huynh liên hệ ngay để nhận bài kiểm tra tư duy thuật toán và xếp lớp phù hợp.