自定义芯片一直是 Velxio 的隐藏超能力:当您需要的元件不在目录中时,您只需编写几行 C 代码,我们将其编译为 WebAssembly,结果就像真正的硅片一样工作——引脚、I2C、SPI、UART、定时器,甚至帧缓冲。今天,它们不再默默无闻。本次发布对整个体验进行了端到端的重新设计。
一个编辑器搞定一切
旧流程将芯片分散在两个界面中:一个用于 C 源码和清单的模态对话框,以及一个用于运行复古 CPU 芯片程序的常规编辑器。现在这已成为过去。每个自定义芯片现在都在文件资源管理器中拥有自己的部分,chip.c 和 chip.json 作为普通文件存在——在您编写草图的同一个 Monaco 编辑器中编辑,并在您输入时对清单进行 JSON 模式验证。按下 运行 按钮,芯片会在其源码更改时重新编译;每个芯片的编译按钮让您在单独迭代 C 代码时获得快速反馈循环。
仿真运行时可操控的传感器
自定义芯片现在可以在其清单中声明实时控件:
"controls": [
{ "id": "ppm", "label": "CO2 (ppm)", "type": "range",
"min": 400, "max": 5000, "step": 10, "unit": "ppm" }
]
每个控件驱动具有相同 id 的属性。在仿真运行时点击芯片,拖动滑块,vx_attr_read 立即返回新值——无需重新编译,无需重启。示例库提供了两个以此方式构建的模板:一个CO2 传感器,其模拟输出跟随 ppm 滑块;以及一个I2C 环境传感器,在寄存器映射后面带有温度和湿度滑块。芯片 DAC 输出现在也能到达板载 ADC,因此 analogRead(A0) 会实时跟随您的滑块。
任何现有芯片,只要其属性声明了 min 和 max,就会自动获得滑块——无需更改清单。
我的芯片:一次构建,随处复用
专业版用户可获得个人芯片库。从文件资源管理器部分保存芯片后,它会出现在您的元件选择器中——在每个项目中,都带有 CUSTOM 徽章。拖放它会将源码、清单和编译后的二进制文件复制到项目中,因此项目保持自包含且可共享。
AI 代理在此次发布中也获得了重大升级
向应用内代理请求“一个带有滑块、可在仿真期间移动的 CO2 传感器”,它就能构建一个——整个发布始于我们观察它在完成这一任务时的失败。代理的芯片知识存在错误,导致生成无引脚、惰性的芯片;这已修复,服务器现在会在每条导线上验证芯片引脚,并且代理可以将芯片保存到“我的芯片”并复用它们。通过 MCP 桥接 连接的外部代理也获得相同的能力,包括服务器端编译工具。
SDK——velxio-chip.h 头文件以及不断增长的开源芯片集合(包括我们的洁净室复古 CPU 系列)——位于 github.com/velxio/velxio-chips。文档中有完整介绍:入门指南、可编程传感器、我的芯片以及完整的 API 参考。