Skip to content

STM32: I2C peripheral is not reset  #945

@ser-plu

Description

@ser-plu

On I2cMaster::reset there is no actual reset of the I2C peripheral.
If there are some connectivity problems with I2C lines, this could lead, that no event is generated, transaction is not finished and peripheral stays in hanging state.

I think, resetting peripheral needs to be added to the reset routine.

  I2C2->CR1 &= ~I2C_CR1_PE;
  modm::delay(5us);
  I2C2->CR1 |= I2C_CR1_PE;

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions