#1 2024-04-26 23:09:34

Mirroxyz
Учасник
Зареєстрований: 2023-12-11
Повідомлень: 7

Хостинг сайту NodeMCU v3

Розробляю проект із дистанційним керуванням через сайт який хостить NodeMCU v3. HTML код прописаний в окремому .h файлі.
Спосіб передачі дій на сайті до плати я знайшов, все працює. Але при оновленні сторінки, всі параметри скидаються до прописаних в
.h файлі. Поки що, я бачу такі варіанти, але не знаю як їх реалізувати:
1. Редагування(переписування) певного рядка .h файлу.
2. Зберіганням HTML коду в .txt файлі на CD карті, але можливості переписування певного рядку не знайшов.
Буду радий почути Ваші варіанти вирішення, дякую!

Неактивний

#2 2024-04-27 01:09:53

rain
Учасник
Зареєстрований: 2022-04-15
Повідомлень: 41

Re: Хостинг сайту NodeMCU v3

Отрисовка HTML исходя из переменных в коде. При выполнении действий на странице - обновление переменных. Между перезагрузками (если надо) сохранять состояние переменных в EEPROM и вычитывать при запуске.

Неактивний

#3 2024-04-27 12:53:02

Mirroxyz
Учасник
Зареєстрований: 2023-12-11
Повідомлень: 7

Re: Хостинг сайту NodeMCU v3

rain пише:

Отрисовка HTML исходя из переменных в коде.

Можете будь ласка навести приклад як це реалізувати?

Неактивний

#4 2024-04-27 22:24:29

rain
Учасник
Зареєстрований: 2022-04-15
Повідомлень: 41

Re: Хостинг сайту NodeMCU v3

Гляньте тут - http://sprunge.us/YZ5EA6
Ну или более объемный вариант, написанный по мотивам первого - https://rain.linuxoid.in/2021/09/20/ком … коллектор/
Везде говнокод, но того, что по первой ссылке для общего понимания хватит.

Остання редакція rain (2024-04-27 22:24:59)

Неактивний

#5 2024-04-27 22:31:50

rain
Учасник
Зареєстрований: 2022-04-15
Повідомлень: 41

Re: Хостинг сайту NodeMCU v3

Т.е., вкратце: есть функция SendHTML, рисующая страничку с двумя кнопками и принимающая на вход состояние двух переменных. В зависимости от состояния переменной, кнопка рисуется включенной или выключенной. Одновременно для кнопки формируется ссылка на подстраницу, для которой у веб-сервера есть свой обработчик.

При переходе на обработчик данная переменная меняет свое состояние на нужное, а далее снова дергается веб-сервер (который, фактически, рисует страничку с новым состоянием кнопок).

В теле loop'а есть функция, сравнивающая значение переменной и то, что сохранено в EEPROM по определенным адресам. Если значения не равны - делается запись в EEPROM. При старте прошивки в setup'е делается вычитка этих адресов и установка переменных.

Неактивний

#6 2024-04-28 23:30:56

akapulko
Гість

Re: Хостинг сайту NodeMCU v3

rain пише:

В теле loop'а есть функция, сравнивающая значение переменной и то, что сохранено в EEPROM по определенным адресам. Если значения не равны - делается запись в EEPROM.

На довго EEPROM вистачить? Питання риторичне, відповідь нижче (http://www.mosaic-industries.com/embedded-systems/sbc-single-board-computers/freescale-hcs12-9s12-c-language/instrument-control/eeprom-lifetime-reliability-wear-leveling):

Time
between writes-----Expected lifetime
0.03 sec-----------50 minutes   
1 sec--------------1 day       
1 min--------------69 days     
10 min-------------2 years     
1 hr---------------11 years     
8 hr---------------91 years

#7 2024-04-29 00:02:01

rain
Учасник
Зареєстрований: 2022-04-15
Повідомлень: 41

Re: Хостинг сайту NodeMCU v3

akapulko, smile

В ответ на удаленное: ну, при том профиле использования, что обычно был у той самоделки - то ресурса ячейки должно хватить на несколько сотен, а то и тысяч лет.

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму