4 years, 10 months ago.

STM32L0xx MCU 8MHz operation

Is it possible to run the MCU on this board at 8MHz to reduce active mode consumption? I need it for a very low power application running signal measurements ever second and LoRa transmission every hour.

Question relating to:

The B-L072Z-LRWAN1 LoRa®Discovery kit is a development tool to learn and develop solutions based on LoRa®and FSK/OOK technologies.

1 Answer

4 years, 10 months ago.

Should be possible. Recommend getting the STM32CubeMX configurator program and setting it up for that MCU. You'll need to setup an account with ST to get it but it's free. It has a tab for setting up all the clock registers which is very helpful to keep everything straight. Also helps planning the pinout.

I'm not sure if the mbed build system has options to configure the clock frequency. I would probably import the mbed os source and then just go edit the functions where it sets up the clocks at startup. See function system_init() here for example where the clock registers for that micro are setup.

https://github.com/ARMmbed/mbed-os/blob/master/targets/TARGET_STM/TARGET_STM32L0/TARGET_STM32L072xZ/TARGET_DISCO_L072CZ_LRWAN1/system_clock.c

For example, these settings yield 8MHz SYSCLK Using HSI RC at 16MHz for source: HSI RC div = 4 PLL Source = HSI 16 VCOInput = 4 PLLMul = 4 PLLDiv = 2

If you only need to do something once per second you should also consider putting micro to sleep in between, that will save the most power.

Accepted Answer