Василий
3,3 а не 5
вы определитесь - по схеме видно что +5
Ant
вы определитесь - по схеме видно что +5
речь о сигнале на вход базы
Василий
речь о сигнале на вход базы
там все правильно - нечего там считать а считать надо для оптрона и светодиода
Василий
для светодиода хватит 5ма для оптрона MOC3041 - по доке надо 15ма от этого и пляшем - 1к для светодиода и 330R для оптрона - ВСЕ
Василий
если правильно то какой ток базы?
можно и его посчитать - но это лишнее, для среднего ключа резистор в цепи базы 1к-4,7к - ключ будет надежно открываться
Ant
можно и его посчитать - но это лишнее, для среднего ключа резистор в цепи базы 1к-4,7к - ключ будет надежно открываться
надо чтобы не только открывался но и еще закрывался с учетом того что на выходе есп не ровно 0В и есть обратный ток базы
Ant
поэтому считать надо, если уметь конечно
Василий
надо чтобы не только открывался но и еще закрывался с учетом того что на выходе есп не ровно 0В и есть обратный ток базы
это все понятно - но результат такой и будет как я написал, хотите посчитайте - мне лень ))
Ant
это все понятно - но результат такой и будет как я написал, хотите посчитайте - мне лень ))
результат таким не будет. впрочем для большинства это не важно
Василий
ну посчитайте, если не трудно - вдруг я ошибаюсь
Ant
ну посчитайте, если не трудно - вдруг я ошибаюсь
(3,3-0,66) /5 мА = 528 Ом. брать ближайшее
Василий
Василий
КУ транзистора типа не имеет значения? ток коллектора тоже?
Ant
КУ транзистора типа не имеет значения? ток коллектора тоже?
для того чтобы не зависить от ку транзистора по току по схеме ОЭ и берем ток базы достаточно большим. максимальный ток выхода есп = 12 мА , 5 мА нормально
Василий
ну даже в режиме насыщения 5ма - как то многовато - для базового тока
Василий
я обычно считаю с током 1-2ма
Artem
господа требуется помощь
Artem
я сейчас для комутации вот таких котушек использую планку из 8 реле
Artem
https://pnevmex.ru/catalog/elektromagnitnye-katushki-i-razemy/solenoidy-dlya-raspredelitelej-camozzi-cerij-a-ap-cfb-3-4-9-na/katushka-u72/
Artem
но есть мысль уйти от реле в сторону мосфетов. есп подает сигнал в 3.3в на реле
Artem
на сколько я могу понять
Artem
какой мосфет мне нужен ?
Artem
я вот такой надыбал
Artem
https://alltransistors.com/ru/mosfet/transistor.php?transistor=4463
Ant
какой мосфет мне нужен ?
нужен N-типа с логическим управлением, катушку зашунтировать RC цепью и диодом
Иван
в гугле самая первая ссылка: https://esp8266hints.wordpress.com/2019/04/05/esp32-w5500-simple-working-example/
Интересно все же: кабель как бы понадежней, чем вафля, но не в случае esp8266, похоже
ᅠDin
да не так же )))))))))))
так или паралельно резистору р2? И почему ненужно рассчитывать резистор на вход базы?
Василий
так или паралельно резистору р2? И почему ненужно рассчитывать резистор на вход базы?
так ток базы - уже посчитали - примерно ))) а точно оно тут и не нужно, а если хотите, то доку на транзистор + ток нагрузки - и посчитать с резистором 1к на базе - будет все работать
Alexey D.
https://limitedresults.com/2019/11/pwn-the-esp32-forever-flash-encryption-and-sec-boot-keys-extraction/ Взлом FEK и SBK
Alexey D.
а продолжение?
Продолжение чего? Там завершенная статья о чтении eFuse через игру с питанием и 2 проводков
Alexey D.
На "хакере" есть перевод платный
Andy
Я тоже
жаль :)
Ihor
// Config.h struct Config { struct Wifi { const String ssid = "RAWA"; const String password = "WVAWRA"; } wifi; } config; // WifiSta.h #include "Config.h" // ошибка линкования // main.cpp #include "Config.h" #include "WifiSta.h" Всем привет, пишу на esp32, но в данном вопросе не важно. Создал файл конфига в котором структура. Конфиг ествественно нужен во многих модулях, но я не могу его подключить из-за ошибка линкования. Как такое правильно делается? Или передавать конфиг при инициализации класа, например: // main.cpp #include "Config.h" #include "WifiSta.h" WifiSta wifi_sta(&config); P.S Использую PlatformIo Arduino фреймворк
Василий
просто структура в .h файле
еще раз для тех кто на бронепоезде ))) имя одно и тоже попробуй разные сделать
Ihor
еще раз для тех кто на бронепоезде ))) имя одно и тоже попробуй разные сделать
окей, спасибо, попробую а как где Вы, например, храните состояние программы, в отдельных переменных main.cpp или в схожей структуре?
Василий
окей, спасибо, попробую а как где Вы, например, храните состояние программы, в отдельных переменных main.cpp или в схожей структуре?
структура - как средство уполядочивания и как некая сущность, а потом эта структура храниться во флеш, можно сказать что да храню в структуре
Ihor
структура - как средство уполядочивания и как некая сущность, а потом эта структура храниться во флеш, можно сказать что да храню в структуре
а во флэш как пишите, eeprom, nvs? Вы прям саму структуру ложите в флэш или переганяете в json, например?
Василий
а во флэш как пишите, eeprom, nvs? Вы прям саму структуру ложите в флэш или переганяете в json, например?
а зачем там json?? - так структуру и записываю во флеш, при включении - считываю из флеш структуру
Василий
а как пишите, какой API, можно пример?
смотрите библиотеку EEPROM и функции EEPROM.write(address, value); EEPROM.read(address);
Ihor
смотрите библиотеку EEPROM и функции EEPROM.write(address, value); EEPROM.read(address);
смотрел, записывал, но он не сохраняет левые типы как я понял, String хранить не может, только char, вложеные структуры тоже, я правильно понимаю? я же не смогу засунуть туда мою структуру config со вложеными структурами и "левыми" типами (например Arduino String, IpAddress...) в EPROM.write(address, value);
Ihor
можете засунуть что угодно -через указатель
другое дело, спасибо, попроубую!
Semyon
смотрел, записывал, но он не сохраняет левые типы как я понял, String хранить не может, только char, вложеные структуры тоже, я правильно понимаю? я же не смогу засунуть туда мою структуру config со вложеными структурами и "левыми" типами (например Arduino String, IpAddress...) в EPROM.write(address, value);
нормально вложенные структуры запихиваются, там вроде делается sizeof() и побайтово всё сохраняется / считывается через EPROM.put() / EPROM.get(), при этом, если байт совпадает - он не перезаписывается.
Василий
а зачем городить файловую систему и тягать все за собой - если надо 100 байт сохранить ...считаю все от задачи зависит, для конфига достаточно просто eeprom для чего то большего - возможно и FAT
Василий
для FAT куда выше этот риск, FAT таблица тоже переписывается
Василий
...библиотека так называется
Yuriy
для FAT куда выше этот риск, FAT таблица тоже переписывается
Так его никто и не использует. Вот хорошая есть epprom rotate - она левелинг на себя берет, но никаких доп. абстракций.
Василий
с дуру можно и Х... сломать, надо же понимать что флеш имеет ограниченый ресурс - и не стоит туда писать по каждому чиху
Yuriy
...библиотека так называется
Spiffs - реализует, littleFs - тоже . Что за fat?
Василий
FAT - File Allocation Table «таблица размещения файлов»
Yuriy
FAT - File Allocation Table «таблица размещения файлов»
Я в курсе, смутило упоминание "библиотека так называется"
Yuriy
NILFS2 — пуленепробиваемая файловая система для /home / Хабр https://m.habr.com/ru/post/477388/
Yuriy
Вот штука интересная :)
Василий
...очередная Windows - лучше предыдущей...и потом опять очередная ...физику не обманешь - если протерлось - то дырка в любом случае ))
Semyon
Зачем еепром, если есть wear leveling api https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/storage/wear-levelling.html
Так то можно и в sqlite всё хранить, благо, на есп портирована.
Василий
Так то можно и в sqlite всё хранить, благо, на есп портирована.
...давайте еще ))) .....что sqllite - что eeprom - просто слова ))) а что ресурсов надо для sqllite раза так в 1000 больше - фиг с ним
Ihor
А что скажете по поводу Non-Volatile Storage (NVS)? Есть возможность шифрования. Удобный API
Ruslan
надо брать
Slava
какой командой получить последние х символов строки? substring ?
Alexey D.
какой командой получить последние х символов строки? substring ?
У тебя строка - указатель. Можно просто прибавить нужное количество символов и получить указатель но середину строки
Slava
//--------------------------------------------------------- String String6(int a){String _a = "00000"+String(a); _a = _a.substring(_a.length()-6);return _a;}
Slava
можно этот код сделать лучше ?
Василий
какой командой получить последние х символов строки? substring ?
а что ты хочешь в итоге получить? сравнение ключевых слов ?
Slava
сейчас время 0:10 и я хочу получить 6ти значный стринг = 001000
Василий
а потом что с ним делать - будешь?