Hosting a WebSite on a Disposable Vape
8 months ago
- #DIY
- #web-server
- #embedded
- 作者收集一次性电子烟,最初是为了回收电池,但后来被其先进功能吸引,例如USB-C接口和可充电电池。
- 在电子烟中发现PUYA芯片——一款ARM Cortex-M0+微控制器,由此萌生了在上面搭建网络服务器的想法。
- 该微控制器配置适中:24MHz主频CPU、24KiB闪存、3KiB内存,但足以支撑网络服务器运行。
- 通过半主机模式和SLIP(串行线路互联网协议),借助虚拟终端和pyOCD工具实现了互联网连接。
- 采用轻量级IP协议栈uIP搭建服务器,并针对ARM架构对齐问题进行了代码修改。
- 初始性能较差(页面加载约20秒),经批量读写等优化后显著提升至160毫秒级响应。
- 该项目几乎耗尽所有可用内存和闪存,证实了在一次性电子烟微控制器上托管网站的可行性。
- 趣味性新增JSON API接口,可显示请求计数和微控制器唯一标识码。