генератор до 8МГц

Блок даёт меандр до 8МГц

Пользовательские блоки дополняющие набор стандартных блоков
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Аватара пользователя
sser
Рядовой
Сообщения: 82
Зарегистрирован: 02.01.2018{, 12:19}
Репутация: 20
Откуда: Н.Новгород
Имя: Сергей
Контактная информация:

генератор до 8МГц

#1

Сообщение sser » 30.03.2020{, 17:41}

Всем привет.
Не знаю как размещать блоки на сайте , пришлось кинуть на форум.Этот блок сделан благодаря пользователю с Ардуино ру. ник: dimax.
Всем не болеть!

Отправлено спустя 1 час 38 минут 6 секунд:
Если хотите более стабильную частоту , то используйте блок "гена8".
Вложения
гена8_(CODE).ubi
(6.83 КБ) 317 скачиваний
генаS_(CODE).ubi
(10.98 КБ) 281 скачивание

Аватара пользователя
hrach
Сержант
Сообщения: 258
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 13
Откуда: Самара
Имя: Грачик
Контактная информация:

генератор до 8МГц

#2

Сообщение hrach » 30.03.2020{, 21:29}

Большое спасибо за блоки. Просьба если можно на втором блоке сделайте вход.

Аватара пользователя
ingener
Лейтенант
Сообщения: 556
Зарегистрирован: 14.10.2018{, 00:26}
Репутация: 20
Имя: Андрей

генератор до 8МГц

#3

Сообщение ingener » 30.03.2020{, 21:41}

этот блок вроде бы не использует библиотек, можно ли его переделать для ESP32?

Аватара пользователя
sser
Рядовой
Сообщения: 82
Зарегистрирован: 02.01.2018{, 12:19}
Репутация: 20
Откуда: Н.Новгород
Имя: Сергей
Контактная информация:

генератор до 8МГц

#4

Сообщение sser » 30.03.2020{, 22:48}

hrach писал(а):
30.03.2020{, 21:29}
на втором блоке сделайте вход.
Блок гена_s это копия блока гена8 ,только со входом.
Вот попробуйте этот блок , может он лучше, точно не помню делал блоки давно...

Отправлено спустя 3 минуты 38 секунд:
ingener писал(а):
30.03.2020{, 21:41}
этот блок вроде бы не использует библиотек, можно ли его переделать для ESP32?
Нет не пойдёт, там нужно знать какие регистры настраивать, в разных контроллерах они по разному настраиваются .
Нужно в даташите смотреть структуру ESP и настраивать таймеры .
Вложения
генаSs_(CODE).ubi
(19.25 КБ) 176 скачиваний

aidar_i
Полковник
Сообщения: 3122
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 675
Откуда: Уфа
Имя: Айдар
Контактная информация:

генератор до 8МГц

#5

Сообщение aidar_i » 23.11.2021{, 18:16}

sser писал(а):
30.03.2020{, 19:19}
Этот блок сделан благодаря пользователю с Ардуино ру. ник: dimax.
Еще блок по скетчу того же автора.
Генератор.flp
(206.8 КБ) 107 скачиваний
До частоты 2,8 кГц разрешение 1 герц, на частотах выше таймер аппаратно уже не может поддерживать это разрешение, поэтому более высокие частоты синтезируются задавая параметром не требуемую частоту, а просто инкриминируя регистр сравнения. Получается чем выше частота -тем больше шаг.
Задаете требуемую частоту на входе, на выходе получаете частоту, которую может создать таймер. Частоту снимаете с вывода 9 Ардуино.

zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25.05.2021{, 08:47}
Репутация: 3
Имя: Захар

генератор до 8МГц

#6

Сообщение zakhar81 » 13.12.2021{, 09:27}

ingener писал(а):
30.03.2020{, 21:41}
этот блок вроде бы не использует библиотек, можно ли его переделать для ESP32?
Вот есть статейка:
http://mypractic.ru/urok-6-tajmery-obsh ... esp32.html
Про прерывания и все нужные регистры для настройки и использования для подобного генератора, но нет полноценного примера кода
Хорошо бы воспользоваться этим, так как у ESP тактовая почти в 10 раз выше тех что на атмелах, выйдет неплохой генератор с хорошим шагом по перестройке, так как там счетчики 64 разрядные как у STM32
Может кто нибудь запакует это в ПБ?
Можно даже на коммерческой основе, если да пишите в личку

