stm32duino / STM32LowPower

Arduino Low Power library for STM32
183 stars 52 forks source link

support for stm32c031c6t6 #93

Closed ChrisKal closed 1 year ago

ChrisKal commented 1 year ago

Hi is is possiblible this library to be used with stm32c031c6t6 and nucleo-c031c6 ?

At the moment I am getting that flash is overflowed.

c:/users/chrisk/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/12.2.1-1.2/bin/../lib/gcc/arm-none-eabi/12.2.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\ChrisK\AppData\Local\Temp\arduino_build_968844/stm32_c0_lowpower_test.ino.elf section .rodata' will not fit in regionFLASH' c:/users/chrisk/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/12.2.1-1.2/bin/../lib/gcc/arm-none-eabi/12.2.1/../../../../arm-none-eabi/bin/ld.exe: region `FLASH' overflowed by 672 bytes collect2.exe: error: ld returned 1 exit status exit status 1 Error compiling for board Nucleo-64.

Is it possible 32k of flash tobe consumed with just Timewakedup example?

https://github.com/stm32duino/STM32LowPower/blob/main/examples/TimedWakeup/TimedWakeup.ino

Thanks in advance Chris

fpistm commented 1 year ago

Hi @ChrisKal Yes C0 is supported anyway, it requires to made some optimization to be able to use it. For example for Timewakedup you could simply disable the UART support as it is not required. It is also possible to deactivate some useless features and/or redefine some pinmap array to gain place.

https://github.com/stm32duino/Arduino_Core_STM32/wiki/HAL-configuration#example-of-blinkino-for-nucleo-l031k6-with-32768-bytes-of-flash-and-8192-bytes-of-ram

https://github.com/stm32duino/Arduino_Core_STM32/wiki/Custom-definitions#custom-pinmap-array

Anyway, thanks to #91 you will be able to have it functional without any custom optimization as it reduces drastically the flash size required.

Sketch uses 19264 bytes (58%) of program storage space. Maximum is 32768 bytes.
Global variables use 1340 bytes (10%) of dynamic memory, leaving 10948 bytes for local variables. Maximum is 12288 bytes.