TinyGo 是一种 Go 语言编译器,旨在用于微控制器、WASM 和命令行实用程序开发等领域。
TinyGo 使用 Go 项目中编写的实用程序和库,同时提供基于 LLVM 项目工作的编译程序的替代方法。
项目目标:
- 确保可执行文件的最小大小。
- 支持最多数量的微控制器。
- WebAssembly 支持。
- 良好的 CGo 支持。
- 支持原始 Go 代码,无需更改。
在微控制器上切换 LED 的示例用法:
包主
进口 (
“机器”
“时间”
)
func main(){
led := 机器.LED
led.Configure(machine.PinConfig{模式:machine.PinOutput})
为{
led.Low()
时间.睡眠(时间.毫秒 * 1000)
led.High()
时间.睡眠(时间.毫秒 * 1000)
}
}
0.6.0 版包含许多更改。 主要涉及改进对 CGo、js.FuncOF (Go 1.12+) 的支持,以及两个新的开发板:Adafruit Feather M0 和 Adafruit Trinket M0。
完整的变更列表可在以下网址找到: GitHub 项目页面.
来源: linux.org.ru