Сколько раз можно загружать программу или скетч на плату Arduino Uno Clone?

Я собираюсь работать над своим самым первым проектом с использованием arduino (я как раз собираюсь купить его на следующей неделе), и один из наших профессоров говорит, что мы можем загружать программу или скетч на плату Arduino Uno примерно 8 раз. Он также добавил, что если мы используем версию-клон, то ее хватит только на 2 загрузки скетчей. Это правда или он блефует? Заранее спасибо.

, 👍16

Обсуждение

Я несколько раз в час показывал скетчи для одного конкретного Nano во время сборки и тестирования, и мне самому было любопытно узнать об этом в последние несколько дней. Я знал, что это будет, по крайней мере, в 100-е годы, но не был уверен, сколько именно. Спасибо, что спросили., @raddevus

Пришло время усомниться в достоверности этого профессора. Программа будет загружена во внутреннюю флэш-память ATmega328P, и флэш-память выдержит несколько тысяч циклов записи. Еще больше для EEPROM. STMicro цитирует "от 10 до 100 тысяч циклов" (http://www.st.com/resource/en/application_note/cd00165693.pdf), @Maximilian Gerhardt

Связанные: Изменения на уровнях износа 8266, поэтому, если вы сохраняете 3 КБ с 3 МБ бесплатно, вы можете сохранить 1024X до первой перезаписи (теоретически, в среднем 512X без перекрытия блоков), что означает миллионы сохранений., @dandavis

@jsotola если Google не покажет вам, что на этот вопрос уже был дан ответ в SE, пожалуйста, не сообщайте пользователям Google [(источник: FAQ)](https://meta.stackexchange.com/questions/8724/how-should-we-deal-with-google-questions), @Cephalopod

Это эквивалент поддельных новостей ASE., @copper.hat

Я думаю, что все это блеф, я использую клон и загрузил в свой более 100 скетчей. (В любом случае, они очень дешевы), @Matt995


2 ответа


28

Он говорит полную и абсолютную тарабарщину. Чтобы процитировать данные ATmega328P:

  • Сегменты энергонезависимой памяти высокой стойкости
    • 32 Кб встроенной самопрограммируемой флэш-программы Память
    • 1 Кб EEPROM
    • 2 Кб внутренней памяти SRAM
    • Циклы записи/стирания: 10 000 flash/100 000 EEPROM
    • Хранение данных: 20 лет при 85°C/100 лет при 25°C(1)
    • Дополнительный раздел кода загрузки с независимыми битами блокировки
      • Внутрисистемное программирование с помощью встроенной загрузочной программы
      • Истинная Операция Чтения Во Время Записи
    • Блокировка программирования для обеспечения безопасности программного обеспечения

Таким образом, у вас есть по крайней мере 10 000 применений, прежде чем он начнет выходить из строя.

,

Я бы сказал, что у него есть как минимум 10 тысяч применений., @Edgar Bonet

Как работает флэш-память, с возрастом для удаления страницы требуется больше времени. 10 000-это минимальное ожидаемое количество операций стирания на странице, прежде чем время, затраченное на стирание, может начать превышать заранее определенный (указанный производителем) порог. Так что да, вы ожидали бы получить больше, чем это число (это гарантированный минимум), или просто потребуется немного больше времени, чтобы стереть страницы., @Majenko

На практике я повторно использовал Arduino Uno и постоянно вносил небольшие изменения в код. Повторная загрузка занимает достаточно много времени, чтобы об этом даже не стоило беспокоиться. У вас гораздо больше шансов испортить плату каким-либо другим способом, если вы паяете или сгибаете провода. Кроме того, при работе с Arduino... платы настолько безумно дешевы (особенно если вы можете перейти на минипроцессор 5 В), что главное, о чем вам нужно беспокоиться, - это просто быть осторожным при пайке датчиков/ввода-вывода. Плата чрезвычайно надежна, и вы можете просто заменить ее дешево, если у вас когда-либо возникнут какие-либо сомнения по поводу платы., @Rob

всякий раз, когда вы слышите разговор об "износе" хранилища, просто имейте в виду, что обычно это так: 1) Вы должны "напряженно" взрывать целые области, заполненные нулями, а затем записывать их поверх этого. 2) Твердотельное хранилище обычно имеет сложные алгоритмы выравнивания износа, чтобы минимизировать влияние этого. 3) Это дешевый Arduino. 4) Язык является подмножеством C++, поэтому вы можете создать платформу тестирования, чтобы полностью протестировать ее до того, как она попадет в аппаратное обеспечение; чтобы ограничить ненужное внедрение непроверенного кода в аппаратное обеспечение., @Rob

вот простой пример издевательства над платой, чтобы вы могли просто протестировать ее локально под Linux (скомпилировано с помощью GCC), а не постоянно нажимать на аппаратное обеспечение для тестирования. Основная идея состоит в том, чтобы создать фреймворк, который будет похож на столько вызовов Arduino, сколько вы на самом деле делаете из своего кода: https://github.com/rfielding/octaveRounder/tree/master/test, @Rob

@Роб обычно вы даже не беспокоитесь о 4 (за исключением несвязанных причин) из-за 3, @user253751

Я бы предложил анонимно отправить ему технический паспорт микроконтроллера с соответствующими частями, выделенными в том же разделе, который показал Майенко. Поскольку в блоках-клонах используются одни и те же микро-и другие компоненты, почему это не продлится так долго. У меня есть один, который я мигаю уже более 6 лет, и никаких проблем. Я использую его для тестирования своего кода, он подключен к USB и, как правило, не имеет другого оборудования. Я не думаю, что он блефует, он взял ДОБЫЧУ и сильно промахнулся. Я предлагаю вам продолжать проверять его заявления на протяжении всего курса., @Gil


-1

У меня прошивка 94% прошивается - убил неделю. И это второе устройство, которое я убил таким образом. Это клон Pro Micro. Поэтому я предлагаю припаять печатную плату с многоразовым портом, чтобы заменить карту

,

не имеет значения, сколько места во флэш-памяти вы используете. речь идет только о количестве записей (на самом деле стираний). и я сомневаюсь, что вы сделали 10000 загрузок, у вашего Pro Micro другая проблема, @Juraj

Да, ты был прав :), @алекс кей