• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос Вопрос по библиотекам

dictor

New member
Привет, ребята. Я заранее извиняюсь, может быть где то на форуме уже есть подобные темы, но я их просто не нашел.
А вопрос собственно вот в чем. Есть ли где ни будь документация русскоязычная по библиотекам для ЕСПшки? Например по библиотекам ESP8266WiFi.h, WiFiClient.h, ESP8266mDNS.h, ESP8266WebServer.h.
И, еще подскажите, как передавать из ХТМЛя параметр или ссылку, чтобы она выполнялась на Сях
 

Victor

Administrator
Команда форума
Есть ли где ни будь документация русскоязычная по библиотекам для ЕСПшки? Например по библиотекам ESP8266WiFi.h, WiFiClient.h, ESP8266mDNS.h, ESP8266WebServer.h.
Не встречалась, но лучшая документация - это исходники самой библиотеки Arduino/libraries at master · esp8266/Arduino · GitHub
 

Юрий Ботов

Moderator
Команда форума
для винды:

Диск:\users\имяюзера\AppData\Local\ArduinoНомер\packages\esp8266\hardware\esp8266\версия\Libraries\

Само собой надо включить отображение скрытых папок и файлов, ну или пользоваться far
 

dictor

New member
Диск:\users\имяюзера\AppData\Local\ArduinoНомер\packages\esp8266\hardware\esp8266\версия\Libraries\
Спасибо, папку я нашел, но так и не понял где в ней содержится описание классов и их членов. Например я так и не могу понять как и когда использовать, например, такие конструкции как server.handleClient(); , или server.on(); , server.send(); , server.begin(); и прочее. И еще не могу понять что за конструкция такая ESP8266WebServer server(80). Это типа создается класс server с параметром 80 класса ESP8266WebServer? Если так - то опять таки - нужно где то узнать инфу о классе. И еще(понимаю что оффтоп, простите), но не могу понять, можно ли в коде использовать яваскрипт? Чтобы например зафигашить ползунок для управления через ШИМ.
 
Последнее редактирование:

nikolz

Well-known member
Спасибо, папку я нашел, но так и не понял где в ней содержится описание классов и их членов. Например я так и не могу понять как и когда использовать, например, такие конструкции как server.handleClient(); , или server.on(); , server.send(); , server.begin(); и прочее. И еще не могу понять что за конструкция такая ESP8266WebServer server(80). Это типа создается класс server с параметром 80 класса ESP8266WebServer? Если так - то опять таки - нужно где то узнать инфу о классе. И еще(понимаю что оффтоп, простите), но не могу понять, можно ли в коде использовать яваскрипт? Чтобы например зафигашить ползунок для управления через ШИМ.
Вообще-то в СИ нет классов и следовательно нет и описания.
------------------
Трудно искать черную кошку в темной комнате, если кошки там никогда и не было.
 

dictor

New member
СИ нет классов
В сях то нету. Но на сколько я понимаю в ардуино иде используется синтаксис от си, и объектная ориентированность от крестов (с++). Потому что все таки это: "ESP8266WebServer server(80)", похоже на создание объекта server класса ESP8266WebServer. Конструкции: "server.handleClient(); , или server.on(); , server.send(); , server.begin();" похожи на обращение к членам класса server. Поправьте если ошибаюсь.:rolleyes: Ну в целом - не важно, есть ли классы, или еще какие то конструкции синтаксические. Я хочу понять где их описание найти (чем бы они ни были) чтобы понять как и для чего их юзать. А то в примерах попадаются, а как работают - не понимаю. Ведь чтобы свой проект создать, а не повторять по обезъяньи, необходимо понимать что и куда писать.
 

nikolz

Well-known member
В сях то нету. Но на сколько я понимаю в ардуино иде используется синтаксис от си, и объектная ориентированность от крестов (с++). Потому что все таки это: "ESP8266WebServer server(80)", похоже на создание объекта server класса ESP8266WebServer. Конструкции: "server.handleClient(); , или server.on(); , server.send(); , server.begin();" похожи на обращение к членам класса server. Поправьте если ошибаюсь.:rolleyes: Ну в целом - не важно, есть ли классы, или еще какие то конструкции синтаксические. Я хочу понять где их описание найти (чем бы они ни были) чтобы понять как и для чего их юзать. А то в примерах попадаются, а как работают - не понимаю. Ведь чтобы свой проект создать, а не повторять по обезъяньи, необходимо понимать что и куда писать.
Тогда берем документацию на SDK и читаем исходники ардуины.
В документации на SDK все есть, а в библиотеке ардуины - обертка функций из SDK иногда не очень удачная.
 

