Цитата(Kovrov @ Mar 16 2006, 11:58)

Я так понял реализация PWM1, PWM2 - под Т0 - это один канал аппаратный под ОС0, другой канал программный?
ну и каковы результаты? в смысле качества-разборчивости?
Нет, оба канала аппаратные: один формируется с помощью регистра OCRxA, другой - OCRxB (выводы OCxA и OCxB соответственно). Режим - Fast PWM. На каждом выходе получается независимая ШИМ (16-битное число должно быть беззнаковым, ессно). Далее напряжения ШИМ складываются с коэффициентами 255/256 и 1/256 соответственно, формируя 16-битную выходную величину.
Всё это использовалось для вывода 8 кГц речи, с простой интерполяцией до 32-х кГц, субьективно качество практически не отличимо от "телефонных" 16-бит сигма-дельта ЦАП.
Подняв частоту ШИМ, можно ожидать не очень плохих результатов и при воспроизведении аудио (искажения, однако, такому способу вывода звука присущи
принципиально). Необходимо только оценить выч. затраты на интерполяцию.
Существенного уменьшения искажений можно попытаться добиться применением Phase-Correct PWM. Однако, это снизит частоту и увеличит вычислительную нагрузку на процессор.