[Решено] STMF303 Blink LED, потому что так много памяти используется?

Францискогимено
Чт, 09 ноября 2017 г. 8:13
Привет, друзья, после сбора для STMF303 пример светодиода, чтобы увидеть, как идут ресурсы. Я вижу это:

Sketch использует 10504 байтов (16%).
Var global 2936 байтов (23%)
 
Я уже знаю, что ботинок занимает, но вы можете устранить часть ядра, которое не использовалось.?

Я искал, но я не вижу ничего, что ясно говорит вам, можете ли вы или нет.


приветствие
Фрэн

fpistm
Чт, 09 ноября 2017 г. 8:24 утра
Итак, с Arduino Ide это нормально, но не с vsmicro ?

Францискогимено
Чт 9 ноября 2017 г. 9:06 утра
Я не понимаю вопрос. : шок:

fpistm
Чт, 09 ноября 2017 г., 9:22 утра
Какая среда построения вы используете?
Официальный Arduino Ide ? другой ?

О чистке, которая уже удалена неиспользованная функция.
Но есть несколько предварительных экземпляров (Serial, I2C, SPI,...)

Францискогимено
Чт 9 ноября 2017 г. 9:46 утра
Я использую визуальный микрофон.
Но при использовании функции отладки не работает с этой доской.

После составления светодиода Blink в Visual Micro Ide:
Размер программы: 10.404 байта (использовалось 16% от 65.Максимум 536 байтов) (65,80 секунды)
Минимальное использование памяти: 2328 байтов (19% от максимума 12288 байтов)

После составления Blink Led Ide Arduino:
Sketch использует 10504 байтов (16%).
Var global 2936 байтов (23%)

fpistm
Чт, 09 ноября 2017 г. 10:13 утра
Хорошо, вы используете vsmicro.

Что именно является вашим запросом ?
Уменьшить размер бинарного и потребления оперативной памяти ?

Небольшая разница, кстати, 2 результата, вероятно, поступили из разных встроенных вариантов (-ox, версия GCC,...) Я не использую vsmicro, поэтому я не знаю, как это настроено.

Один из вариантов уменьшения размера - удалить некоторые экземпляры, предварительно установленные, я думаю. А также отключить некоторую функцию HAL (Ex для Blink i2c, SPI, PWM, DAC, ADC не требуется)

Францискогимено
Чт, 09 ноября 2017 г., 10:17
Visual Micro дает эти варианты, это изображение в вложении

Какой идентификатор вы используете?

fpistm
Чт 9 ноября 2017 г. 11:06 утра
по умолчанию -ос.
Кажется, что VSMicro хорошо использует доски.TXT и платформа.TXT ядра.
Как я уже сказал, я не знаю vsmicro.
Чтобы получить небольшой выигрыш, для наброска Blink вы можете установить опцию 2 на сериал, это удалит серийный экземпляр

Францискогимено
Чт, 09 ноября 2017 г., 11:19
Какой IDE вы используете?

fpistm
Чт 09 ноября 2017 г. 12:44
Официальный Arduino Ide

Францискогимено
Чт, 09 ноября 2017 г. 12:53
Плохо то, что у официальной IDE нет отладчика.

Visual Micro работает хорошо, отладчик работает хорошо, в версиях Arduino Board Uno, Nano, Micro, Mega...

Также измените или см. Библиотеки, используемые в проекте, очень быстро из той же идеи Visual Studio.

Я отправил запрос визуальному микроказу.

victor_pv
Чт, 09 ноября 2017 г., 21:39
Похоже, вы можете использовать ядро ​​STM32Duino.
В настоящее время для Arduino существует 3 основных ядра STM32, каждый из которых может использовать немного более или меньше ОЗУ и вспыхивать с минимальным эскизом, но, как отметил FPI, существуют предварительные объекты, которые принимают память, и функции для настройки MCU и Его периферийные устройства занимают вспышки.

Что вы получаете, так это среднее значение для настройки MCU и всех периферийных устройств. Есть несколько потоков по предмету:
ViewTopic.PHP?f = 3&T = 1902&P = 25247&hilit = ... TCH#P25246

Вы могли бы модифицировать ядро ​​и устранить таймеры, порты SPI, USART, GPIO и т. Д. И т. Д., Чтобы уменьшить размер, но в действительности после этого начального размера эскизы не растут не так много, чем ваш собственный код, поэтому, если вы не пишете программу, которая есть Заканчивается памятью, вы можете игнорировать это и просто уйти с тем фактом, что пустой эскиз занимает 10 кб. Пока вы не возьмете всю память, это не изменит MCU, если вы используете 10%, 20%, 50% или 90%.

Францискогимено
Пт 10 ноября 2017 г. 9:16
Привет и спасибо за ответ.
В настоящее время я использую Nucleo-F303K8, который использует MCU STM32F303K8T6 с 64K и 16K RAM.

Я также видел, что у него нет eeprom и эмулирует его в библиотеке, назначая его Flash
EEPROM.Читать и написать об arduino.

Я рассмотрю ваши данные и пост, который вы мне указываете.

Большое спасибо.
Фрэн

STM32L476RG