Expand description

Configure the SERCOM peripherals

The SERCOM module is used to configure the SERCOM peripherals as USART, SPI or I2C interfaces.

Undocumented features

The ATSAMx5x chips contain certain features that aren’t documented in the datasheet. These features are implemented in the HAL based on experimentation with certain boards which have verifiably demonstrated that those features work as intended.

  • UndocIoSet1: Implement an undocumented IoSet for PA16, PA17, PB22 & PB23 configured for Sercom1. The pygamer & feather_m4 use this combination, but it is not listed as valid in the datasheet.

  • UndocIoSet2: Implement an undocumented IoSet for PA00, PA01, PB22 & PB23 configured for Sercom1. The itsybitsy_m4 uses this combination, but it is not listed as valid in the datasheet.

  • PB02 is I2C-capable according to metro_m4. As such, PB02 implements IsI2cPad.

  • PB03 is I2C-capable according to metro_m4. As such, PB03 implements IsI2cPad.

Re-exports

pub use pad::*;

Modules

Use the SERCOM peripheral for I2C communications
Type-level tools to configure SERCOM pads
Use a SERCOM peripheral for SPI transactions
A Future-like interface for SPI transactions
Use the SERCOM peripheral for UART communications

Traits

Type-level enum representing a Serial Communication Interface (SERCOM)

Type Definitions

Type alias for the corresponding SERCOM instance
Type alias for the corresponding SERCOM instance
Type alias for the corresponding SERCOM instance
Type alias for the corresponding SERCOM instance
Type alias for the corresponding SERCOM instance
Type alias for the corresponding SERCOM instance