Nhóm GurgleApps đã trở lại với một dự án Raspberry Pi Pico W thú vị khác: một máy chủ web dựa trên Pico W. Nhưng dự án này không chỉ phục vụ các trang web — nó còn có thể chạy mã Python của bạn trên Pico W thông qua giao diện web.
Máy chủ web có thể truy cập được bằng bất kỳ thiết bị nào có trình duyệt web, trên mạng cục bộ hoặc mạng bên ngoài. Dự án được mã hóa bằng MicroPython và ở mức cơ bản, nó hoạt động với hai tệp. Chi tiết cấu hình Wi-Fi được lưu trữ trong config.py và mã dự án được lưu trữ trong main.py (MicroPython sẽ tự động chạy khi bật nguồn).
Phần thông minh của dự án này là sự trừu tượng. Thay vì làm người dùng bối rối với sự phức tạp, nhóm đã tạo mô-đun máy chủ web của riêng mình (gurgleapps_webserver.py) mà mã dự án nhập và sử dụng.
Mã hóa trừu tượng là một cách tốt để giúp người dùng cảm thấy thoải mái với một dự án/ngôn ngữ trước khi vén bức màn để tiết lộ sự phức tạp của một ngôn ngữ mạnh mẽ.
Hình ảnh 1 của 2
GurgleApps thể hiện máy chủ web bằng cách gói một dự án để điều khiển đèn LED trên bo mạch của Pico bằng giao diện web khá nhạy. Tạo một URL tùy chỉnh, người dùng nâng cao có thể truy cập trực tiếp vào chức năng và điều khiển đèn LED. Cách tiếp cận nâng cao này cũng trả về một đối tượng JSON cho người dùng, trong trường hợp này, đối tượng này cho chúng ta biết độ trễ hiện tại (bật/tắt nhấp nháy) của đèn LED và trạng thái hiện tại của đèn LED. Các dự án ví dụ khác bao gồm một máy phát tần số được sử dụng trong một thí nghiệm Vật lý để trực quan hóa các rung động trong cát (hoặc màu đỏ tía). Dữ liệu tần số cũng được hiển thị trên một màn hình OLED nhỏ.
Sau đó, nhóm sẽ đi vào chi tiết về cách tạo các chức năng của riêng bạn có thể được gọi thông qua giao diện web. Chi tiết này là thứ bán dự án — không cần sử dụng nhiều mã, chúng tôi có thể tạo giao diện web cho rô-bốt hoặc xem dữ liệu cảm biến theo thời gian thực trong một trang web.
Giao diện người dùng được tạo bằng HTML và CSS. Các tệp này được lưu trữ trong thư mục www tải xuống Pico của dự án. Thay đổi đồ họa và bố cục của giao diện người dùng sẽ là một nhiệm vụ nhanh chóng và dễ dàng đối với hầu hết người học.
Thật tuyệt khi thấy nhóm GurgleApps xây dựng một dự án đơn giản nhưng mạnh mẽ khác dựa trên bộ vi điều khiển yêu thích của chúng tôi. Bạn có thể tìm hiểu thêm về dự án qua blog GurgleApps và tìm thấy tất cả mã thô trong kho lưu trữ GitHub này.