Staticmem
Солнце 26 ноября 2017 г. 7:26 утра
Во время работы над моим проектом, который использует модуль BluePill, я заметил, что приближаюсь к полному пределу вспышки 64 КБ, о котором я был несколько удивлен. Проведение общего поиска привело меня к форумам здесь, где в одной из ветров были разговоры о том, как чертежи по сравнению с Atmel 328 использует гораздо больше флэш -памяти памяти. Общая концентрация заключалась в том, что главной причиной была из -за серийной поддержки USB.
Недавно, когда я использовал 328 Uno, я использовал Arduino-Builder и Scripts, когда предпочитаю использовать командную строку и мой выбор редактора командной строки. Я думаю, что метод Arduino-Builder позволяет больше конфигурации помимо того, что достижимо в IDE. В настоящее время для моего кода проекта Bluepill я использую IDE, но переключусь на метод командной строки.
Я хочу восстановить основной код для BluePill с определенными вещами, такими как USB Serial Offabled. Мне не нужен USB-сериал, и если я это сделаю, я подключите USB-сериал в мою плату, в котором используется один из серийных портов HW. Не уверен, какой другой код я также смог бы удалить, чтобы сохранить пространство. Я хотел бы придерживаться библиотек Arduino, которые мне не нужно делать модифицированные версии или писать свой собственный код поддержки. Я хочу достичь моего проекта и кода поддержки в пространство 64K - это то, чего я хочу достичь.
Есть ли какие -либо темы о том, что разговоры о том, как сделать это или какие -либо идеи о том, как я могу уменьшить отпечаток ноги памяти? Я заметил в окне сборки IDE определяется, такие как -dconfig_maple_mini_no_disable_debug = 1 -deserial_usb -dgeneric_bootloader. Могу ли я сойти с рук с отключением этих определений?
Если я создам новый эскиз с setup () и loop (), оба пусты, он придет к 12548 байтам (19%) пространства для хранения программ, так что это так, прежде чем я даже начну.
Последний вопрос будет ли инструмент GCC «полоска» уменьшит размер? Обычно я использую это при строительном коде для процессоров Intel.
Недавно, когда я использовал 328 Uno, я использовал Arduino-Builder и Scripts, когда предпочитаю использовать командную строку и мой выбор редактора командной строки. Я думаю, что метод Arduino-Builder позволяет больше конфигурации помимо того, что достижимо в IDE. В настоящее время для моего кода проекта Bluepill я использую IDE, но переключусь на метод командной строки.
Я хочу восстановить основной код для BluePill с определенными вещами, такими как USB Serial Offabled. Мне не нужен USB-сериал, и если я это сделаю, я подключите USB-сериал в мою плату, в котором используется один из серийных портов HW. Не уверен, какой другой код я также смог бы удалить, чтобы сохранить пространство. Я хотел бы придерживаться библиотек Arduino, которые мне не нужно делать модифицированные версии или писать свой собственный код поддержки. Я хочу достичь моего проекта и кода поддержки в пространство 64K - это то, чего я хочу достичь.
Есть ли какие -либо темы о том, что разговоры о том, как сделать это или какие -либо идеи о том, как я могу уменьшить отпечаток ноги памяти? Я заметил в окне сборки IDE определяется, такие как -dconfig_maple_mini_no_disable_debug = 1 -deserial_usb -dgeneric_bootloader. Могу ли я сойти с рук с отключением этих определений?
Если я создам новый эскиз с setup () и loop (), оба пусты, он придет к 12548 байтам (19%) пространства для хранения программ, так что это так, прежде чем я даже начну.
Последний вопрос будет ли инструмент GCC «полоска» уменьшит размер? Обычно я использую это при строительном коде для процессоров Intel.
Пито
Солнце 26 ноября 2017 г. 9:28 утра
Bluepill получил 128 КБ вспышки.
Стивестронг
Солнце 26 ноября 2017 г. 9:44
Помимо того, что сказал Пито, используйте Stlink для загрузки программного обеспечения, таким образом вы получаете 2K больше флэш -места.
В досках.TXT вы можете удалить, затем опция -deserial_usb для записи метода загрузки Stlink.
В досках.TXT вы можете удалить, затем опция -deserial_usb для записи метода загрузки Stlink.
Rogerclark
Солнце 26 ноября 2017 г. 10:08
Загрузки серийных и BMP не используют загрузчик или не имеют USB -серийного
Пса. 64K - это довольно много кода, или, возможно, у вас большой набор данных E.глин. немного аудио
Пса. 64K - это довольно много кода, или, возможно, у вас большой набор данных E.глин. немного аудио
Staticmem
Солнце 26 ноября 2017 г. 11:13
@pito: Насколько я понимаю, что чертеж - 64K Flash. Это то, что я выбрал в IDE. STM32F103C8T6.
@Stevestrong: Я использую только Stlink для программирования, но я был под пониманием, который обрабатывается самой частью STM32 в собственном ПЗУ, даже если я полностью вытекает содержимое вспышки? Я посмотрю на доски.TXT -файл, как вы предлагаете, но я не знаю, использует ли он один, как IDE всегда жалуется:
Не мог найти доски.txt in/home/usert/arduino/ardware/arduino_stm32-master/examples. Это до 1.5?
Хотя я думаю, что Роджер упомянул в другой теме, которая является каким -то предупреждением из -за того, как в настоящее время структурирована его библиотека. Где я найду доски.Файл TXT, который нуждается в изменении?
@RogerClark: Ничего такого большого и, конечно, нет аудио. У меня есть какой -то код RTC, оставшийся от 328 сборки, который не имеет вообего места там (это экземпляр RTC_DS1307), просто чтобы он мог скомпилировать и необходимо заменить, и я буду использовать встроенный нативный RTC. Также используйте SDFAT, входы ADC, 2 серийных порта HW, Emonlib и т. Д. (незаконченный энергетический монитор). Мне нужно провести это http: // danieleff.com/stm32/map_analizer/ и проверьте это более подробно, чтобы увидеть, куда он идет.
@Stevestrong: Я использую только Stlink для программирования, но я был под пониманием, который обрабатывается самой частью STM32 в собственном ПЗУ, даже если я полностью вытекает содержимое вспышки? Я посмотрю на доски.TXT -файл, как вы предлагаете, но я не знаю, использует ли он один, как IDE всегда жалуется:
Не мог найти доски.txt in/home/usert/arduino/ardware/arduino_stm32-master/examples. Это до 1.5?
Хотя я думаю, что Роджер упомянул в другой теме, которая является каким -то предупреждением из -за того, как в настоящее время структурирована его библиотека. Где я найду доски.Файл TXT, который нуждается в изменении?
@RogerClark: Ничего такого большого и, конечно, нет аудио. У меня есть какой -то код RTC, оставшийся от 328 сборки, который не имеет вообего места там (это экземпляр RTC_DS1307), просто чтобы он мог скомпилировать и необходимо заменить, и я буду использовать встроенный нативный RTC. Также используйте SDFAT, входы ADC, 2 серийных порта HW, Emonlib и т. Д. (незаконченный энергетический монитор). Мне нужно провести это http: // danieleff.com/stm32/map_analizer/ и проверьте это более подробно, чтобы увидеть, куда он идет.
Пито
Солнце 26 ноября 2017 г. 11:21
Пито: Насколько я понимаю, чертеж - 64K Flash. Это то, что я выбрал в IDE. STM32F103C8T6.
Да, ваше понимание верно, согласно таблице данных, C8 Bluepill - 64 КБ.
На самом деле это 128 КБ.
Это похоже на «сумму n от n = 1 до бесконечности равна бесконечности» с моим пониманием, но на самом деле она равна -1/12.
На самом деле это 128 КБ.
Это похоже на «сумму n от n = 1 до бесконечности равна бесконечности» с моим пониманием, но на самом деле она равна -1/12.
Стивестронг
Солнце 26 ноября 2017 г. 12:07
Везде, где это возможно, избегайте «нового» конструктора, потому что он свяжет огромную нежелательную часть GCC LIB.
2K, на который я имел в виду, является загрузчиком STM32DUINO (во Flash), который позволяет загружать через USB DFU. Для загрузки по stlink это не актуально, хотя.
доски.текст
Вы можете использовать 128K на синей таблетке. Попробуй и ты увидишь
2K, на который я имел в виду, является загрузчиком STM32DUINO (во Flash), который позволяет загружать через USB DFU. Для загрузки по stlink это не актуально, хотя.
доски.текст
Вы можете использовать 128K на синей таблетке. Попробуй и ты увидишь
Staticmem
Солнце 26 ноября 2017 г. 13:10
[Стивестронг - Солнце 26 ноября 2017 12:07] - Везде, где это возможно, избегайте «нового» конструктора, потому что он свяжет огромную нежелательную часть GCC LIB.Я не использовал «новый» в своем коде, но не знаю, что делают либера.
[Стивестронг - Солнце 26 ноября 2017 12:07] - 2K, на который я имел в виду, является загрузчиком STM32DUINO (во Flash), который позволяет загружать через USB DFU. Для загрузки по stlink это не актуально, хотя.Спасибо за доски.TXT ссылка.
доски.текст
Вы можете использовать 128K на синей таблетке. Попробуй и ты увидишь
Я искал на 128K, и то, что вы, ребята, кажется правильным. Если доска действительно 128 тыс., То, на самом деле у меня нет проблем, если это можно полагаться (это не бизнес -проект). Я слышал истории о том, что ST набил там листы данных, прежде чем вызывает горе для инженерных компаний.
Кто -нибудь загрузил большое случайное изображение мусорного ведра с известной суммой MD5 (скажем, ~ 127 МБ), затем прочитал его обратно и проделал проверку суммы MD5 или еще лучше байт для байта с исходным изображением?
ZMEMW16
Солнце 26 ноября 2017 г. 14:26
@staticmem
Я посмотрю на доски.TXT -файл, как вы предлагаете, но я не знаю, использует ли он один, как IDE всегда жалуется:
Не мог найти доски.txt in/home/usert/arduino/ardware/arduino_stm32-master/examples. Это до 1.5? Если я сберусь с предупреждающим сообщением, я прикоснулся <Справочник упомянутых домов.txt '(linux)
или просто создайте доски.TXT -файл в нем (WIN)
SRP
Не мог найти доски.txt in/home/usert/arduino/ardware/arduino_stm32-master/examples. Это до 1.5? Если я сберусь с предупреждающим сообщением, я прикоснулся <Справочник упомянутых домов.txt '(linux)
или просто создайте доски.TXT -файл в нем (WIN)
SRP
Стивестронг
Солнце 26 ноября 2017 г. 16:16
[Staticmem - Солнце 26 ноября 2017 г. 13:10] - Кто -нибудь загрузил большое случайное изображение мусорного ведра с известной суммой MD5 (скажем, ~ 127 МБ), затем прочитал его обратно и проделал проверку суммы MD5 или еще лучше байт для байта с исходным изображением?Нет, но я использовал программное обеспечение с размером 124 тысяч, и оно сработало.
Mrburnette
Солнце 26 ноября 2017 г., 17:20
[Стивестронг - Солнце 26 ноября 2017 г. 16:16] -Я в лагере Стива.
Нет, но я использовал программное обеспечение с размером 124 тысяч, и оно сработало.
Я помню пост в Ардуино.Форум CC, на котором был расстроен OP, потому что он/он имел так много оставшейся неиспользованной вспышки, и недостаточно использование предположило им, что они используют слишком «большой» AVR для там целей.
Мы все смеемся сейчас.
Но что, если у них был действительно хороший аргумент? Если они переносят на крошечный_авр, такой как T85? Это очень интересно, даже разумная, когда в то время UC _328p был дешевле по количеству == 1 по сравнению с T85?
Вышесказанное все риторичнее, но просто выбрасывается, чтобы задуматься; Для небольших хобби -проектов с ценами на доски UC + около 3 долларов США, мы даже заботимся? я не делаю. В более чем 100 коммерческих подразделениях, вам лучше поверить, что я нанеслю свою шляпу по закупкам.
Луча
Rogerclark
Солнце 26 ноября 2017 г. 8:50 вечера
КСТАТИ.
В некоторых редких случаях синие таблетки могут иметь 64 тыс’S просто подавляющее большинство, кажется, имеет 128 тыс., Поскольку доходность производства STMS настолько высока, они надевают’T есть много деталей с 50% дефектной вспышкой, которую они надеялись продать в качестве STM32F103C8.
Таким образом, на большинстве плат Bluepill есть STM32F103CB, но это’S отмечен как C8
В некоторых редких случаях синие таблетки могут иметь 64 тыс’S просто подавляющее большинство, кажется, имеет 128 тыс., Поскольку доходность производства STMS настолько высока, они надевают’T есть много деталей с 50% дефектной вспышкой, которую они надеялись продать в качестве STM32F103C8.
Таким образом, на большинстве плат Bluepill есть STM32F103CB, но это’S отмечен как C8
Mrburnette
Вт 28 ноября 2017 г. 13:59
... Эта проблема Flash 64 против 128 может быть более сложной, поскольку никто не рассмотрел проблему QC.
Что, если Методы производства великолепны, а Flash дает 128, но есть «проблема» на странице или двух? Чип отмечен как 64 тыс., И хотя остальные 64K доступны, возможно, есть проблема с производительностью или мягкая ошибка.
Я знаю, что флэш -тесты не написаны как тесты ОЗУ с циклами миллионов марширования 1, 0, комплиментов, альтернатив и т. Д. Я подозреваю, что производственные тесты будут использовать все 1 и все 0 и, возможно, комплименты. Помните, что Flash имеет верхний предел на записи, поэтому тестирование производства QA, вероятно, будет < 1% полезного жизненного цикла.
Это все академическое, но если у кого -то есть опыт работы с тестированием QA на производственных флэш -модулях, их опыт был бы полезен, чтобы поделиться.
У Клайва есть несколько интересных комментариев вокруг середины страницы.
Луча
Что, если Методы производства великолепны, а Flash дает 128, но есть «проблема» на странице или двух? Чип отмечен как 64 тыс., И хотя остальные 64K доступны, возможно, есть проблема с производительностью или мягкая ошибка.
Я знаю, что флэш -тесты не написаны как тесты ОЗУ с циклами миллионов марширования 1, 0, комплиментов, альтернатив и т. Д. Я подозреваю, что производственные тесты будут использовать все 1 и все 0 и, возможно, комплименты. Помните, что Flash имеет верхний предел на записи, поэтому тестирование производства QA, вероятно, будет < 1% полезного жизненного цикла.
Это все академическое, но если у кого -то есть опыт работы с тестированием QA на производственных флэш -модулях, их опыт был бы полезен, чтобы поделиться.
У Клайва есть несколько интересных комментариев вокруг середины страницы.
Луча
victor_pv
Вт 28 ноября 2017 г. 15:25
[Staticmem - Солнце 26 ноября 2017 г. 13:10] -С Stlink вы можете загрузить любые случайные данные, которые вы хотите, чтобы MCU заполняли память, затем прочитайте ее, чтобы проверить. Я сделал это и работал нормально.
Кто -нибудь загрузил большое случайное изображение мусорного ведра с известной суммой MD5 (скажем, ~ 127 МБ), затем прочитал его обратно и проделал проверку суммы MD5 или еще лучше байт для байта с исходным изображением?
Также прошел тест памяти в дополнительной оперативной памяти на других MCU и запустите эскиз, который записывает и считывает различные тестовые шаблоны в память, например, типичный инструмент для проверки MEM, и запустите его в течение нескольких часов без проблем. Результаты были где -то на форуме.
Консенсус, по -видимому, является флэш -памятью, а RAM не являются дефектными, а STM будет использовать один кремниевый кусок для нескольких продуктов. Это не гарантировано, люди нашли MCU C8, у которых было всего 64 КБ, но я не видел, чтобы кто -то находил 128 КБ, но с дефектами.
@Ray, это комментарий от Клайва, на который вы ссылаетесь?
"...Выбор для того, чтобы сделать детали 256 КБ в результате выбора, не тратить время на тестирование за пределы этого, а не биннирующие устройства в какой -то момент ниже полной емкости."
Если мы пройдем это, то, возможно, любой, кто хочет использовать полную вспышку, должен пройти полный тест 00 и ff со Stlink (или мы можем написать эскиз для тестирования, который работает, скажем, 3 или 4 цикла моделей, 00, FF, 66, АА)
Mrburnette
Ср 29 ноября 2017 г. 13:35
[victor_pv - Вт 28 ноября 2017 г. 15:25] -Да, это сводная проблема в посте, который я связал ранее.
@Ray, это комментарий от Клайва, на который вы ссылаетесь?
"...Выбор для того, чтобы сделать детали 256 КБ в результате выбора, не тратить время на тестирование за пределы этого, а не биннирующие устройства в какой -то момент ниже полной емкости."
Если мы пройдем это, то, возможно, любой, кто хочет использовать полную вспышку, должен пройти полный тест 00 и ff со Stlink (или мы можем написать эскиз для тестирования, который работает, скажем, 3 или 4 цикла моделей, 00, FF, 66, АА)
Я постоянно поражается низкой ценной электроникой на сегодняшнем рынке. Тем не менее, одна из причин, что цены настолько низкие, заключается в том, что производители редко делают сжигание продуктов. Не только готовые продукты не сгорели, многие из внутренних компонентов не сжигаются. Хотя производственные процессы очень хороши, они не составляют 100%, и каскадные компоненты для нескольких производителей неизбежно приведут к дефектному потребительскому продукту где -то на рынке: это лишь факт нынешнего производственного парадигма. Уважаемые производители и дистрибьюторы заменит эти продукты, но это не означает, что процесс не сочетается с проблемой.
Луча