dictor

New member
Тогда берем документацию на SDK и читаем исходники ардуины.
В документации на SDK все есть, а в библиотеке ардуины - обертка функций из SDK иногда не очень удачная.
Я очень сильно извиняюсь за назойливость, но очень хочется докопаться до сути. А где взять документацию на SDK? И в принципе - пока что меня интересуют именно библиотеки указанные в шапке, хотя бы на них хте найти хоть какое то объяснение процессов происходящих внутри.
 

nikolz

Well-known member
Я очень сильно извиняюсь за назойливость, но очень хочется докопаться до сути. А где взять документацию на SDK? И в принципе - пока что меня интересуют именно библиотеки указанные в шапке, хотя бы на них хте найти хоть какое то объяснение процессов происходящих внутри.
Documents | Espressif Systems
 

Сергей_Ф

Moderator
Команда форума
@enjoynering первый ответ прочтите и будет вам счастье. Что бы понять что внутри библиотеки - надо смотреть исходники, что бы научиться с ней работать - достаточно приложенных примеров.
 

Сергей_Ф

Moderator
Команда форума

dictor

New member
понимание как и для чего их юзать.
Честно говоря - по примерам не очень понимаю как использовать либу. Вот если бы кто то сделал на еспшные либы такой обзор как например тут WiFi Программирование Ардуино. но это, нажаль, не подходит к есп, немного другое все. или я чего то не понимаю...
 

pvvx

Активный участник сообщества
понимание как и для чего их юзать.
Т.е. для повторения по обезьяньи:
Ведь чтобы свой проект создать, а не повторять по обезъяньи, необходимо понимать что и куда писать.
------
Документации на ESP8266 нет – он является закрытым чипом, с закрытыми исходниками и соответственно с закрытыми алгоритмами их реализаций. Ничего в нем изменить под свой проект нельзя. Такая политика у Espressif. Вам дана возможность использовать только представленный набор глобальных макро кубиков. Описание к ним даны тут https://esp8266.ru/arduino-ide-esp8266/
К open-source он не имеет никакого отношения.

Использование SDK от Espressif не даст вам более глобальных возможностей. Он немного расширит разбиение на более мелкий набор кубиков, но что в них реализовано и какие они имеют зависимости, как и возможности изменить глобальные алгоритмы и последовательности исполнения, всё равно закрыто. Для получения информации предоставляется только метод “тыка” или “реверс” закрытых библиотек. А т.к. вся информация берется из данного опыта (метод “тыка” или “реверс” закрытых библиотек), то все описания скудные. Не каждый готов потратить впустую своё время для создания полного Help, т.к. не имеет практики в “реверсе”. В итого, все книжки по ESP8266, включая коммерческие, содержат множественные ошибки построенные на копипастах (и заблуждениях) от пользователей, без какой-либо проверки. В итого можно смело сказать - документация на ESP8266 отсутствует, а чип уже технически устарел для IoT и выходит из моды...
На отсутствии документации и жиждется основная часть форума. Была-бы документация (или исходники SDK), постов с вопросами было-бы в сотни раз меньше и они были бы с другими вопросами...
 
Последнее редактирование:

dictor

New member
@pvvx, спасибо! Самій исчерпывающий ответ. Очень много прояснили. Но вот по ссылке которую вы мне дали есть про библиотеку вифи, но к сожалению нигде я ничего не могу найти о библиотеке ESP8266WebServer. Больше вссего пока беспокоят вопросы по 7 посту. Тобиш об членах класса вебсервер.
Документации на ESP8266 нет – он является закрытым чипом, с закрытыми исходниками и соответственно с закрытыми алгоритмами их реализаций. Ничего в нем изменить под свой проект нельзя. Такая политика у Espressif. Вам дана возможность использовать только представленный набор глобальных макро кубиков.
В том ведь и дело, что объектно ориентированное то программирование оно и подразумевает инкапсуляцию. Но даже сами разработчики не могли что ли дать внятного объяснения этим "Глобальным кубикам"? Например той же библиотеке об вебсервере. Может быть я чего то не понимаю, уж простите меня. Я занимаюсь еспшкой неделю всего. И в принципе кроме неё в программировании не силен, немного знаю синтаксис джавы и с++, базовые понятия об ООП и немного электротехники, Так что помидорами гнилыми не кидайте.
 
Сверху Снизу