Пн фев 27, 2017 15:48:54
Скетч использует 61 896 байт (94%) памяти устройства. Всего доступно 65 536 байт.
Глобальные переменные используют 5 576 байт динамической памяти.
Скетч использует 61 888 байт (94%) памяти устройства. Всего доступно 65 536 байт.
Глобальные переменные используют 19 552 байт динамической памяти.
Вт мар 07, 2017 16:23:36
У МК 128 КБ Flash (кристалл от STM32F103CBT6), т. е. еще много свободной памяти.bolek писал(а):Нужна оптимизация кода, поскольку вычерпаны почти все ресурсы МК по памяти
Вт мар 07, 2017 17:14:09
Вт мар 07, 2017 18:38:51
У F103C8 и F103CB один и тот же кристалл, но в первом случае производителем протестировано 64 КБ, а во втором случае 128 КБ Falsh.bolek писал(а):это дело случая.
bolek писал(а):Результаты компиляции примера SSD1306ShowFont:
- Код:
плата размер кода использовано ОЗУ
Arduino UNO 3490 28
Arduino Leonardo 6960 168
STM32F103C8T6 15028 2824
Результат не радует: несмотря на "всё больше" в STM32F103C8T6, видимо, сказывается неоптимальная генерация кода (использовано ОЗУ) и разрядность (код в памяти программ).
Даже не знаю, стоит ли продолжать рыть дальше...
Upd:
Подумал, ещё поковырял и, вроде, не все так грустно, как сначала показалось:
"Пустышка" - это фактически только код инициализации МК и пустой цикл:
- Код:
void setup() {}
void loop() {}
Из таблицы видно, что инициализация STM32 съедает значительно больше ресурсов, но зато "полезный" код отъедает меньше ресурсов.
Пожалуй, следует STM32 поковырять ещё...
Program size (bytes): 764
Data size (bytes): 0
BSS size (bytes): 0
Total size (bytes): 764 (R/W Memory: 0)
Ср мар 08, 2017 04:01:14
Да это понятно, можно и не в ардуиносреде сгенерить большой код, например, использовать HAL.Мурик писал(а):Не компилируйте в ArduinoIDE для STM32F103C8T6. "Пустышка" должна занимать около 1 КБ flash и не больше сотни байт ОЗУ.
Как-то так (результат компиляции кода мигающего светодиодом с использованием SPL).
Ср мар 08, 2017 11:38:13
HAL имеет смысл использовать для F4 и F7, а для F0 и F1 ее применение нецелесообразно, по моему мнению.bolek писал(а):например, использовать HAL.