ESP32 программирование из FLProg.
ESP32 программирование из FLProg.
[ref]DrMario[/ref], С ID всё оказалось проще.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- DrMario
- Лейтенант
- Сообщения: 378
- Зарегистрирован: 07 ноя 2016, 13:11
- Откуда: Камень-на-Оби
- Имя: Евгений
- Контактная информация:
ESP32 программирование из FLProg.
Спасибо за пинок в правильном направленииdsfbuy писал(а): 26 ноя 2019, 13:00 [ref]DrMario[/ref], Так компилирует ChipID = printf ("%04X",(uint16_t)(chipid>>32)) + printf ("%08X", (uint32_t) chipid);
Что вышло не проверял.
Вообще и так компилит без доп переменной:
ChipID = printf ("%04X",(uint16_t)(ESP.getEfuseMac()>>32)) + printf ("%08X", (uint32_t) ESP.getEfuseMac());
Надо проверять на мк, как будет работать.
Про функцию printf почитать - http://we.easyelectronics.ru/Soft/forma ... lerov.html

385A0EC40A24 - строка из блока
ESP32 Chip ID = 385A0EC40A24 - строка из примера, и компилятор не ругается
Помогла подсказка от гуру
http://forum.amperka.ru/threads/%D0%A4% ... -uno.6066/
Отправлено спустя 10 минут 3 секунды:
Действительно все просто и хороший результат 385aec40a24. Сохранил себе блок как альтернативный, спасибо!
Пока писал свой пост не заметил Ваше сообщение .
Отправлено спустя 3 часа 55 минут 49 секунд:
Подобный костыль получился с блоком обновления прошивки по воздуху, поправил.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ESP32 программирование из FLProg.
[ref]DrMario[/ref], если в PLPROG выбрать GPIO и присвоить ему PWM, то это не работает для ESP32. т.е. не копилируется, т.к. в IDE получаем код " analogWrite(0, 100); " .
PWM в ESP32 замудреный не как ардуино.
PWM в ESP32 замудреный не как ардуино.
ESP32 программирование из FLProg.
Serial1 прекрасно работает с библиотекой HardwareSerial.h
Пробовал с пин12,13 и 26,27.
В IDE подключаем библиотеку и объявляем порт.
Далее в сетапе изменяем serial1 на порт который объявили. Прописываем необходимые настройки и пины, а в loop меняем serial1 на новый порт. Прошиваем esp32 и радуемся.
ESP32 программирование из FLProg.
[ref]DrMario[/ref], уважаемый автор, пожалуйста, подскажите решение по Энкодеру. Не могу подобрать корректно работающий блок.
- DrMario
- Лейтенант
- Сообщения: 378
- Зарегистрирован: 07 ноя 2016, 13:11
- Откуда: Камень-на-Оби
- Имя: Евгений
- Контактная информация:
ESP32 программирование из FLProg.
Теперь будет работать, если заменить кастомный контроллер из первого поста и использовать новую версию FLProg. В прежней версии не было полноценной поддержки ESP32EgorKa писал(а): 27 ноя 2019, 19:11 DrMario, если в PLPROG выбрать GPIO и присвоить ему PWM, то это не работает для ESP32. т.е. не копилируется, т.к. в IDE получаем код " analogWrite(0, 100); " .
PWM в ESP32 замудреный не как ардуино.
Отправлено спустя 32 минуты 50 секунд:
Я даже не знаю чем Вам помочь. Попробуйте вот эти блоки, собирал от разных авторов.Ecomat писал(а): 01 дек 2019, 12:18 [ref]DrMario[/ref], уважаемый автор, пожалуйста, подскажите решение по Энкодеру. Не могу подобрать корректно работающий блок.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ESP32 программирование из FLProg.
Спасибо. Но и мои, и ваши не компилируются, либо работают, но без прерывания. Скоростной счетчик, штатный, работает с нормальным прерыванием. Все имеющиеся блоки не для ESP32. Все пробовал на 6.2.0
-
- Полковник
- Сообщения: 3360
- Зарегистрирован: 24 дек 2016, 16:55
- Откуда: Уфа
- Имя: Айдар
- Благодарил (а): 14 раз
- Поблагодарили: 100 раз
- Контактная информация:
ESP32 программирование из FLProg.
Вот эту библиотеку попробуйте
[spoiler]https://github.com/igorantolic/ai-esp32 ... oderBasics[/spoiler]
[spoiler]https://github.com/igorantolic/ai-esp32 ... oderBasics[/spoiler]
- DrMario
- Лейтенант
- Сообщения: 378
- Зарегистрирован: 07 ноя 2016, 13:11
- Откуда: Камень-на-Оби
- Имя: Евгений
- Контактная информация:
ESP32 программирование из FLProg.
Сделал блок, проверено на выводах 25, 26, 27Ecomat писал(а): 01 дек 2019, 12:18 DrMario, уважаемый автор, пожалуйста, подскажите решение по Энкодеру. Не могу подобрать корректно работающий блок.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ESP32 программирование из FLProg.
Большое спасибо! К сожалению, не могу до конца разобраться. Попробовал и на указанных Вами пинах, и на своих. Использую Энкодеры EC11, подтяжка 7,5 ком. До этого стояли конденсаторы по 100 nf, для устранения дребезга. Попробовал и с ними и без них. Работает, но очень медленно. В проекте, кроме энкодер,а оставил только OLED дисплей 0,96. Для вывода результата. Он конечно мешает, но если подключаю на любой из пинов, используемых для энкодера, скоростной счетчик, с прерыванием, то скорость "накрутки" очень высокая. А с этим блоком еле еле, и не всегда правильно определяет направление. У этого блока, на указанных пинах, происходит прерывание??
- ingener
- Лейтенант
- Сообщения: 580
- Зарегистрирован: 14 окт 2018, 00:26
- Имя: Андрей
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
ESP32 программирование из FLProg.
А нельзя ли отключить (программно или физически) ту часть контроллера ESP, которая занимается WiFi? Если оно не требуется. С целью снизить расход ресурсов и нагрев.
- DrMario
- Лейтенант
- Сообщения: 378
- Зарегистрирован: 07 ноя 2016, 13:11
- Откуда: Камень-на-Оби
- Имя: Евгений
- Контактная информация:
ESP32 программирование из FLProg.
Не лез в саму библиотеку, точно не могу сказать. Я использовал енкодер из набора, примерно такой https://ru.aliexpress.com/item/33039321 ... b201603_53
Там нет никаких конденсаторов. Кстати, сам енкодер может быть плохого качества. В одном из проектов сравнивал из набора и выпаянный из старого магнитофона. Так вот из магнитофона работал заметно лучше.
Пробуйте для начала на голом примере отладить. При нормальном енкодере не должно быть пропусков.
Отправлено спустя 2 часа 27 минут 38 секунд:
Попробуйте еще один вариант блока енкодера без кнопки. Библиотека ESP32Encoder использует аппаратную периферию счетчика импульсов ESP32
https://docs.espressif.com/projects/esp ... /pcnt.html
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ESP32 программирование из FLProg.
Большое спасибо! Все работает. Вы использовали отправку и прием в UART для осуществления прерывания? Я пробовал то же самое делать с применением скоростного счетчика. То же летает, но полноценной работы не получил, т.к. направление счета не удавалось фиксировать. В результате подключил Ваш вариант, как в в прилагаемом файле. Дополнительно поделил на 2, так как в моем варианте энкодера он выдает два импульса на клик.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
ESP32 программирование из FLProg.
Если энкодер, к примеру 400 импульсов, то программно получается 1600 импульсов на оборот.Ecomat писал(а): 02 дек 2019, 19:40 Большое спасибо! К сожалению, не могу до конца разобраться. Попробовал и на указанных Вами пинах, и на своих. Использую Энкодеры EC11, подтяжка 7,5 ком. До этого стояли конденсаторы по 100 nf, для устранения дребезга. Попробовал и с ними и без них. Работает, но очень медленно. В проекте, кроме энкодер,а оставил только OLED дисплей 0,96. Для вывода результата. Он конечно мешает, но если подключаю на любой из пинов, используемых для энкодера, скоростной счетчик, с прерыванием, то скорость "накрутки" очень высокая. А с этим блоком еле еле, и не всегда правильно определяет направление. У этого блока, на указанных пинах, происходит прерывание??
Я писал блок для себя сам. По тому как все что с библиотеками шлак.
Суть такая при смене с 0 на 1 либо при смене с 1 на 0 ( параметр change) нужно смотреть что на втором входе. Так же и со вторым входом. Офигенно считает и в плюс и в минус.
Rising falling работают не корректно, потому как при смене направления счета не учитываются некоторые импульсы.
В общем милиметрики на продукции плавали туда сюда.
Если интересно могу скинуть код или даже блок, только он для ардуино.
- DrMario
- Лейтенант
- Сообщения: 378
- Зарегистрирован: 07 ноя 2016, 13:11
- Откуда: Камень-на-Оби
- Имя: Евгений
- Контактная информация:
ESP32 программирование из FLProg.
Выводом приемника UART проверял обнуление счета блока енкодераEcomat писал(а): 05 дек 2019, 14:22 Большое спасибо! Все работает. Вы использовали отправку и прием в UART для осуществления прерывания?
ESP32 программирование из FLProg.
Евгений, спасибо! У вас нет такого же, но с перламутровыми...


- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
ESP32 программирование из FLProg.
Просто блоками:Ecomat писал(а): 06 дек 2019, 16:36 Нужно ограничение счета вверх и вниз, минимум и максимум. Я слепил, из стандартных блоков, считает от 0 и до верхнего предела переменных. Пока достаточно. Но сделать ограничение вверх, без обнуления не получилось.
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей