Rust 实现的 embassy 框架,成为了嵌入式开发一流选择!

大家好,我是渔夫。

今天分享主题,Rust 实现嵌入式异步开发框架,成为今天嵌入式开发的主流选择。采集了 Rust 结合异步编程,给嵌入式领域开发带来了革命性的变化。

Embassy 什么?

Embassy 它是一个用 Rust 语言实现的现代嵌入式异步开发框架,它致力于让 async/await 模式成为嵌入式编程的首选。该框架可以看作是嵌入式版本的 Tokio,后者是 Rust 在服务器端异步编程中广泛使用的运行时环境。

Embassy 也是未来嵌入式应用程序的下一代框架,采集了 Rust 编写、其异步功能和 Embassy 库,从而更快地编写安全、正确且节能的嵌入式代码。

Rust + async ❤️ 嵌入式

大家都知道,Rust 是一种速度极快、内存效率极高的编程语言,它不需要运行时、垃圾收集器或操作系统的介入。Rust 的内存安全保证和强大的类型系统能够在编译时期捕捉各种潜在错误,从而减少运行时的问题。

那么,在嵌入式系统中,Rust 的 async/await 特性使得多任务处理变得异常简单和高效,异步任务在编译时被转换成状态机,避免了动态内存分配的需求,并且所有任务都在单个堆栈上运行,无需担心堆栈大小调整的问题。这种设计消除了传统实时操作系统(RTOS)所需的内核上下文切换,使得系统运行更快、占用空间更小。

图片

Embassy 框架特点

  • 专用硬件抽象层(HAL):Embassy 拥有为嵌入式设备定制的硬件抽象层,这有助于简化硬件交互,并为开发者提供一致的接口。

  • 统一的 STM32 支持:给所有受支持的 STM32 设备提供统一的 API 和单一库,使得与 STM32 系列微控制器的接口和操作更加直接和高效了。

  • 统一 API:Embassy 旨在为所有支持的 STM32 设备提供统一的应用程序接口(API)。这种方法简化了跨不同 STM32 设备的代码移植和适配,因为开发者可以依赖一致的编程模型。

  • 独立使用:通过使用独立的 metapac crate 作为单独的库使用,好处就是不用 Embassy 的异步框架或 HAL,开发者也可以根据自己的需求利用 metapac 进行硬件抽象。

  • 低功耗就绪:让你轻松构建具有多年电池寿命的设备,当没有工作要做时,异步执行器自动将核心置于睡眠状态。任务由中断唤醒,等待时没有忙碌循环轮询。

  • 蓝牙:nrf-softdevice crate 为 nRF52 微控制器提供了蓝牙低功耗 4.x 和 5.x 支持。embassy-stm32-wpan crate 为 stm32wb 微控制器提供了蓝牙低功耗 5.x 支持。

  • 网络:embassy-net 网络栈实现了广泛的网络功能,包括如以太网、IP、TCP、UDP、ICMP 和 DHCP。

原创文章,作者:guozi,如若转载,请注明出处:https://www.sudun.com/ask/89770.html

(0)
guozi's avatarguozi
上一篇 2024年6月5日 上午10:31
下一篇 2024年6月5日 上午10:33

相关推荐

  • 网站被攻击立案标准,网站被攻击后果及应对措施有哪些

    网站被攻击的常见形式 1.了解常见网站攻击技术 首先,为了提高网站的安全性,您需要了解常见的网站攻击方式。常见的网站攻击包括SQL 注入、跨站脚本(XSS) 和跨站请求伪造(CSR…

    行业资讯 2024年5月10日
    0
  • 昌都网

    云服务器,相信大家都不陌生。它是当今网络世界中备受关注的热门话题,也是企业和个人必不可少的重要工具。那么,什么是云服务器?它有什么优势?在哪些场景下可以发挥作用?昌都网作为行业领先…

    行业资讯 2024年4月16日
    0
  • 如何选择适合自己的a800gpu服务器?

    近年来,随着人工智能和大数据的快速发展,GPU服务器越来越受到关注。作为云服务器行业的一大创新,GPU服务器不仅在性能上有着巨大优势,还具备广泛的应用场景。而其中最具代表性的a80…

    行业资讯 2024年4月2日
    0
  • 华为云终端CT3100的性能如何?

    随着云计算技术的发展,云终端产品也越来越受到人们的关注。而华为作为领先的网络互联网服务器行业企业,近期推出了其最新款的云终端产品华为云终端CT3100。那么,这款CT3100究竟有…

    行业资讯 2024年4月10日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注