Отправлено спустя 17 минут 14 секунд:
Вот на гитхабе нашел сигнальный (прямоугольной и гармонической форм) генератор ESP с WEB интерфейсом, который используется для задания параметров генератора
Блин классная штука!
https://github.com/vdeschwb/esp32-signal-generator
И там же ссылка на расширение Visual Studio Code version 1.43.1 для Arduino IDE
Т.е. в чистом виде этот код не откомпилировать в Arduino IDE без этого расширения

Отправлено спустя 3 минуты 23 секунды:
Синус генератор 40Гц-250КГц
https://www.esp32.com/viewtopic.php?t=10321

aidar_i
Полковник
Сообщения: 3122
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 675
Откуда: Уфа
Имя: Айдар
Контактная информация:

генератор до 8МГц

#7

Сообщение aidar_i » 13.12.2021{, 21:23}

zakhar81 писал(а):
13.12.2021{, 09:48}
в чистом виде этот код не откомпилировать в Arduino IDE без этого расширения
Прекрасно компилируется!Без расширения.

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

генератор до 8МГц

#8

Сообщение AlexCrane » 13.12.2021{, 22:27}

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

Тестовый блок
блок перенесён сюда viewtopic.php?f=81&t=7858#p111641
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25.05.2021{, 08:47}
Репутация: 3
Имя: Захар

генератор до 8МГц

#9

Сообщение zakhar81 » 14.12.2021{, 03:24}

AlexCrane, :smile9:
Спасибо!
Будем проверять

Отправлено спустя 2 часа 21 секунду:
Интересно, а он сможет на нескольких пинах одновременно генерить, т.е. несколько блоков в программе потянет, или это не целесообразно, нужно в коде блока добавлять такую возможность
Проверим пару тройку одновременно поглядим, с осциллографом

Отправлено спустя 7 минут 17 секунд:
А вот таймеры там вибираються для каждого канала независимо, эти таймеры же в ЕСП тактируются от одного источника? Ну общего генератора
Значит они будут синхронны, и если так, то можно максимально 4 независимых канала организовать с разными таймерами, т.е. 4 блока можно использовать одновременно в программе если таймеры у них будут выбраны разные 0 1 2 3, тогда все корректно будет
И еще было бы здорово эти таймеры на ходу настраивать чтобы модулировать ШИМ

Отправлено спустя 4 минуты 28 секунд:
Но это нужно тестить с контролем сигналов конечно
В выходные займемся

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

генератор до 8МГц

#10

Сообщение AlexCrane » 14.12.2021{, 07:11}

zakhar81 писал(а):
14.12.2021{, 05:36}
несколько блоков в программе потянет
Такая возможность заложена
zakhar81 писал(а):
14.12.2021{, 05:36}
И еще было бы здорово эти таймеры на ходу настраивать чтобы модулировать ШИМ
Все параметры меняются по сигналу Start
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

4755
Рядовой
Сообщения: 1
Зарегистрирован: 13.01.2022{, 15:09}
Репутация: 0
Имя: Егор

генератор до 8МГц

#11

Сообщение 4755 » 17.01.2022{, 13:21}

AlexCrane писал(а):
13.12.2021{, 22:27}
Интересный блок получается, через параметры сделать не сложно, но теряется возможность менять параметры генератора на лету, хоть через тот же веб интерфейс.
А если сделать изменение параметров через входы, то получается не очень красивый код...

Тестовый блок
esp32-signal-generator.flp
у меня не работает

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

генератор до 8МГц

#12

Сообщение AlexCrane » 17.01.2022{, 13:29}

4755, Напиши zakhar81 у него работает, но есть какие-то нюансы, о которых он обещал мне рассказать, пока жду...
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Аватара пользователя
Rovki
Полковник
Сообщения: 4873
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

генератор до 8МГц

#13

Сообщение Rovki » 17.01.2022{, 16:20}

А на есп8266 будет работать ?
Электронщик до мозга костей и не только

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

генератор до 8МГц

#14

Сообщение AlexCrane » 17.01.2022{, 16:35}

4755, А что именно не работает?
Rovki, Не будет, библиотека заточена чисто под ESP32
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Аватара пользователя
Rovki
Полковник
Сообщения: 4873
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

генератор до 8МГц

#15

Сообщение Rovki » 17.01.2022{, 16:46}

А переточить ни как?
Электронщик до мозга костей и не только

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

генератор до 8МГц

#16

Сообщение AlexCrane » 17.01.2022{, 19:07}

Rovki, Никак...
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25.05.2021{, 08:47}
Репутация: 3
Имя: Захар

