Note: Renaming of this crate to
em32-hal
is pending, along with the move of the crate into the em32-wg group.
This is an implementation of the embedded-hal API for various Silicon Labs devices in the lineage around the EFM32 Giant Gecko.
Currently, the EFM32GG (Giant Gecko) and EFR32xG1 (original configuration of Mighty, Blue and Flex Gecko) are supported. The complexity of adding chip families probably varies from just adding the device as "works like that other device" (should apply to most EFM32 devices released before around 2016) to "Some functionality is not supported any more and needs workarounds" (eg. when bit-band access becomes mandatory for atomic operations on a register). On the long run, it can be expected to cover the devices supported by the vendor's emlib C library.
The actually used chip is selected by features named like "chip-efm32gg" or "chip-efr32x1"; pick an extern crate to load as "registers" and add the appropriate dependency to a crate typically created by svd2rust.
This is very immature software. So far, only GPIO pins are described in terms
of the HAL's digital
interface.
The board support crates for EFM32GG-STK3700 and Thunderboard (SLTB001a) contain examples of how this crate can be used.
This is licensed under the Apache License or the MIT License at the your option. By contributing to this project, you license your contribution under the same dual-licensed terms unless the contribution itself says otherwise.