Embedded-hal 1.0 has been released, a toolkit for creating drivers in Rust.

The Rust Embedded Working Group, established to develop technologies that enhance the quality and safety of applications, firmware, and drivers for embedded systems, has presented the first release of the embedded-hal framework, which provides a set of software interfaces for interacting with peripherals commonly used with microcontrollers (for example, providing traits for working with GPIO, UART, SPI, and I2C). The project's developments are written in Rust and are distributed under the Apache 2.0 license.

The package is suitable for writing universal drivers in Rust for various sensors, displays, actuators, and network adapters that are not tied to specific microcontroller models. That is, a driver created based on embedded-hal can be used with any microcontrollers for which a HAL wrapper is provided in the package. The package also offers a flexible built-in error handling system — for each type of error, there is an Error trait that supports debugging and tracking the causes of errors.

Embedded-hal 1.0 is marked as the first stable release of the project that can be used to create working drivers. Work on stabilizing the API has been ongoing since 2020. In addition to embedded-hal, stable releases of auxiliary packages embedded-hal-async with components for creating asynchronous handlers and embedded-hal-nb with an implementation of the polling state model have also been established. Additionally, packages are offered: embedded-hal-bus with tools for working with SPI and I2C buses, embedded-can with support for the CAN (Controller Area Network) bus, and embedded-io with the implementation of traits for byte-oriented input/output suitable for use with UART.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster