ai: вариант 5 генератора на audiopwmio (CircuitPython), задание и брошюры синхронизированы с РПД

This commit is contained in:
mss
2026-10-28 21:53:49 +04:00
parent a8434fcce9
commit 6f8d9f7415
4 changed files with 860 additions and 0 deletions
+6
View File
@@ -197,8 +197,14 @@ K(f) = 1 / √(1 + (f/f_c)²), f_c = 1/(2π·R·C)
| `01-...-circuitpython.py` | CircuitPython | программный DDS + ШИМ |
| `04-dds-pio-rp2040.py` | CircuitPython | аппаратный PIO + DMA |
| `04-dds-pio-rp2040.ino` | Arduino, **только earlephilhower** | аппаратный PIO + DMA |
| `05-dds-audiopwm-rp2040.py` | CircuitPython | аудио-ШИМ (`audiopwmio`) + DMA; только до ~3 кГц |
**Рекомендуется вариант на PIO** — точная частота, CPU свободен.
Вариант 3 (`04-dds-pio-rp2040.py`) проверен на стенде: логическим
анализатором снят цифровой выход, форма синуса верная.
Вариант 5 — если интересно, как звук выводят штатными средствами ядра
(`audiopwmio`); он ограничен сверху ~3 кГц, потому что частота
сэмплирования не может быть выше 48 кГц.
У `.ino`-варианта на PIO форма сигнала задаётся функцией `waveform(t)`
**в коде** (перекомпилировать после правки) — в C++ нет разбора формул
на лету, как в CircuitPython-версии.