генератор до 8МГц

#17

Сообщение zakhar81 » 18.01.2022{, 05:19}

Извиняюсь руки не дошли написать, сейчас сделаем

Отправлено спустя 2 минуты 3 секунды:
Да, это только для ESP32, в библиотеке привязка к архитектуре, поэтому она к ESP8266 не применима

Отправлено спустя 15 минут 37 секунд:
40МГц разрешение 1 (коэф зап 0-1)
20МГц разрешение 2 (коэф зап 0-3)
10МГц разрешение 3 (коэф зап 0-7)
5МГц разрешение 4 (коэф зап 0-15)
2,5МГц разрешение 5 (коэф зап 0-31)
1,125МГц разрешение 6 (коэф зап 0-63)
562500Гц разрешение 7 (коэф зап 0-127)
281250Гц разрешение 8 (коэф зап 0-255)
140625Гц разрешение 9 (коэф зап 0-511)
70312Гц разрешение 10 (коэф зап 0-1023)
35156Гц разрешение 11 (коэф зап 0-2047)
17578Гц разрешение 12 (коэф зап 0-4095)
... ну и так далее до разрешения 20
Коэффициент заполнения как видно не в процентах а в делениях, ну т.е. период в секундах делим на это количество отсчетов и получаем одну минимальную дискрету в секундах
Фаза задается аналогично коэффициенту заполнения

Отправлено спустя 3 минуты 30 секунд:
Вход для включения highspeed mode, служит для того чтобы изменения настроек применялись налету без перезапуска блока, сразу на следующем цикле следующем за тем в котором изменили соответствующую величину
Если этот режим не включен то нужно перезапускать блок
А при не включенном режиме можно плавно выходить на заданную частоту или скважность перезапуская блок на каждом цикле и меняя на одну минимальную дискрету изменяемый параметр

Отправлено спустя 2 минуты 24 секунды:
4755, установки делайте в пределах того что я выше привел, тогда все работает, другие комбинации можете не пробовать они не будут отработаны контроллером

Отправлено спустя 1 минуту 24 секунды:
На ходу я еще не успел попробовать при включенном режиме highspeed mode

Отправлено спустя 1 минуту :
В смысле на ходу менять параметры с использованием этого режима без перезапуска блока

Отправлено спустя 9 минут 1 секунду:
Да, еще, в блоке нужно изменить тип данных на INT для входных переменных задающих коэф заполнения и фазу, поскольку BYTE не хватит для диапазона заданий с разрешением от 8 и выше до 20
Последний раз редактировалось zakhar81 19.01.2022{, 16:33}, всего редактировалось 2 раза.

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

генератор до 8МГц

#18

Сообщение AlexCrane » 18.01.2022{, 08:01}

zakhar81, Спасибо за информацию, добавлю в описание и внесу изменения в блок. Но INT тоже не хватит...

Так фаза тоже задается в пределах установленного разрешения?
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

zakhar81
Рядовой
Сообщения: 35
Зарегистрирован: 25.05.2021{, 08:47}
Репутация: 3
Имя: Захар

генератор до 8МГц

#19

Сообщение zakhar81 » 18.01.2022{, 08:46}

Да на неё те же правила/ограничения действуют что и на коэф заполнения/скважность

Отправлено спустя 5 минут 26 секунд:
Ну я на сотнях килогерц работать собираюсь поэтому мне INT достаточно, а так да 2 в 20-й степени это уже 1048576 тут нужно двойное слово ну или в FlProg это LongInteger кажется

Отправлено спустя 3 часа 35 минут 1 секунду:
Вообще конечно надо это в новую тему все перенести, например "Генератор до 40МГц на ESP32"

Andrejka
Рядовой
Сообщения: 40
Зарегистрирован: 13.12.2018{, 19:40}
Репутация: 1
Имя: Андрей

генератор до 8МГц

#20

Сообщение Andrejka » 18.01.2022{, 13:00}

Добрый день. Генератор гармонического сигнала (SIN) звуковой частоты я предполагая нужен многим, и в первоисточнике он реализован,
есть ли возможность организации его в блоке FLPROG на ESP32? В свое время платный вариант с Wi-Fi интерфейсом был выложен в гуголмагазине.

Отправлено спустя 42 минуты 36 секунд:
Вот вариант, многим пригодиться думаю, https://apk.support/app/com.dgvelab.SWG32

Ответить

Вернуться в «Триггеры, таймеры, счетчики, детекторы сигнала»