跳到主要内容

🧩 Blockr

积木搭子 —— 仿真优先的开源一体化图形化编程 IDE

把嵌入式学习的门槛压到「一个浏览器」:拖积木搭建程序,实时看到生成的代码(Arduino C++ / MicroPython 双语言),一键云编译(SSE 实时日志),然后在浏览器里做指令级仿真——先在仿真里跑通,再上真机。工程可保存、导出、分享,全链路开箱可用。

从积木到点灯,一条链路​

  1. 拖积木 — Blockly 工作区(中文、Zelos 渲染),界面 / 工具箱 / 积木文案支持中英一键切换
  2. 看代码 — 积木实时生成 Arduino C++(setup 去重、引脚冲突警告、类型推断),学积木的同时看懂真代码
  3. 编译 — Go + Fiber 编译服务调用 arduino-cli,内容寻址缓存:改回原代码秒级编译,SSE 实时输出日志
  4. 仿真 — avr8js 指令级仿真 + 串口监视器(文本 / 绘图仪),真机串口也能 Web Serial 直连

仿真玩真的:从 LED 到 ESP32​

  • 指令级仿真(AVR) — LED、按键、ADC、PWM、舵机(P9)、超声波 HC-SR04、串口双向;板型覆盖 UNO / NANO / Mega 2560 / Digispark ATtiny85
  • ESP32 双路线 — C++ 云仿真(服务端 Docker 内 qemu-system-xtensa 跑真固件,WebSocket 串口回传)+ MicroPython 语义仿真(积木生成 → raw REPL 上传即运行,print 进串口监视器)
  • 面包板电路仿真 — 行为级 DC 网络求解:夜灯分压喂 A0、LED 限流电流、拔线浮空与过流告警、电位器 / 热敏 / 蜂鸣器 / 开关元件
  • 虚拟传感器与外设 — A0 电位器 / 光照、A1 温度、超声波距离滑块、舵机角度表盘;LCD1602 指令级仿真,板视图绿屏同步

内置 13 个示例(闪烁 → 自动夜灯 → 温度报警 → 舵机扫摆 → 超声波测距 → LCD1602),带示例与板型的兼容矩阵。

和传统方式比一比​

传统嵌入式学习路径积木搭子 Blockr
环境准备装 IDE、装驱动、配工具链打开浏览器即可开始
第一次点灯接线、排错,半天起步仿真里几分钟点亮
试错成本接错线可能烧硬件仿真随便试,烧不坏
语言过渡单语言单路径积木 ↔ C++ / MicroPython 双语言对照

课堂用法:一个链接分发全班​

老师拖好积木点「🔗 分享」→ 链接发到班级群 → 学生打开即得同款程序。工程压缩进 URL hash,无需注册、无需服务器存储。

真机与路线图​

  • ✅ 真机烧录:Web Serial + STK500v1/v2(UNO / NANO / Mega)+ ESP32(esptool 协议,含 MicroPython 固件一键刷入)
  • ✅ 工程:浏览器保存 / .kbproj 导入导出 / 🔗 分享链接
  • ⏳ 桌面端(Tauri)

技术栈与许可​

  • 前端:Next.js + React + Blockly(Apache-2.0)
  • 仿真:avr8js(MIT)指令级仿真 + QEMU ESP32 云仿真,规格驱动,加载真实 hex 做无头单测
  • 编译服务:Go + Fiber + arduino-cli(内容寻址缓存、SSE 日志流、并发限制)
  • 许可:项目计划以 Apache-2.0 发布,依赖均为宽松许可