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

PWM на повышенной частоте

dmitron1036

New member
Доброго дня!
Хочу получить с ESP8266(Arduino IDE) ШИМ частотой 100 кГц с разрешением 1024.
Смог получить работу analogWrite(pin,pwm) на частоте 60 кГц. вместо 10% было 24% заполнение.
при попытке установить 100 кГц - совсем не 100 кГц даёт.

Читал штатную функцию ESP - 4 канала PWM. частоту 100 кГц там тоже не обещают.
(Если кто знает, через какую библиотеку можно добраться до этого PWM - прошу поделиться)

Обидно....
 

pvvx

Активный участник сообщества
Хочу получить с ESP8266 (Arduino IDE) ШИМ частотой 100 кГц с разрешением 1024.
PWM в ESP8266 программный. Теоретический предел обработки частоты прерываний для обычного SDK и настройки на 80 MHz CPU с условием обработки в прерывании PWM - от 10 микросекунд в пределе. Физический предел (реальная стабильная работа SDK) - от 20 us и полная оптимизация с выводом на один канал.

Разрешение 1024 - это 1024*10 микросекунд = 1.024 миллисекунд, т.е. частота вывода PWM до 1/0.001024 = ~976 Гц
 

dmitron1036

New member
Ну хорошо. с analogWrite разобрались.

Второй вопрос: как добраться до встроенной функции ESP8266

4.7. Pulse-Width Modulation (PWM)
ESP8266EX has four PWM output interfaces. They can be extended by users themselves.
The pin definitions of the PWM interfaces are defined as below.
The functionality of PWM interfaces can be implemented via software programming. For
example, in the LED smart light demo, the function of PWM is realized by interruption of the
timer, the minimum resolution reaches as much as 44 ns. PWM frequency range is
adjustable from 1000 μs to 10000 μs, i.e., between 100Hz and 1 kHz. When the PWM
frequency is 1 kHz, the duty ratio will be 1/22727, and over 14 bit resolution will be
achieved at 1 kHz refresh rate.
 

pvvx

Активный участник сообщества
Ну хорошо. с analogWrite разобрались.

Второй вопрос: как добраться до встроенной функции ESP8266
А она тоже плохо работает, с пропусками, дырками от 100 us в произвольном порядке, как ей помешает WiFi.
Там написано - программный ШИМ, т.е. "ногодрыгом" по прерыванию таймера... По NMI немного лучше, стабильнее, но те параметры дырок и описал, а это в итоге качество не более 10 бит. Сгладьте и включите на какой вывод в звук и всё прояснится.
Открываете PDF по функциям NON_OS_SDK и там находите команды его управления.
Но вы не первый создаете такую тему, а все прошлые, с десяток, оперирующие Arduino, решили вопрос установкой внешней микрухи, благо она дешевая. Причина - биения и джиттер реализации ШИМ от Espressif виден на простом светодиоде и не лечится.
Попробуйте в ESP-32S - там вроде должен быть аппаратный ШИМ, но не проверял и отзывов не видел.
 
Последнее редактирование:

dmitron1036

New member
Есть ли микросхемы, генерирующие ШИМ на 100 кГц с приличным разрешением (1024), управляемые по SPI / I2C ?
 

Сергей_Ф

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

pvvx

Активный участник сообщества
понятия разные, а используют зачастую одинаково. Всё от задачи зависит. Вам для чего? Для диммирования светодиодной ленты полно Яндекс находит и i2c и spi pwm controller.

Например
Мне для выхода на усилитель звука в режиме D. :) Желательное разрешение: 32 бита и тройная передискретизация от 48 кГц, т.е. от 192 кГц 32 бит. :)
Всего-то разрешение ШИМ в 1/824633720832000 секунды.. (тактовая частота указана в знаменателе) :)
Соглашусь и на двойную передискретизацию, но лень фильтры к динамику городить :)
Источник тактирования на 36 микрометров волны есть (всего-то инфракрасный диапазон излучения в бытовом холодильнике или какие молекулярные переизлучения - найдем :)).
 
Последнее редактирование:

pvvx

Активный участник сообщества
@pvvx ну так что мешает "перевернуть мир"? (C) pvvx
А не выходит 32 бита... Шум в данном диапазоне большой и у источника джиттер.
При слабом источнике мешает и реликтовое излучение... В понятие мир пока входит только малая часть, а на остальную инфы люди пока не имеют. В тесном мирку это сложно - неизвестных факторов из уровня "за этим миром" более 99.9999... %
На данные частоты - десятки микрометров (волны) работают метаматериалы, а дома их пока не сделать и там ещё эти 99.9999... % ... Т.е. область связанных с ними свойств человечеством ещё не изучено и на 1%, включая теории и гипотезы.
Но и там я уже двинул кой-чаго. Жду решений от человечества, а они пока тупят и заняты коммерцией... Т.е. скоро "перевернется" "мирок" :) :p Это могу точно гарантировать, но сроки нет - человечество отупело...
 
Последнее редактирование:
Сверху Снизу