LẬP TRÌNH

Thư viện giao diện cho
vi điều khiển ESP32

Chọn vi điều khiển và khung nền, nhận thiết kế thư viện giao diện cho ESP32, tách bạch firmware và web.

Dùng để: Thiết kế thư viện giao diện cho ESP32, đóng gói khởi tạo, tách bạch firmware và giao diện web.

Nội dung prompt

VAI TRÒ
Bạn là lập trình viên hệ thống nhúng, chuyên phát triển thư viện cho vi điều khiển ESP32.

NHIỆM VỤ
Thiết kế thư viện giao diện người dùng cho ESP32 theo yêu cầu trong ĐẦU VÀO.

ĐẦU VÀO
- Vi điều khiển: [VÍ DỤ: ESP32]
- Hệ thống build: [VÍ DỤ: PLATFORMIO]
- Khung nền: [VÍ DỤ: ARDUINO-ESP32]
- Chuẩn ngôn ngữ: [VÍ DỤ: C++14]
- Máy chủ web: [VÍ DỤ: ESPASYWEBSSERVER]
- Đối tượng điều khiển: [VÍ DỤ: ĐÈN, QUẠT, CẢM BIẾN]

QUY TẮC
1. Viết bằng C++ hiện đại theo phong cách RAII, bật cờ tắt RTTI.
2. Đóng gói toàn bộ luồng khởi tạo bên trong thư viện.
3. Chạy theo mô hình tác vụ nền, không chặn vòng lặp chính.
4. Giữ giao diện REST rõ ràng, có điểm cập nhật trạng thái.
5. Không nhúng HTML, CSS hay JavaScript vào firmware.
6. Giao diện web chạy theo lược đồ, chỉ nhận dữ liệu JSON từ thiết bị.
7. Cho phép người dùng đặt tên thành phần và tham số riêng.
8. Có cơ chế gỡ lỗi ngay lúc biên dịch.
9. Tách bạch hoàn toàn frontend và backend.

KHUÔN ĐẦU RA
Cấu trúc thư viện, mã từng tệp, mô tả các điểm REST và ví dụ dùng tối thiểu.

Thay nội dung trong dấu [ ] trước khi sử dụng.

Mẹo tinh chỉnh

Thư viện nhúng tốt phải nhẹ và không chiếm tài nguyên quá mức, nên hãy kiểm tra cả bộ nhớ chương trình lẫn bộ nhớ động sau khi biên dịch. Việc tách firmware và web giúp bạn sửa giao diện mà không phải nạp lại mạch, hãy giữ vững nguyên tắc này. Đặt tên thành phần cho phép tái dùng thư viện ở nhiều dự án, đừng gắn cứng tên thiết bị trong mã. Nếu cần gỡ lỗi, dùng cơ chế báo lỗi lúc biên dịch thay vì chờ chạy mới phát hiện.

Prompt khác cùng nhóm

Dựng ứng dụng web tạo avatar cá nhân hóaNêu các phong cách và trường mô tả, nhận về mã ứng dụng web tạo avatar với lưới kết quả và lịch sử lưu trên máy.Xem promptTư vấn di chuyển hệ thống lên AWSMô tả hệ thống hiện tại, nhận về phương án di chuyển lên AWS, điểm cần cân nhắc và thứ tự thực hiện.Xem promptĐóng vai chuyên gia lập trình Swift và iOSNêu đoạn mã và mục tiêu, nhận về hướng dẫn Swift hiện đại, SwiftUI và xử lý bất đồng bộ theo chuẩn của Apple.Xem promptDựng trang HTML hiện lời nhắn khi nhấp chuộtĐiền lời nhắn và tông màu, nhận về một tệp HTML nhẹ, nhấp vào màn hình là hiện thông điệp.Xem promptThiết kế hệ thống nhiều tác nhân AINêu bài toán và các vai trò, nhận về sơ đồ hệ thống nhiều tác nhân, cách nhớ ngữ cảnh và hàng rào an toàn.Xem promptViết Bash script tự động hóa chuẩn chuyên nghiệpMô tả công việc cần tự động, nhận về Bash script có xử lý lỗi, tô màu đầu ra và cờ trợ giúp đầy đủ.Xem promptDựng ứng dụng web nhật ký và phản hồi bản thânMô tả lĩnh vực và giọng phản hồi, nhận về đặc tả ứng dụng web ghi nhật ký ngày và nhận lại lời nhận xét cá nhân.Xem promptThiết kế hệ thống điều hướng cho ứng dụng di độngMô tả ứng dụng và số màn hình, nhận về phương án điều hướng dễ hiểu kèm lý do và các điểm cần kiểm thử.Xem promptĐóng vai kiến trúc sư kỹ thuật di động Native và CloudNêu bài toán ứng dụng di động, nhận về phương án kiến trúc Native kết hợp Cloud chạy tốt cả khi mất mạng.Xem prompt