开始使用嵌入式 Swift 开发 ARM 和 RISC-V 微控制器

我们很高兴推出一个 示例项目仓库,演示了如何使用嵌入式 Swift 在各种微控制器上开发软件。

Swift 是一种可扩展的语言,非常适合编写桌面和移动应用程序、服务器后端和系统软件。正如您 可能已经看到的那样, благодаря 一种新的实验性编译模式,您也可以使用 Swift 来面向 ARM 和 RISC-V 微控制器等嵌入式环境,这些微控制器在构建专业和业余电子项目(如物联网设备)中非常受欢迎。

微控制器是受限环境,并非所有 Swift 的功能都适用。新的嵌入式 Swift 编译模式关闭了某些语言特性,如运行时反射、ABI 稳定性和存在类型,以生成适用于固件的独立二进制文件。尽管关闭了一些语言特性,但嵌入式 Swift 子集仍然感觉非常接近开发者喜爱的“完整”Swift,并且可以轻松地继续编写符合语言习惯、易于阅读的 Swift 代码。您可以在正式接受的 嵌入式 Swift 愿景文档 中深入了解详细信息,并在 每晚构建的可下载工具链 中试用它。

Swift 社区已经开始发布 几个 引人入胜的 项目,这些项目都是使用这种语言模式构建的,我们认为发布一个示例项目集合 swift-embedded-examples 会很有用。

Swift on STM32F746, Raspberry Pi Pico, nRF52840, and ESP32C6
Swift 在 STM32F746、Raspberry Pi Pico、nRF52840 和 ESP32C6 上的应用

该仓库旨在展示嵌入式 Swift 的广泛适用性。这些示例针对不同的微控制器,Swift 可以轻松地在这些微控制器上使用,包括 STM32 开发板、Raspberry Pi Pico、Nordic Semiconductor 开发板,甚至 RISC-V ESP32 开发板。这些示例还涵盖了不同的构建系统和集成选项,例如构建完全独立的 Swift 代码以及将现有 SDK 从开发板供应商桥接到 Swift。

我们鼓励任何感兴趣的人试用这些示例,并帮助我们扩展仓库。我们正在寻找社区贡献,以涵盖更多的微控制器开发板、不同的构建系统以及简单外围设备的使用。

立即试用

如果您想试用现有的示例项目,请访问仓库 swift-embedded-examples。它包含示例目录以及关于如何构建和运行每个示例的说明。

要使用这些示例,请务必安装最新的 开发快照工具链。作为一种实验模式,嵌入式 Swift 尚未在 Swift 的发布版本中提供。

如果您有任何问题或想分享您的经验和想法,请在 Swift 论坛 上联系我们。您的反馈将有助于将嵌入式 Swift 带入未来的版本。