yefj
Advanced Member level 5
Hello, in the link bellow we have I2C example of efr32.
There are 3 components that i am having trouble to seehow they work together.
The only clock diagram i found is in page 281 of reference manual shown bellow.
i cant see where the CORE_FREQUENCY goes?
why we enable HFLE LFXO I2c gpio ?
how its all allowing the final line i2cInit.freq = I2C_FREQ_FAST_MAX
I cant see the big picture behind it.
I'll be glad to have some intuition i could use to understand this mechanism.
Thanks.
1.
#define CORE_FREQUENCY 14000000
2.
// Enabling clock to the I2C, GPIO, LE
CMU_ClockEnable(cmuClock_I2C0, true);
CMU_ClockEnable(cmuClock_GPIO, true);
CMU_ClockEnable(cmuClock_HFLE, true);
// Starting LFXO and waiting until it is stable
CMU_OscillatorEnable(cmuOsc_LFXO, true, true);
3.
i2cInit.freq = I2C_FREQ_FAST_MAX
There are 3 components that i am having trouble to seehow they work together.
The only clock diagram i found is in page 281 of reference manual shown bellow.
i cant see where the CORE_FREQUENCY goes?
why we enable HFLE LFXO I2c gpio ?
how its all allowing the final line i2cInit.freq = I2C_FREQ_FAST_MAX
I cant see the big picture behind it.
I'll be glad to have some intuition i could use to understand this mechanism.
Thanks.
1.
#define CORE_FREQUENCY 14000000
2.
// Enabling clock to the I2C, GPIO, LE
CMU_ClockEnable(cmuClock_I2C0, true);
CMU_ClockEnable(cmuClock_GPIO, true);
CMU_ClockEnable(cmuClock_HFLE, true);
// Starting LFXO and waiting until it is stable
CMU_OscillatorEnable(cmuOsc_LFXO, true, true);
3.
i2cInit.freq = I2C_FREQ_FAST_MAX
peripheral_examples/series1/i2c/i2c/src/main_efr.c at master · SiliconLabs/peripheral_examples
Simple peripheral examples for Silicon Labs EFM32/EFR32 Series 0, Series 1, and Series 2 devices - SiliconLabs/peripheral_examples
github.com