esp8266 - микроконтроллер с 32 битной архитектурой, поэтому, когда мы объявляем переменную типа int, компилятор выделяет для нее 4 байта(32 бита), а не 2 байта. По сути объявляя переменную int мы предоставляем компилятору самому выбрать ее размер исходя из архитектуры микроконтроллера и он ее выбирает размером в машинное слово, т.к. с такими переменными он будет быстрее работать.
Unsigned - это не просто положительное, а "неотрицательное". Потому что в положительные числа ноль не входит (от 1 включительно до ......). А "неотрицательные" - от 0 включительно до ......
Спасибо большое! Давно искал понятную инструкцию как роботать с памятю. 100 тисяч раз... ех надеюсь мои( и не токо мои!) устройства пророботают болше 50 ти лет)))
@@ИнженеркаНазрел вопрос, может знаетье, 100 тияч циклов записи, ето, для всей памяти либо для конкретной ее ячейке? Ну тоесть єст ли смисл, обновлять токо некоторие переменние ? или можна все сразу? Хочу предусмотреть щотчик перезаписи для своевременой замени такого модуля, и также. как будет вести себя модуль с сгорешей такой памятю?..))))
not sure if anyone gives a shit but if you guys are stoned like me atm you can stream all of the new series on Instaflixxer. I've been watching with my girlfriend these days :)
Ну примеры есть в стандартной библиотеке к этим датчикам. Так сходу в двух словах не объяснить. Да да же не вспомню. Я хочу видео по ним снять. Но если быть честным то я просто не успеваю снять все что хочу. (((( Уж прости что не помог... А вообще если в стандартных примерах покопаться там можно прочитать номера датчиков а потом что угодно с этими номерами делать. И да. Если знаешь номер конкретного датчика, то точно знаешь температуру с какого места считываешь. Актуально уже когда датчика уже хотя бы два.
А у меня не заработало по образцу на arduino nano atmega168. Выводило ошибку EEPROMbegin (512). Заработало когда очистил значение, така как любое изменение згачения не давало результата. Вышло EEPROMdegin (); причем это нужно сделать было во всем скетче. Автору огромное спасибо. Так понятно и просто.
@@Инженерка А, даже так. Спасибо. Я только начинаю учится. Обнаружил проблему отключения питания, и все заданное заранее слетает. Собираю сборку для теплового насоса кондиционер/нагреватель. А там, понимаешь, это важно. Перелопатил материал в инете, но адекватное объяснение нашел только здесь.
А я то мучаюсь не могу понять почему не записывает. Спасибо помогло. Для моей программы лучше использовать EEPROM.commit(); . В виде всё подробно рассказано и это хорошо!
Ну тут или int8_t или int16_t ну еще можно вот так uint8_t или uint16_t double и float это int32_t хотя сейчас пургу несу... arduino.ru/Reference/Float
@@Инженерка кстати там функции в этой библиотеке возвращают число записанных и считанных байтов,так вот функция чтения возвращает 8 байт,а другая всего 2 байта, хочу посмотреть стандартные функции get() и put()
@@stenzoautomatic вот ещё видео в тему ua-cam.com/video/GlE3JnMN-SI/v-deo.html Тут суть в том что разные контроллеры работают с одними и теми же переменными по разному. int 2 байта в ардуино, а в ESP уже 4 байта.
esp8266 - микроконтроллер с 32 битной архитектурой, поэтому, когда мы объявляем переменную типа int, компилятор выделяет для нее 4 байта(32 бита), а не 2 байта. По сути объявляя переменную int мы предоставляем компилятору самому выбрать ее размер исходя из архитектуры микроконтроллера и он ее выбирает размером в машинное слово, т.к. с такими переменными он будет быстрее работать.
Отлично сказано. Спасибо.
Одно из лучших объяснений для чайников, огромное Вам спасибо)
И вам спасибо. )))
Unsigned - это не просто положительное, а "неотрицательное".
Потому что в положительные числа ноль не входит (от 1 включительно до ......).
А "неотрицательные" - от 0 включительно до ......
В точку. Тут я лохонулся! ((( Спасибо что поправили!
Спасибо большое! Давно искал понятную инструкцию как роботать с памятю.
100 тисяч раз... ех надеюсь мои( и не токо мои!) устройства пророботают болше 50 ти лет)))
Спасибо!
@@ИнженеркаНазрел вопрос, может знаетье, 100 тияч циклов записи, ето, для всей памяти либо для конкретной ее ячейке? Ну тоесть єст ли смисл, обновлять токо некоторие переменние ? или можна все сразу?
Хочу предусмотреть щотчик перезаписи для своевременой замени такого модуля, и также. как будет вести себя модуль с сгорешей такой памятю?..))))
docviewer.yandex.ru/view/12135238/?page=1&*=PMdbVleJ7nXqsGee%2BRAZM1FBABd7InVybCI6Imh0dHBzOi8vd3d3Lm1hY3JvZ3JvdXAucnUvc2l0ZXMvZGVmYXVsdC9maWxlcy91cGxvYWRzL3cyNXE0MGJ3LnBkZiIsInRpdGxlIjoidzI1cTQwYncucGRmIiwibm9pZnJhbWUiOnRydWUsInVpZCI6IjEyMTM1MjM4IiwidHMiOjE2MDY2MzQxMjk5NzMsInl1IjoiOTM1MDYxNDQ1MTU3NjA0MDUyNCIsInNlcnBQYXJhbXMiOiJsYW5nPWVuJnRtPTE2MDY2MzQxMjYmdGxkPXJ1Jm5hbWU9dzI1cTQwYncucGRmJnRleHQ9VzI1UTQwJnVybD1odHRwcyUzQS8vd3d3Lm1hY3JvZ3JvdXAucnUvc2l0ZXMvZGVmYXVsdC9maWxlcy91cGxvYWRzL3cyNXE0MGJ3LnBkZiZscj02MiZtaW1lPXBkZiZsMTBuPXJ1JnR5cGU9dG91Y2gmc2lnbj1hYjJjZjcxYjA1NGQzYTMzNjE1MzEyNDBhNGE0ZTBiYSZrZXlubz0wIn0%3D&lang=en
Незнаю. )))) Думаю можно небеспокоится если не делать перезапись в бесконечном цикле.
Сейчас в библиотеке EEPROM есть put и get, эти функции случайно не заменяют дополнительную библиотеку, что вы использовали?
Нет не заменяют. Эти функции для float
Очень хорошо объяснили. Спасибо.
Спасибо! )))
not sure if anyone gives a shit but if you guys are stoned like me atm you can stream all of the new series on Instaflixxer. I've been watching with my girlfriend these days :)
@Josue Issac Yup, I have been using instaflixxer for months myself :D
Спасибо, ваше видео помогло. )
З.Ы. Библиотеку подправил под себя - лень писать все время begin ... end
Крутая идея! ))) Рад что помогло! )))
LOL вот жеж я опять забыл аккаунты переключить. )))
Где можно подробнее посмотреть про использование флагов?
Alexander Y. Как найду сюда брошу ссылку. Если сам найдешь что то годное то, то же пришли ссылку.
ua-cam.com/video/sLRjMJv1SSs/v-deo.html вот у Гайвера кстати
ПОДСКАЖИТЕ КАК ЗАПИСАТЬ И ЧИТАТЬ СЕРИЙНЫЕ НОМЕРА ds18b20 ?
Ну примеры есть в стандартной библиотеке к этим датчикам. Так сходу в двух словах не объяснить. Да да же не вспомню. Я хочу видео по ним снять. Но если быть честным то я просто не успеваю снять все что хочу. (((( Уж прости что не помог...
А вообще если в стандартных примерах покопаться там можно прочитать номера датчиков а потом что угодно с этими номерами делать.
И да. Если знаешь номер конкретного датчика, то точно знаешь температуру с какого места считываешь.
Актуально уже когда датчика уже хотя бы два.
А у меня не заработало по образцу на arduino nano atmega168. Выводило ошибку EEPROMbegin (512). Заработало когда очистил значение, така как любое изменение згачения не давало результата. Вышло EEPROMdegin (); причем это нужно сделать было во всем скетче. Автору огромное спасибо. Так понятно и просто.
Это видео было направлено на особенности работы с EEPROM с платой ESP8266. А для ардуино не begin не end не нужны. А остальное все точно так же. )))
@@Инженерка А, даже так. Спасибо. Я только начинаю учится. Обнаружил проблему отключения питания, и все заданное заранее слетает. Собираю сборку для теплового насоса кондиционер/нагреватель. А там, понимаешь, это важно. Перелопатил материал в инете, но адекватное объяснение нашел только здесь.
@@maximxew6453 рад что помог. Сам регулярно пользуюсь своими наработками. До этого кучу всего перелопатил. ))) Тепловой насос это хорошая идея.
А я то мучаюсь не могу понять почему не записывает. Спасибо помогло. Для моей программы лучше использовать EEPROM.commit(); . В виде всё подробно рассказано и это хорошо!
Блин а как записать и считать данные типа double_t(8-байт),с int16_t всё работает.А то что-то у меня не получается.
Ну тут или int8_t
или int16_t
ну еще можно вот так uint8_t или uint16_t
double и float это int32_t хотя сейчас пургу несу... arduino.ru/Reference/Float
@@Инженерка кстати там функции в этой библиотеке возвращают число записанных и считанных байтов,так вот функция чтения возвращает 8 байт,а другая всего 2 байта, хочу посмотреть стандартные функции get() и put()
@@Инженерка забыл сказать что использую Platformio,выводил в ней sizeof(double_t) в монитор порта,возвращает 8 байт
@@stenzoautomatic вот ещё видео в тему ua-cam.com/video/GlE3JnMN-SI/v-deo.html
Тут суть в том что разные контроллеры работают с одними и теми же переменными по разному. int 2 байта в ардуино, а в ESP уже 4 байта.
Потому если с ESP скетче хочешь перенести на ардуино, то стоит помнить об этом, а лучше явно указывать.
Хмм EEPROM.commit() нужно чтобы не писать постоянно EEPROM.begin(512), достаточно один раз указать бегин, а дальше только коммит
Серьезно? Если так то это отличная новость. 😁
Спасибо! ))))
Спасибо.
Serg Atmel И вам спасибо!
АрдруйИно)))