I am using a Nucleo-F103RB board (STM32F103RB) to read two ADC values every 1 second and display these values on an LCD.
When the board is connected to the computer via the USB the ADC values are displayed every second as required; this happens under debug and also when the programme is allowed to run freely with the computer being used solely as the power supply. However, when I attempt to power the board using an external 3V3 power supply the ADC values are displayed every 9 seconds.
To power the board using an external 3.3 V power supply I have followed the suggestions made in the Nucleo User Manual (‘External power supply input: + 3V3’ section). I have:
1) 1) Supplied a 3.3 V supply to the 3V3 pin on CN6 (from a linear regulator); and
2) 2) Removed the 0 ohm resistors across both SB2 and SB12.
Note: the firmware is the same regardless of how the MCU is powered.
Am I right to suspect that the internal 8 MHz HSI clock is used to drive the system clock (SYSCLK) under the externally powered arrangement rather than the 72 MHz PLL clock? If so, can anyone suggest why the HSI clock is being used to drive SYSCLK rather than the PLL and how I can overcome this? Or is there another reason?