Only use prescaler 0 in order to workaround errata 6070 for mask 2N03G and 3N03G - a silicon bug causing I2C to misbehave upon repeated starts. I'm not sure whether MK22FN512VLH12 is affected but better be safe than sorry.

This commit is contained in:
László Monda
2017-07-10 00:18:55 +02:00
parent ed719ab139
commit cd173f98d1

View File

@@ -553,7 +553,7 @@ void I2C_MasterSetBaudRate(I2C_Type *base, uint32_t baudRate_Bps, uint32_t srcCl
/* Search for the settings with the lowest error. Mult is the MULT field of the I2C_F register,
* and ranges from 0-2. It selects the multiplier factor for the divider. */
for (mult = 0u; (mult <= 2u) && (bestError != 0); ++mult)
for (mult = 0u; (mult <= 0u) && (bestError != 0); ++mult)
{
multiplier = 1u << mult;