AnsweredAssumed Answered

KL25 blocked after an errate write on MCG_C2 register

Question asked by Alessio Paolucci on Dec 18, 2014
Latest reply on Jan 8, 2015 by Alessio Paolucci

I try to do a driver for setting the clock of the kl25 mcu.


I wrote the FBI to FEE transiction function in this way:


uint32_t fbi2fee (uint32_t fext, uint8_t dmx32, uint8_t drst_drs, uint8_t range0, uint8_t frdiv)


  uint32_t fout_MCG = 0;


  MCG_C2_REG(regmap) &= ~(MCG_C2_RANGE0_MASK);

  MCG_C2_REG(regmap) = MCG_C2_RANGE0(range0);




I think that the problem comes from the fact that in this state transition I forgot to use a temporary variable to clear the field C2_RANGE0 , since I was using the crystal oscillator at 8MHz, and so range0 must be equal to 1 or 2 and I write 0 in C2_RANGE0 field to clear it.

From the moment of this write on the register C2 I can't connect to the MCU.

Seems that SDA work properly, but I can' t connect my PC to MCU.

Help me! How can I unlock the MCU and this situation?

Best regard

Alessio Paolucci