я для такого использую кольцевой буфер со следующей структуруй структура данных = 3 байта (номер записи) + N байт (полезные данные) и это структуру растягиваем на всю память. При включении контроллера програ пробегает по всем ячейкам и ищет наибольшее значение записи (те самые 3 байта). Указатель следующей записи смещается на размер структуры и каждая следующая запись идет с тем же смещением, и так по кругу. Преимущество метода - уменьшенный общий расход. Недостаток - завышенный удельный расход. Преимущество перекрывает недостаток даже при полезной нагрузке в 1 байт. Например для 328p Структура 4 байта = 3 байта указателя + 1 байт полезной нагрузки 1024 / 4 = 256 ячеек для подобных структур. Т.е. каждая ячейка будет перезаписана в 256 раз реже чем при классическом методе. А это больше 25млн. гарантированных записей. Почему именно 3 байта на указатель а не 4. Максимальное значение 3 байт = 16777216 что с большим запасом покрывает даже самый оптимистичный срок службы.
UPD: Идея. Расходовать на указатель 1 байт а не 3. Недостающие 2 байта отправить в самый конец памяти, они будут обозначать смещение. Тогда у нас остаётся 1022 байта, структура = 2 байта, итог 511 ячеек. Ресурс 50млн.
Ребяты вы молодцы, именно в плане Уроков (а не просто видосов со своими железками да еще и на продажу) вам нет равных, подумайте кстати о преподавании визуальных языков типа fbd - для новичка очень полезная вещь. Flprog, xod.....
@@intelektum, только один вопрос: зачем лезть в дебри протокола, если большинство контроллеров имеет его аппаратную реализацию? Работа с памятью через этот протокол -- да, но и тут есть готовые библиотеки.
@@ArduNotes в принципе да, но, по моему мнению, внешняя епромка удобна с точки зрения износа. Существенных различий в реализации самого хранения данных нет, кроме того, если хранить данные в флеш, не нужно отбирать у esp аж два порта под i2c - а их там не так уж и много. Но ограничения по количеству циклов записи во флеш немного портят малину.
@@ArduNotes Кстати, я не встречал библиотек для работы с внешней eeprom для esp, нет ли желания ее сделать? Мне не приходилось самому библиотеки клепать, однако кодом для реализации библиотеки, если заинтересует, могу поделиться.
@@ArduNotes для продвинутых пользователей эта библиотека не нужна, все решается с помощью возможностей библиотеки Wire и даташита на память, однако начинающие ардуинщики это бы оценили. Ваш канал достаточно популярен и, по моему мнению, крайне полезный, поэтому данный контент, по работе с внешней еепром , думаю, был бы интересен многим.
Позвольте спросить, а заяем вам EEPROM на ESP-шке. Действительно, ничего сложного в эмуляции во Flash-памяти нет, просто поищите "SPIFFS". Это не идеальная система и имеет ряд недостаток (она больше не обновляеися, поэтому копайте в сторону LittleFS), но и преимущества у эиой системы есть. Эмуляция позволяет значительно расширить пространство для записи до нескольких мегабайт!
В STM32 в серии L тоже есть еепром, по поводу алгоритма записи и чтения чтобы максимально увеличить ресурс памяти и не потерять данные если при записи произошёл сбой ( при просадке питания или посередине записи питание пропало то в данной области будут уже не то что хотели записать ), алгоритм довольно прост, очищаем память ( заполняем ее 0хFF ( все биты заполняем единичками )) далее записываем структуру как у вас в видео ( начало 0 адрес ) и в конце ставим пару байт метку ( чтоб знать где мы закончили запись ), теперь если мы читаем из памяти то начинаем в цикле с КОНЦА памяти искать нашу метку, как нашли сдвигаемся еще на размер структуры и считываем ее, теперь если нужно записать новые данные ( обновить старые ) то снова начинаем с конца читать ( ищем нашу метку ) и когда нашли записываем уже с адресом нашей метки и в конце тоже ставим метку ( тем самым у нас остались и предыдущая запись и новая ) теперь при чтении можно проверить ( если в одной из полей структуры хранить контрольную сумму пакета ) на целостность, если запись повреждена то прочитать предыдущую и перезаписать текущую. Ну и отслеживаем коней всех адресов. как дошли до конца все с самого начала. Тем самым кол-во перезаписей увеличиваем до максимального значения и при етом данные всегда можно возобновить в случае их потери.
Как на счет использования внешеней памяти например AT25256B-SSHL-B, Последовательная энергонезависимая память [SO-8] (5EB L) у нее; High Reliability ̶ Endurance: 1,000,000 Write Cycles ̶ Data Retention: 100 Years
Заметки Ардуинщика , сделай свою плату подобие ардуин на каком - нить микроконтроллере например стареньком AT90S2313 он без внешнего кварца не работает . Спасибо за урок !
Сделай видео про FRAM память и работу с ней с Arduino. Пробовал работать с FM24C04B-G, очень понравилось, объём хоть и не большой, но его избыточно хватает много для чего и стоит не дорого, если с Китая покупать отдельно микросхемки. Делал им обвязку и использовал как полноценные модули.
Как подключить к ардуино fdd ( флоппи ) привод что бы можно было к ноутбуку подключить как внешний носитель? Что бы не музыку издавал а определял и записывал на дискеты? Что бы ардуино выполнял роль платы которые обычно стоят в боксах для внешних дисков.
я недавно случайно наткнулся на али на "24Cxx"(я смотрел 24С04,но видел и более ёмкие варианты как 24С64) (в рекомендациях появился) можно побаловаться,насоздавать "чёрных ящиков" или резервных копий настроек ))) И чтобы не ушатывать память ардуинки можно записывать на сменный блок (видел даже в вариантах DIP)
@@ArduNotes да, я подумал, сначала, что, раз i2c, то и будет рассмотрена в уроке по i2c. А затем подумал, что работа с EEPROM i2c будет в этом видеоуроке, т.к. модулей на i2c много разных, наверное, а EEPROM всего две - внутренняя и внешняя :)
Там нет ПЗУ, там маленький кусочек статического ОЗУ, а "энергонезависимость" обеспечивается батарейкой, которая питает эту память и пользовательское ОЗУ.
*Вот не могу понять, у меня магнитола после выключения питания теряет настройки, неужети добавление сохранения настроек для производителя это так затратно, это же вопрос на пару баксов!*
Доброго времени суток ✌️ не могу соединить скетч измерения и регулировки с меню настроек. Попробую вписать как первое меню. Если не сложно подскажите как проще. Скетч могу выложить ссылку на гугл диск
Можно вопрос почему нету урока про записи в епром память минусовое значение и чтения. Во всем просторе интернета толка 2 статий про ето и то не рабочий скеч 😠
Пожалуйста, выложите полный пример с олед дисплеем. Невидно процедуру с курсором. Невидно полного кода функции прорисовки меню. Вот переписанно из видео: #include #include #include #define EEPROM_ADDR 90 GyverOLED oled; EncButton enc; struct { bool a = false; char b = '0'; byte c = 0; int d = 0; long e = 0; float f = 0.0; }settings; uint8_t menu_ptr = 2; bool menu_sel = false; void setup() { oled.init(); oled.clear(); drawMenu(); } void loop() { enc.tick();
if (enc.isRight()) { if (menu_sel) { switch (menu_ptr) { case 2: settings.a = !settings.a; break; case 3: settings.b = constrain(settings.b + 1, 48, 90); break; case 4: settings.c = constrain(settings.c + 1, 0, 255); break; case 5: settings.d += 100; break; case 6: settings.e += 1000; break; case 7: settings.f += 0.1; break; } } else { menu_ptr = constrain(menu_ptr + 1, 2, 7); } drawMenu(); } // if (enc.isLeft()) { // if (menu_sel) { // switch (menu_ptr) { // // } if (enc.isClick()) { menu_sel = !menu_sel; drawMenu(); } if (enc.isHolded()) { EEPROM.put(0, settings); } }
У меня один практичный вопрос. Как считать данные с ячейки еепром по I2C в системе с другим МК? Прижать ресет к земле что бы тот не дёргался и шина свободна? И как это схемотично будет выглядеть, подтягивающие резисторы и пр...? Может видео такое запилите, думаю такой прикладной вопрос очень актуален.
Не используйте нулевой адрес ячейки! Часто слетает от нестабильного питания, тоесть может слететь от включения-выключения устройства. Сталкивалса с етим во время разработки BMS
Я на ESP8266 остановился на SPIFFS. Но т.к. его поддержка скоро закончится перехожу на LittleFS. Интересует ваше мнение, а что лучше из встроенных возможностей контроллера при частой перезаписи?
Интересно. А будет урок по времени. Интересует как подать сигнал на 2 разных реле при значении времени. Например на одно реле подавать сигнал через 20 секунд, а на второе через 30.
И, в догонку, еще один вопрос. Если с EEPROM в Ардуино всё так хорошо, то почему в проекте "Наливатор" калибровочные данные не сохраняются в EEPROM (что наиболее логично и удобно), а необходимо их прописать в коде и прошить плату повторно? Хотя сохранение текущего объема есть (правда у меня это не работает).
Очень интересно но никуя не понятно. Слишком сжатая информация, чтобы разобраться просто как обращаться с епром в самом простом варианте приходится пересматривать короткий отрывок по пятьдесят раз...
Доброго времени суток! Подскажите, возможно ли на ардуинке сделать кнопку цензуры? То есть, нажимаем кнопку и в звуковой канал, например на виртуальный, аудио кабель идет звук цензуры, отпускаем кнопку, звук пропадает
Интересно при АЦП атмега 32а прошивальшиком АВР можно ли сохранять данные прошивки старой и вернутся к ней там два файла для прошивки hex формата еепром и флеш
Здравствуйте. Собираю руль на ардуино Леонардо, есть две прошивки: Aiwave и EMC. Скажите, если я залью одну, а потом за хочу перепрошить на другую, то чтобы это сделать понадобится программатор или можно будет обойтись без него?
@@ArduNotes Об этом я и говорил - источник текста не особо важен, как удобней. И не спорю, многолетняя практика действительно расковвывает, давая возможность вносить театральность. Но изначально, чтение текста за кадром схоже с чтением текста диктором в радиоспектакле - весь интерес зависит от манеры исполнения. Никогда не занимался таким занятием, но для себя, вероятно, выбирал бы практику в этом направлении. Спасибо за ответ)
Интересно, я один такой невезучий? Четыре китайских NANO, одна UNO, и итальянские (?!) UNO и MEGA - результат один: Данные корректно читаются только после первого ресета. После второго или отключения питания на любое время, вместо данных нули. В ячейках куда не было записи, как и положено 255. (Вашу статью по EEPROM зачитал "до дыр", пытаясь найти свои косяки, но без результата.) Может еще какие камушки подводные есть?
Да блин. Если пару тройку раз, то ничего ей не будет Думать про износ памятм надо тогда, если ее насилуешь логами, постоянно ее выдрачиваешь, или майнишь chia Те же SSD имеют лимит, но они через год не ломаются А живут десятилетиями
Стоп, если у того=же LGBT (LGT) ипром берется из флэша, то по сути ресурс у него больше? (я понимаю что он занимает в 2 раза больше физического места чем предполагаемого)
Как уже написал @Bdfy, ресурс у ЭСППЗУ больше. Причём, часто на порядок, а то и два. В случае LGT устройства нет. Китайцы просто сэкономили и не стали выращивать на кристалле ещё одно устройство и цепи, отвечающие за работу с ним. Как, кстати, в и STM32F103C8T6, который "синяя таблетка". Если планируется активная работа с ЭСППЗУ, стоит добавить на плату колодку под микросхему памяти, тогда её ещё и менять можно будет по мере износа.
Поздравляем Ничикона с полноценным именным интро:D
Спустя вечность, я дождался этот урок. Ура.
Мало того, уроки стали с КОММЕНТАРИЯМИ, ого, канал растёт.
Спасибо за ваши супер уроки!))
После слов "надеюсь всё было понятно" обычно я смотрю этот отрывок еще раз. Пишу коды для бегущих поворотников для авто и показываю их работу вам.
Такая же фигня)))))
Я с этого не чего не понял, а есть уроки програмирования для начинающих?
@@РусланТимиргалеев-к4ш Так это и есть канал для начинающих. Посмотрите первые видео. Работа с памятью это уже более сложная тема.
Отлично, теперь про PROGMEM
Пишешь PROGMEM в объявлении переменной и всё. Константа лежит в флеш памяти...
@@U2VR_Channel а её значение можно менять?
@@КоляТкаченко-з2с PROGMEM используется только с константами.
@@U2VR_Channel спасибо!
Интересно, полезно и главное для меня очень своевременно, как раз собирался прикрутить к часам сохранение настроек.
Вот здесь можешь использовать пример кода для сохранения настроек ua-cam.com/video/a9bPvAsOmpc/v-deo.html
@@olexangrstetsiuk3092 Спасибо, посмотрю, поковыряю.
Спасибо! Действительно полезный урок. Давно искал как работать с энергонезависимой памятью. Правда меня больше интересует ESP.
точно так же, только нужно вызвать begin(размер в байтах)
я для такого использую кольцевой буфер со следующей структуруй
структура данных = 3 байта (номер записи) + N байт (полезные данные)
и это структуру растягиваем на всю память.
При включении контроллера програ пробегает по всем ячейкам и ищет наибольшее значение записи (те самые 3 байта). Указатель следующей записи смещается на размер структуры и каждая следующая запись идет с тем же смещением, и так по кругу.
Преимущество метода - уменьшенный общий расход.
Недостаток - завышенный удельный расход.
Преимущество перекрывает недостаток даже при полезной нагрузке в 1 байт.
Например для 328p
Структура 4 байта = 3 байта указателя + 1 байт полезной нагрузки
1024 / 4 = 256 ячеек для подобных структур. Т.е. каждая ячейка будет перезаписана в 256 раз реже чем при классическом методе. А это больше 25млн. гарантированных записей.
Почему именно 3 байта на указатель а не 4.
Максимальное значение 3 байт = 16777216 что с большим запасом покрывает даже самый оптимистичный срок службы.
UPD: Идея. Расходовать на указатель 1 байт а не 3. Недостающие 2 байта отправить в самый конец памяти, они будут обозначать смещение. Тогда у нас остаётся 1022 байта, структура = 2 байта, итог 511 ячеек. Ресурс 50млн.
есть способ намного проще и эффективнее)
Замечательные ролики для легкого восприятия сложного контента, спасибо
Ребяты вы молодцы, именно в плане Уроков (а не просто видосов со своими железками да еще и на продажу) вам нет равных, подумайте кстати о преподавании визуальных языков типа fbd - для новичка очень полезная вещь. Flprog, xod.....
спасибо, канал изначально уроковый
Урок как всегда супер 👍 но хотелось бы ещё услышать инфу о том как подключать внешние eeprom если во встроенной в ардуину уже нет памяти
когда нибудь будет, опять же рабочий код давно написан и оформлен
Вот здесь использована внешняя EEPROM (интегрированная в модуль часов DS3231), можешь воспользоваться примером ua-cam.com/video/a9bPvAsOmpc/v-deo.html
@@olexangrstetsiuk3092 спасибо
Ничего сложного, по I2C протокол простой до жути.
@@intelektum, только один вопрос: зачем лезть в дебри протокола, если большинство контроллеров имеет его аппаратную реализацию? Работа с памятью через этот протокол -- да, но и тут есть готовые библиотеки.
Полезно и достаточно подробно. Спасибо за труд.
Для ESP8266 я использую внешнюю EEPROM, подключенную по i2c. Достаточно годно работает, и не надо с эмуляцией во флеш заморачиваться.
а разве там заморочки? Стандартная библиотека с таким же API
@@ArduNotes в принципе да, но, по моему мнению, внешняя епромка удобна с точки зрения износа. Существенных различий в реализации самого хранения данных нет, кроме того, если хранить данные в флеш, не нужно отбирать у esp аж два порта под i2c - а их там не так уж и много. Но ограничения по количеству циклов записи во флеш немного портят малину.
@@ArduNotes Кстати, я не встречал библиотек для работы с внешней eeprom для esp, нет ли желания ее сделать? Мне не приходилось самому библиотеки клепать, однако кодом для реализации библиотеки, если заинтересует, могу поделиться.
@@ArduNotes для продвинутых пользователей эта библиотека не нужна, все решается с помощью возможностей библиотеки Wire и даташита на память, однако начинающие ардуинщики это бы оценили. Ваш канал достаточно популярен и, по моему мнению, крайне полезный, поэтому данный контент, по работе с внешней еепром , думаю, был бы интересен многим.
Позвольте спросить, а заяем вам EEPROM на ESP-шке. Действительно, ничего сложного в эмуляции во Flash-памяти нет, просто поищите "SPIFFS". Это не идеальная система и имеет ряд недостаток (она больше не обновляеися, поэтому копайте в сторону LittleFS), но и преимущества у эиой системы есть. Эмуляция позволяет значительно расширить пространство для записи до нескольких мегабайт!
я в одном проекте у клиента в итоге поставил внешнюю 24c08 в DIP панель.
проще потом будет поменять ее, чем контроллер (там был MSP430).
Сделайте видео про GyverStepper. Не всем понятно про абсолютный мод и прочее. Было бы полезно!
понятия абсолютный и относительный вроде общепринятые и всем понятны)
@@ArduNotes "общепринятые" понятны большинству, но не всем. Ибо края наиболее часто встречаемого Гауссова колокола и широки и глубоки.
Добрался до ролика с опозданием, но, всё равно, лайк!
В STM32 в серии L тоже есть еепром, по поводу алгоритма записи и чтения чтобы максимально увеличить ресурс памяти и не потерять данные если при записи произошёл сбой ( при просадке питания или посередине записи питание пропало то в данной области будут уже не то что хотели записать ), алгоритм довольно прост, очищаем память ( заполняем ее 0хFF ( все биты заполняем единичками )) далее записываем структуру как у вас в видео ( начало 0 адрес ) и в конце ставим пару байт метку ( чтоб знать где мы закончили запись ), теперь если мы читаем из памяти то начинаем в цикле с КОНЦА памяти искать нашу метку, как нашли сдвигаемся еще на размер структуры и считываем ее, теперь если нужно записать новые данные ( обновить старые ) то снова начинаем с конца читать ( ищем нашу метку ) и когда нашли записываем уже с адресом нашей метки и в конце тоже ставим метку ( тем самым у нас остались и предыдущая запись и новая ) теперь при чтении можно проверить ( если в одной из полей структуры хранить контрольную сумму пакета ) на целостность, если запись повреждена то прочитать предыдущую и перезаписать текущую. Ну и отслеживаем коней всех адресов. как дошли до конца все с самого начала. Тем самым кол-во перезаписей увеличиваем до максимального значения и при етом данные всегда можно возобновить в случае их потери.
в дуино среде используют самые популярные F3-F4, и самые доступные платы
@@nich1con652 Самые популярные и доступные это F0 и F1 =)
А где можно посмотреть конкретный код варианта предложенного вами ?
@@olexangrstetsiuk3092 а что там смотреть ? логика подробно описана выше, там чтение, запись, пару циклов и пару проверок
@@konstantingolinskiy4944 , эхх, остаётся только сожалеть ,что это все - пока-что не реализованая идея...
Как на счет использования внешеней памяти например AT25256B-SSHL-B, Последовательная энергонезависимая память [SO-8] (5EB L) у нее;
High Reliability
̶ Endurance: 1,000,000 Write Cycles
̶ Data Retention: 100 Years
Stm 32 будет?
Ставим лайки комменту, провоцируем автора.! :)
школьников пожалей... если сейчас на практических олимпиадах stm32, то я боюсь представить что будет после появления понятных гайдов по ним
esp8266 скоро будет, так как уже обросла крупным комьюнити и (что важно) стабильным ядром, 32 еще рановато - по слухам местами работает через жопу
Заметки Ардуинщика , сделай свою плату подобие ардуин на каком - нить микроконтроллере например стареньком AT90S2313 он без внешнего кварца не работает . Спасибо за урок !
Сделай видео про FRAM память и работу с ней с Arduino. Пробовал работать с FM24C04B-G, очень понравилось, объём хоть и не большой, но его избыточно хватает много для чего и стоит не дорого, если с Китая покупать отдельно микросхемки. Делал им обвязку и использовал как полноценные модули.
Спасибо за отличный урок !)
Как подключить к ардуино fdd ( флоппи ) привод что бы можно было к ноутбуку подключить как внешний носитель? Что бы не музыку издавал а определял и записывал на дискеты? Что бы ардуино выполнял роль платы которые обычно стоят в боксах для внешних дисков.
Спасибо, полезный урок был.
В видео не хватает аналогов стандартной библиотеки и закольцовывание для уменьшения износа ячейки.
В видео сказано, что это тема для отдельного разговора. А библиотека для размазывания уже давно написана и ждет своего часа
Есть статистика по надежности епромок? Какая фирма, какие модели нормальные. Про Али не говорю, там все понятно.
я недавно случайно наткнулся на али на "24Cxx"(я смотрел 24С04,но видел и более ёмкие варианты как 24С64) (в рекомендациях появился) можно побаловаться,насоздавать "чёрных ящиков" или резервных копий настроек )))
И чтобы не ушатывать память ардуинки можно записывать на сменный блок (видел даже в вариантах DIP)
Спасибо. Лайк за из носа
Так ждал, что будут и примеры использования внешней EEPROM на i2c
тогда видео и называлось бы, работа с внешней eeprom
@@ArduNotes да, я подумал, сначала, что, раз i2c, то и будет рассмотрена в уроке по i2c. А затем подумал, что работа с EEPROM i2c будет в этом видеоуроке, т.к. модулей на i2c много разных, наверное, а EEPROM всего две - внутренняя и внешняя :)
Спасибо за труд!
Спасибо! Вот бы ещё урок, как можно использовать ПЗУ-ху с платы ds3231...
Там нет ПЗУ, там маленький кусочек статического ОЗУ, а "энергонезависимость" обеспечивается батарейкой, которая питает эту память и пользовательское ОЗУ.
В контексте урока по RTC разве что
*Вот не могу понять, у меня магнитола после выключения питания теряет настройки, неужети добавление сохранения настроек для производителя это так затратно, это же вопрос на пару баксов!*
во многих устройствах и время не сохраняется, хотя микросхема rtc стоит пару десятков центов
в массовом производстве каждая пара баксов превращается в сотни тысяч)
Доброго времени суток ✌️ не могу соединить скетч измерения и регулировки с меню настроек. Попробую вписать как первое меню. Если не сложно подскажите как проще. Скетч могу выложить ссылку на гугл диск
Можно вопрос почему нету урока про записи в епром память минусовое значение и чтения. Во всем просторе интернета толка 2 статий про ето и то не рабочий скеч 😠
А стринг'и там можно хранить? И сеолько займет байтов
Спасибо!!
ой бой !!!! Красава !!
Добрый день. а есть полный скетч из данного ролика?
Пожалуйста, выложите полный пример с олед дисплеем.
Невидно процедуру с курсором.
Невидно полного кода функции прорисовки меню.
Вот переписанно из видео:
#include
#include
#include
#define EEPROM_ADDR 90
GyverOLED oled;
EncButton enc;
struct {
bool a = false;
char b = '0';
byte c = 0;
int d = 0;
long e = 0;
float f = 0.0;
}settings;
uint8_t menu_ptr = 2;
bool menu_sel = false;
void setup() {
oled.init();
oled.clear();
drawMenu();
}
void loop() {
enc.tick();
if (enc.isRight()) {
if (menu_sel) {
switch (menu_ptr) {
case 2: settings.a = !settings.a; break;
case 3: settings.b = constrain(settings.b + 1, 48, 90); break;
case 4: settings.c = constrain(settings.c + 1, 0, 255); break;
case 5: settings.d += 100; break;
case 6: settings.e += 1000; break;
case 7: settings.f += 0.1; break;
}
} else {
menu_ptr = constrain(menu_ptr + 1, 2, 7);
}
drawMenu();
}
// if (enc.isLeft()) {
// if (menu_sel) {
// switch (menu_ptr) {
//
// }
if (enc.isClick()) {
menu_sel = !menu_sel;
drawMenu();
}
if (enc.isHolded()) {
EEPROM.put(0, settings);
}
}
void drawMenu() {
oled.clear();
oled.setCursor(30, 0);
oled.println(F("Test menu"));
oled.println(F(""));
oled.setCursor(30, 2);
oled.print(F("A: "));
oled.update();
}
Спасибо тебе!)
У меня один практичный вопрос.
Как считать данные с ячейки еепром по I2C в системе с другим МК?
Прижать ресет к земле что бы тот не дёргался и шина свободна?
И как это схемотично будет выглядеть, подтягивающие резисторы и пр...?
Может видео такое запилите, думаю такой прикладной вопрос очень актуален.
неужели, дождался
А куда делся Алекс Гайвер???
программировал когда-то на Delphi7 )) Винда ХР настройки сохранял в реестр, EEPROM типа того?
А если в структуре поменялось только одно поле, put перезапишет только его или все равно будет перезаписан весь объект?
Спасибо за видео! Подскажите, а где хранить карты шрифтов или битовые изображения, EEPROM используют дял этих целей?
Можешь сделать урок с динамическим EEPROM адресом? Чтобы каждый раз данные в новый адрес записывались
Не используйте нулевой адрес ячейки! Часто слетает от нестабильного питания, тоесть может слететь от включения-выключения устройства. Сталкивалса с етим во время разработки BMS
как именно слетает?
Я на ESP8266 остановился на SPIFFS. Но т.к. его поддержка скоро закончится перехожу на LittleFS.
Интересует ваше мнение, а что лучше из встроенных возможностей контроллера при частой перезаписи?
Можно по подробнее про прекращение поддержки и LittleFS?
Не работал с есп практически, но я думаю большой разницы нет, все равно флеш затирается постепенно
Интересно. А будет урок по времени. Интересует как подать сигнал на 2 разных реле при значении времени. Например на одно реле подавать сигнал через 20 секунд, а на второе через 30.
И, в догонку, еще один вопрос. Если с EEPROM в Ардуино всё так хорошо, то почему в проекте "Наливатор" калибровочные данные не сохраняются в EEPROM (что наиболее логично и удобно), а необходимо их прописать в коде и прошить плату повторно? Хотя сохранение текущего объема есть (правда у меня это не работает).
Здравствуйте, спасибо за урок. Полезно, интересно --> комментарий.
Очень интересно но никуя не понятно.
Слишком сжатая информация, чтобы разобраться просто как обращаться с епром в самом простом варианте приходится пересматривать короткий отрывок по пятьдесят раз...
как залить скетч в EEPROM и при использовании двух микросхем памяти и одной дуинки переключателем задействовать нужный скетч?
Никак, программа хранится во флеш памяти
Просто и понятно. Спасибо.
Как раз вовремя
Доброго времени суток! Подскажите, возможно ли на ардуинке сделать кнопку цензуры? То есть, нажимаем кнопку и в звуковой канал, например на виртуальный, аудио кабель идет звук цензуры, отпускаем кнопку, звук пропадает
Лайк, репост, в тренд!
4:46 объем*
Spasibo poleznoje
Интересно при АЦП атмега 32а прошивальшиком АВР можно ли сохранять данные прошивки старой и вернутся к ней там два файла для прошивки hex формата еепром и флеш
Зарядник аймакс б6 клон
Здравствуйте. Собираю руль на ардуино Леонардо, есть две прошивки: Aiwave и EMC. Скажите, если я залью одну, а потом за хочу перепрошить на другую, то чтобы это сделать понадобится программатор или можно будет обойтись без него?
Леонардо шьётся через USB.
Super video!
Народ, где прочитать про объяснение заводских библиотек? Как они расписаны, какие функции и переменные из них брать в основную программу?
в файле библиотеки или в гугле, на сайте автора/сайте ардуино. "какие функции и переменные из них брать" - для этого также в библиотеках есть примеры
А ещё у библиотеки EEPROM есть ограничения максимальной длины пакетов записи, их бы тоже надобно ,,разжевать,, ...
максимальная длина ограничена размером самой EEPROM, об этом говорится в самом начале урока
привет сделай пожалуйста гайд по управлению шаговым двигателем с библиотекой с твоего сайта пожаааалуйста
У СТМ32 L серии есть еепром.
в пердуино среде если и юзаются стм, то F3,F4
Когда будет продолжение игровой консоли?
Сожалею за комментарий, но Алекс на порядок харизматичней, как ведущий.
А так, видео было интересным, спасибо.
алех уже пять лет по бумажке читает, всё приходит со временем)
@@ArduNotes Об этом я и говорил - источник текста не особо важен, как удобней. И не спорю, многолетняя практика действительно расковвывает, давая возможность вносить театральность. Но изначально, чтение текста за кадром схоже с чтением текста диктором в радиоспектакле - весь интерес зависит от манеры исполнения. Никогда не занимался таким занятием, но для себя, вероятно, выбирал бы практику в этом направлении. Спасибо за ответ)
Давай урок про регистры.
Отличное видео, спасибо, а урок по v-usb будет когда нибудь?)
только в контексте готовых библиотек
@@nich1con652 отлично, очень жду)у Вас очень хорошие ролики!
я наверно вылез из танка, но где, чъерт возьми, Алекс?
Спасибо
Внешнюю FRAM память и забудьте про ресурс памяти. 10^14 число перезаписей. Да еще и скорость не сравнить с EEPROM
Интересно, я один такой невезучий? Четыре китайских NANO, одна UNO, и итальянские (?!) UNO и MEGA - результат один: Данные корректно читаются только после первого ресета. После второго или отключения питания на любое время, вместо данных нули. В ячейках куда не было записи, как и положено 255. (Вашу статью по EEPROM зачитал "до дыр", пытаясь найти свои косяки, но без результата.) Может еще какие камушки подводные есть?
брак бывает попадается, мне с похожим нанка попалась вот
Есть специальные епромки которые миллионы записей?? Какие?
внешняя AT24 самая популярная заявляет миллион
Да блин. Если пару тройку раз, то ничего ей не будет
Думать про износ памятм надо тогда, если ее насилуешь логами, постоянно ее выдрачиваешь, или майнишь chia
Те же SSD имеют лимит, но они через год не ломаются
А живут десятилетиями
Гугли мрам или фрам
FRAM
@@ArduNotes
Жду ещё от вас , новые уроки .
Спосиба за уроки
Даёшь заметки ЕСП32ня! :D
32 еще не получила стабильного ядра, как 8266. 8266 скоро будет от Алекса
Спасибо за видео ,очень интересно. Но видимо здесь один я дурак смотрю ничего не соображая в этом.))
Круто
Стоп, если у того=же LGBT (LGT) ипром берется из флэша, то по сути ресурс у него больше? (я понимаю что он занимает в 2 раза больше физического места чем предполагаемого)
у еепром ресурс выше чем у флеш памяти
Как уже написал @Bdfy, ресурс у ЭСППЗУ больше. Причём, часто на порядок, а то и два. В случае LGT устройства нет. Китайцы просто сэкономили и не стали выращивать на кристалле ещё одно устройство и цепи, отвечающие за работу с ним. Как, кстати, в и STM32F103C8T6, который "синяя таблетка". Если планируется активная работа с ЭСППЗУ, стоит добавить на плату колодку под микросхему памяти, тогда её ещё и менять можно будет по мере износа.
Спасибо за хороший видеоролик
Вы первые до тех пор, пока не обновите.
Интересный урок! Когда выйдет следующий!?
А что с голосом?
Что за никичом
Все получилось, благодарю
Блок abs Citroen c3
AlexGyver продал этот канал?
Что с голосом?
7:09 нет, нельзя!(Я вам запрещаю) 😄😄😄
Крут
Спасибо автору.👍👍👍
А кто озвучил ролик? Это не Alex.
на канале сейчас два ведущих
А что такое с голосом?
Первый. Ценитель канала тут))
Очень хорошо 👍
Супер. Снимите ролик как сделать весы. по типу "вы худой", " вы норм", и "вы жиробас". Смотрю вас с огромным удовольствием.
ахах
У Гайвера есть кнопка джи, инфа сотка.
Из носа, ржачно получилось
ну хоть кто то заметил
Меня одного бомбит от "holded"? Каждый раз, когда вижу - ору на весь дом "HELD!!!"
дада, но косяк был допусчен много лет назад и из за совместимости не исправляется